示例#1
0
            public void GivenArrayCanNotBeNull()
            {
                var sut = SutFactory.Create <object>();

                Assert.Throws <ArgumentNullException>(
                    () => sut.Given((object[])null));
            }
示例#2
0
            public void GivenEnumerableCanNotBeNull()
            {
                var sut = SutFactory.Create <object>();

                Assert.Throws <ArgumentNullException>(
                    () => sut.Given((IEnumerable <object>)null));
            }
        public void WhenTheUsernameWithPasswordIsSupplied(string p0, string p1)
        {
            var sut    = SutFactory.CreateLoginService();
            var result = sut.Login(p0, p1);

            ScenarioContext.Current.Add("result", result);
        }
示例#4
0
            public void VerifyWithoutTokenVerificationCanNotBeNull()
            {
                var sut = SutFactory.Create <object>();

                Assert.Throws <ArgumentNullException>(
                    () => sut.Verify((Func <object, Task <VerificationResult> >)null));
            }
示例#5
0
        public void scenario_title_should_be_number_and_class_name_if_number_greater_than_zero()
        {
            var container = new SutFactory <ConcreteObjectWithNoConstructor>(Substitute.For <IContainer>());
            var sut       = new UserStoryScenarioWithAllSupportedStepsInRandomOrder {
                Container = container, Number = 3
            };

            sut.Title.ShouldBe("Scenario 03: User Story Scenario With All Supported Steps In Random Order");
        }
示例#6
0
        private static UnitScenarioWithAllSupportedStepsInRandomOrder CreateSut()
        {
            var container = new SutFactory <ConcreteObjectWithNoConstructor>(Substitute.For <IContainer>());
            var sut       = new UnitScenarioWithAllSupportedStepsInRandomOrder {
                Container = container
            };

            return(sut);
        }
示例#7
0
            public void ResolverReturnsExpectedResultAfterVerifyWithToken()
            {
                var resolver = Resolve.WhenEqualToHandlerMessageType(new ConnectedProjectionHandler <object> [0]);
                var sut      = SutFactory.Create(resolver);

                var result = sut.Verify((session, token) => null).Resolver;

                Assert.That(result, Is.EqualTo(resolver));
            }
示例#8
0
        public void scenario_title_should_be_class_name_only_if_scenario_is_zero()
        {
            var container = new SutFactory <ConcreteObjectWithNoConstructor>(Substitute.For <IContainer>());
            var sut       = new UserStoryScenarioWithAllSupportedStepsInRandomOrder {
                Container = container
            };

            sut.Title.ShouldBe("User Story Scenario With All Supported Steps In Random Order");
        }
示例#9
0
        public void Should_create_instance_of_component_without_dependencies()
        {
            using (var sut = new SutFactory <ComponentWithoutDependencies>())
            {
                var result = sut.Create();

                result.Should().NotBeNull();
            }
        }
示例#10
0
        public void Should_create_instance_of_component_with_abstract_class_dependency()
        {
            using (var sut = new SutFactory <ComponentWithAbstactClassDependency>())
            {
                var result = sut.Create();

                result.Should().NotBeNull();
                result.Dependency.Should().NotBeNull();
            }
        }
示例#11
0
        public void Should_return_mock_used_as_components_dependency()
        {
            using (var sut = new SutFactory <ComponentWithDependencies>())
            {
                var result = sut.Create();
                var mock   = sut.GetMock <IDependency>();

                result.Dependency.Should().Be(mock.Object);
            }
        }
示例#12
0
        public void Allow_to_use_custom_dependency_implementation()
        {
            using (var sut = new SutFactory <ComponentWithDependencies>())
            {
                var customDependency = new CustomDependency();
                sut.UseDependency <IDependency>(customDependency);
                var result = sut.Create();

                result.Dependency.Should().Be(customDependency);
            }
        }
示例#13
0
            public void GivenEnumerableReturnsExpectedResultAfterVerifyWithoutToken()
            {
                IEnumerable <object> messages = new[]
                {
                    new object(),
                    new object()
                };
                var sut = SutFactory.Create <object>();

                var result = sut.Given(messages).Verify(session => null).Messages;

                Assert.That(result, Is.EqualTo(messages));
            }
示例#14
0
            public void GivenArrayReturnsExpectedResultAfterVerifyWithToken()
            {
                object[] messages =
                {
                    new object(),
                    new object()
                };
                var sut = SutFactory.Create <object>();

                var result = sut.Given(messages).Verify((session, token) => null).Messages;

                Assert.That(result, Is.EqualTo(messages));
            }
示例#15
0
            public void VerifyWithoutTokenReturnsExpectedResult()
            {
                var sut     = SutFactory.Create <object>();
                var session = new object();
                var result  = sut.
                              Verify(connection =>
                {
                    Assert.That(connection, Is.EqualTo(session));
                    return(Task.FromResult(VerificationResult.Pass()));
                }).
                              Verification(session, CancellationToken.None).
                              Result;

                Assert.That(result, Is.EqualTo(VerificationResult.Pass()));
            }
        public void WhenLoginsWithSecondsDelayAreAttemptedWithUserAndPassword(int p0, int p1, string p2, string p3)
        {
            int periodSeconds = (int)ScenarioContext.Current["period"];
            int limit         = (int)ScenarioContext.Current["limit"];
            var sut           = SutFactory.CreateLoginService();

            var results = new List <LoginResult>();

            for (int i = 0; i < p0; i++)
            {
                var result = sut.Login(p2, p3, periodSeconds, limit);
                results.Add(result);

                if (i < p0 - 1)
                {
                    Thread.Sleep(p1 * 1000);
                }
            }

            ScenarioContext.Current.Add("results", results);
        }
示例#17
0
 public void scenario_title_should_be_number_and_class_name_if_number_greater_than_zero()
 {
     var container = new SutFactory<ConcreteObjectWithNoConstructor>(Substitute.For<IScenarioContainer>());
     var sut = new UserStoryScenarioWithAllSupportedStepsInRandomOrder {Container = container, Number = 3};
     sut.Title.ShouldBe("Scenario 03: User Story Scenario With All Supported Steps In Random Order");
 }
示例#18
0
 public void scenario_title_should_be_class_name_only_if_scenario_is_zero()
 {
     var container = new SutFactory<ConcreteObjectWithNoConstructor>(Substitute.For<IScenarioContainer>());
     var sut = new UserStoryScenarioWithAllSupportedStepsInRandomOrder {Container = container};
     sut.Title.ShouldBe("User Story Scenario With All Supported Steps In Random Order");
 }
示例#19
0
 public virtual void InitTest()
 {
     _sutFactory = new SutFactory <T>();
 }
示例#20
0
 private static UnitScenarioWithAllSupportedStepsInRandomOrder CreateSut()
 {
     var container = new SutFactory<ConcreteObjectWithNoConstructor>(Substitute.For<IScenarioContainer>());
     var sut = new UnitScenarioWithAllSupportedStepsInRandomOrder { Container = container };
     return sut;
 }