annotate UnitTests/CS/Aspects/NotNullAspectTest.cs @ 4:f757da6161a1

!bug 100 + 2h fixed gregression
author cin
date Sun, 24 Aug 2014 17:57:42 +0400
parents f990fcb411a9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
1 using System;
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
2
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
3 using NUnit.Framework;
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
4
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
5 using BLToolkit.Aspects;
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
6 using BLToolkit.Reflection;
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
7 using BLToolkit.TypeBuilder;
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
8
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
9 namespace Aspects
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
10 {
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
11 [TestFixture]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
12 public class NotNullAspectTest
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
13 {
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
14 public abstract class TestObject1
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
15 {
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
16 public virtual void Foo1(string str1, [NotNull] string str2, string str3) {}
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
17 public virtual void Foo2(string str1, [NotNull("Null")] string str2, string str3) { }
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
18 public virtual void Foo3(string str1, [NotNull("Null: {0}")] string str2, string str3) { }
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
19 }
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
20
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
21 [Test, ExpectedException(typeof(ArgumentNullException))] // Error message is localized by framework.
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
22 public void Test1()
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
23 {
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
24 TestObject1 o = (TestObject1)TypeAccessor.CreateInstance(typeof(TestObject1));
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
25
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
26 o.Foo1("str1", null, "str3");
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
27 }
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
28
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
29 [Test]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
30 [ExpectedException(typeof(ArgumentNullException), ExpectedMessage="Null")]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
31 public void Test2()
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
32 {
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
33 TestObject1 o = (TestObject1)TypeAccessor.CreateInstance(typeof(TestObject1));
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
34
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
35 o.Foo2("str1", null, "str3");
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
36 }
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
37
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
38 [Test]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
39 [ExpectedException(typeof(ArgumentNullException), ExpectedMessage="Null: str2")]
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
40 public void Test3()
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
41 {
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
42 TestObject1 o = (TestObject1)TypeAccessor.CreateInstance(typeof(TestObject1));
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
43
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
44 o.Foo3("str1", null, "str3");
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
45 }
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
46 }
f990fcb411a9 Копия текущей версии из github
cin
parents:
diff changeset
47 }