コード例 #1
0
ファイル: GenericsTests.cs プロジェクト: ironcev-forks/Rocks
        public static void TargetWithMultipleConstraints()
        {
            var expectationA = new StringBuilder();
            var expectationB = new Base();
            var expectationC = new InheritingFromBase();
            var expectationD = Guid.NewGuid();
            var expectationE = new InheritingFromBase();

            var argumentA = default(StringBuilder);
            var argumentB = default(Base);
            var argumentC = default(InheritingFromBase);
            var argumentD = default(Guid);
            var argumentE = default(InheritingFromBase);

            var rock = Rock.Create <IGenerics>();

            rock.Handle <StringBuilder, Base, InheritingFromBase, Guid, InheritingFromBase>(
                _ => _.TargetWithMultipleConstraints(expectationA, expectationB, expectationC, expectationD, expectationE),
                (a, b, c, d, e) => { argumentA = a; argumentB = b; argumentC = c; argumentD = d; argumentE = e; });
            var chunk = rock.Make();

            chunk.TargetWithMultipleConstraints <StringBuilder, Base, InheritingFromBase, Guid, InheritingFromBase>(
                expectationA, expectationB, expectationC, expectationD, expectationE);

            Assert.That(argumentA, Is.Not.Null, nameof(argumentA));
            Assert.That(argumentB, Is.Not.Null, nameof(argumentB));
            Assert.That(argumentC, Is.Not.Null, nameof(argumentC));
            Assert.That(argumentD, Is.Not.EqualTo(Guid.Empty), nameof(argumentD));
            Assert.That(argumentE, Is.Not.Null, nameof(argumentE));

            rock.Verify();
        }
コード例 #2
0
ファイル: GenericsTests.cs プロジェクト: JamesBender/Rocks
		public void TargetWithMultipleConstraints()
		{
			var expectationA = new StringBuilder();
			var expectationB = new Base();
			var expectationC = new InheritingFromBase();
			var expectationD = Guid.NewGuid();
			var expectationE = new InheritingFromBase();

			var argumentA = default(StringBuilder);
			var argumentB = default(Base);
			var argumentC = default(InheritingFromBase);
			var argumentD = default(Guid);
			var argumentE = default(InheritingFromBase);

			var rock = Rock.Create<IGenerics>();
			rock.Handle<StringBuilder, Base, InheritingFromBase, Guid, InheritingFromBase>(
				_ => _.TargetWithMultipleConstraints(expectationA, expectationB, expectationC, expectationD, expectationE),
				(a, b, c, d, e) => { argumentA = a; argumentB = b; argumentC = c; argumentD = d; argumentE = e; });
			var chunk = rock.Make();
			chunk.TargetWithMultipleConstraints<StringBuilder, Base, InheritingFromBase, Guid, InheritingFromBase>(
				expectationA, expectationB, expectationC, expectationD, expectationE);

			Assert.IsNotNull(argumentA, nameof(argumentB));
			Assert.IsNotNull(argumentB, nameof(argumentB));
			Assert.IsNotNull(argumentC, nameof(argumentC));
			Assert.AreNotEqual(Guid.Empty, argumentD, nameof(argumentD));
			Assert.IsNotNull(argumentE, nameof(argumentE));

			rock.Verify();
		}