comparison UnitTests/CS/Mapping/DefaultValueAttributeTest.cs @ 0:f990fcb411a9

Копия текущей версии из github
author cin
date Thu, 27 Mar 2014 21:46:09 +0400
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:f990fcb411a9
1 using System;
2
3 using NUnit.Framework;
4
5 using BLToolkit.Mapping;
6
7 namespace Mapping
8 {
9 [TestFixture]
10 public class DefaultValueAttributeTest
11 {
12 [MapValue(Enum1.Value1, "1")]
13 [MapValue(Enum1.Value3, "3")]
14 [DefaultValue(Enum1.Value3)]
15 public enum Enum1
16 {
17 Value1,
18 [MapValue("2")] Value2,
19 Value3
20 }
21
22 public class Object1
23 {
24 public Enum1 Enum1;
25 [DefaultValue(Enum1.Value1)]
26 public Enum1 Enum2;
27 }
28
29 [Test]
30 public void TestEnum1()
31 {
32 ObjectMapper om = Map.GetObjectMapper(typeof(Object1));
33
34 Object1 o = (Object1)om.CreateInstance();
35
36 om.SetValue(o, "Enum1", "55");
37 om.SetValue(o, "Enum2", "66");
38
39 Assert.AreEqual(Enum1.Value3, o.Enum1);
40 Assert.AreEqual(Enum1.Value1, o.Enum2);
41
42 Assert.AreEqual("3", om.GetValue(o, "Enum1"));
43 Assert.AreEqual("1", om.GetValue(o, "Enum2"));
44 }
45
46 [MapValue(Enum2.Value1, "1")]
47 [MapValue(Enum2.Value3, "3")]
48 public enum Enum2
49 {
50 Value1,
51 [MapValue("2")] Value2,
52 [DefaultValue] Value3
53 }
54
55 public class Object2
56 {
57 public Enum2 Enum1;
58 }
59
60 [Test]
61 public void TestEnum2()
62 {
63 ObjectMapper om = Map.GetObjectMapper(typeof(Object2));
64
65 Object2 o = (Object2)om.CreateInstance();
66
67 om.SetValue(o, "Enum1", "55");
68
69 Assert.AreEqual(Enum2.Value3, o.Enum1);
70
71 Assert.AreEqual("3", om.GetValue(o, "Enum1"));
72 }
73
74 [DefaultValue(typeof(Enum2), Enum2.Value2)]
75 public class Object3
76 {
77 public Enum2 Enum1;
78 }
79
80 [Test]
81 public void TestEnum3()
82 {
83 ObjectMapper om = Map.GetObjectMapper(typeof(Object3));
84
85 Object3 o = (Object3)om.CreateInstance();
86
87 om.SetValue(o, "Enum1", "55");
88
89 Assert.AreEqual(Enum2.Value2, o.Enum1);
90
91 Assert.AreEqual("2", om.GetValue(o, "Enum1"));
92 }
93
94 [DefaultValue(Enum2.Value2)]
95 public class Object4
96 {
97 public Enum2 Enum1;
98 }
99
100 [Test]
101 public void TestEnum4()
102 {
103 ObjectMapper om = Map.GetObjectMapper(typeof(Object4));
104
105 Object4 o = (Object4)om.CreateInstance();
106
107 om.SetValue(o, "Enum1", "55");
108
109 Assert.AreEqual(Enum2.Value2, o.Enum1);
110
111 Assert.AreEqual("2", om.GetValue(o, "Enum1"));
112 }
113 }
114 }