diff options
author | jbevain <jbevain@gmail.com> | 2010-06-20 17:02:55 +0400 |
---|---|---|
committer | jbevain <jbevain@gmail.com> | 2010-06-20 17:02:55 +0400 |
commit | b847f49a77e061a710c04c163e349d632ff9592b (patch) | |
tree | 3b32a9e159758b9edbaf021b7b328af5519a51fe /rocks | |
parent | 7ead77dbbafaa7f4961a6d3cf1d2a8d5f19b223b (diff) |
do not rely on the method emission order in tests
Diffstat (limited to 'rocks')
-rw-r--r-- | rocks/Test/Mono.Cecil.Tests/TypeDefinitionRocksTests.cs | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/rocks/Test/Mono.Cecil.Tests/TypeDefinitionRocksTests.cs b/rocks/Test/Mono.Cecil.Tests/TypeDefinitionRocksTests.cs index ade280f..7bd43cf 100644 --- a/rocks/Test/Mono.Cecil.Tests/TypeDefinitionRocksTests.cs +++ b/rocks/Test/Mono.Cecil.Tests/TypeDefinitionRocksTests.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.Linq; using Mono.Cecil.Rocks; @@ -36,12 +37,21 @@ namespace Mono.Cecil.Tests { public void GetConstructors () { var foo = typeof (Foo).ToDefinition (); - var ctors = foo.GetConstructors ().ToArray (); + var ctors = foo.GetConstructors ().Select (ctor => ctor.FullName); - Assert.AreEqual (3, ctors.Length); - Assert.AreEqual ("System.Void Mono.Cecil.Tests.TypeDefinitionRocksTests/Foo::.cctor()", ctors [0].FullName); - Assert.AreEqual ("System.Void Mono.Cecil.Tests.TypeDefinitionRocksTests/Foo::.ctor(System.Int32)", ctors [1].FullName); - Assert.AreEqual ("System.Void Mono.Cecil.Tests.TypeDefinitionRocksTests/Foo::.ctor(System.Int32,System.String)", ctors [2].FullName); + var expected = new [] { + "System.Void Mono.Cecil.Tests.TypeDefinitionRocksTests/Foo::.cctor()", + "System.Void Mono.Cecil.Tests.TypeDefinitionRocksTests/Foo::.ctor(System.Int32)", + "System.Void Mono.Cecil.Tests.TypeDefinitionRocksTests/Foo::.ctor(System.Int32,System.String)", + }; + + AssertSet (expected, ctors); + } + + static void AssertSet<T> (IEnumerable<T> expected, IEnumerable<T> actual) + { + Assert.IsFalse (expected.Except (actual).Any ()); + Assert.IsTrue (expected.Intersect (actual).SequenceEqual (expected)); } [Test] |