PageRenderTime 42ms CodeModel.GetById 15ms RepoModel.GetById 0ms app.codeStats 0ms

/src/FluentNHibernate.Testing/AutoMapping/BaseAutoMapTester.cs

https://github.com/dotnetchris/fluent-nhibernate
C# | 42 lines | 37 code | 5 blank | 0 comment | 0 complexity | f99425ea3f45dbae19bdf447be8a59f5 MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq.Expressions;
  4. using FluentNHibernate.Automapping;
  5. using FluentNHibernate.Utils;
  6. using Iesi.Collections.Generic;
  7. using NUnit.Framework;
  8. namespace FluentNHibernate.Testing.Automapping
  9. {
  10. public abstract class BaseAutoMapTester<T>
  11. where T : IAutoMapper, new()
  12. {
  13. private T mapper;
  14. [SetUp]
  15. public void CreateMapper()
  16. {
  17. mapper = new T();
  18. }
  19. protected void ShouldMap(Expression<Func<PropertyTarget, object>> property)
  20. {
  21. mapper.MapsProperty(ReflectionHelper.GetProperty(property).ToMember()).ShouldBeTrue();
  22. }
  23. protected void ShouldntMap(Expression<Func<PropertyTarget, object>> property)
  24. {
  25. mapper.MapsProperty(ReflectionHelper.GetProperty(property).ToMember()).ShouldBeFalse();
  26. }
  27. protected class PropertyTarget
  28. {
  29. public ISet<PropertyTarget> Set { get; set; }
  30. public IList<PropertyTarget> List { get; set; }
  31. public int Int { get; set; }
  32. public string String { get; set; }
  33. public DateTime DateTime { get; set; }
  34. public PropertyTarget Entity { get; set; }
  35. }
  36. }
  37. }