Exemplo n.º 1
0
        public static void EntityService <T>(this IGiven <EntityContext <T> > given)
            where T : EntityBase, new()
        {
            var subscriber = new EntityContext <T> .Subscriber(e => given.Context.Events.Add(e));

            given.Context.EntityService = new EntityService <T>(subscriber);
        }
        public void ShouldRunScenario()
        {
            //Given
            Mockery mocks = new Mockery();
            SimplestPossibleWorld world = new SimplestPossibleWorld();


            IGiven given = (IGiven)mocks.NewMock <IGiven>();

            Expect.Once.On(given).Method("Setup").With(world);
            List <IGiven> GivenCollection = new List <IGiven>();

            GivenCollection.Add(given);

            IEvent evt = mocks.NewMock <IEvent>();

            Expect.Once.On(evt).Method("OccurIn").With(world);

            IWorldOutcome outcome = mocks.NewMock <IWorldOutcome>();

            Expect.Once.On(outcome).Method("Verify").With(world);
            Expect.Once.On(outcome).GetProperty("Result").Will(Return.Value(new Outcome(OutcomeResult.Passed, "Cool")));
            List <IWorldOutcome> outcomeCollection = new List <IWorldOutcome>();

            outcomeCollection.Add(outcome);

            IScenario scenario = new MyScenario(GivenCollection, evt, outcomeCollection, world);

            //When
            scenario.Run();

            //Then
            mocks.VerifyAllExpectationsHaveBeenMet();
        }
Exemplo n.º 3
0
        private void SetupGiven(ref Mockery mocks, ref SimplestPossibleWorld world)
        {
            IGiven given = (IGiven)mocks.NewMock <IGiven>();

            Expect.AtLeast(1).On(given).Method("Setup").With(world);
            List <IGiven> GivenCollection = new List <IGiven>();

            GivenCollection.Add(given);
        }
Exemplo n.º 4
0
        public IAnd <IGivenAFixture> With <TDependency>(TDependency instance, Action <TDependency> setupDependency)
        {
            _given = _given.Context(() =>
            {
                setupDependency?.Invoke(instance);
                _fixture.Inject(instance);
            }).And;

            return(new AndStep <IGivenAFixture>(this));
        }
Exemplo n.º 5
0
        public IAnd <IGivenAFixture> With <TDependency>(Action <TDependency> setupDependency)
        {
            _given = _given.Context(() =>
            {
                var dependency = _fixture.Freeze <TDependency>();
                setupDependency?.Invoke(dependency);
            }).And;

            return(new AndStep <IGivenAFixture>(this));
        }
        public void ShouldAddGivenToScenario()
        {
            //Given
            Mockery       mocks           = new Mockery();
            IGiven        aGiven          = (IGiven)mocks.NewMock <IGiven>();
            List <IGiven> GivenCollection = new List <IGiven>();
            IScenario     scenario        = new MyScenario(GivenCollection, null, null, null);

            //When
            scenario.Given("a given", aGiven);

            //Then
            Assert.AreEqual(1, GivenCollection.Count);
        }
        public void ShouldAddEventToScenario()
        {
            //Given
            Mockery mocks  = new Mockery();
            IGiven  aGiven = (IGiven)mocks.NewMock <IGiven>();
            IEvent  evt    = mocks.NewMock <IEvent>();

            Scenario.Scenario scenario = new MyScenario();

            //When
            scenario.Given("a given", aGiven).When("an event", evt);

            //Then
            Assert.IsNotNull(scenario.Event);
        }
        public void ShouldAddOutcome()
        {
            //Given
            Mockery              mocks             = new Mockery();
            IGiven               aGiven            = (IGiven)mocks.NewMock <IGiven>();
            IEvent               evt               = mocks.NewMock <IEvent>();
            IWorldOutcome        outcome           = mocks.NewMock <IWorldOutcome>();
            List <IGiven>        givenCollection   = new List <IGiven>();
            List <IWorldOutcome> outcomeCollection = new List <IWorldOutcome>();
            IScenario            scenario          = new MyScenario(givenCollection, null, outcomeCollection, null);

            //When
            scenario.Given("a given", aGiven).When("an event", evt).Then("an outcome", outcome);

            //Then
            Assert.AreEqual(1, outcomeCollection.Count);
        }
        public void ShouldAddMultipleGivensToScenario()
        {
            //Given
            Mockery       mocks           = new Mockery();
            IGiven        aGiven          = (IGiven)mocks.NewMock <IGiven>();
            IGiven        anotherGiven    = (IGiven)mocks.NewMock <IGiven>();
            IGiven        yetAnotherGiven = (IGiven)mocks.NewMock <IGiven>();
            List <IGiven> GivenCollection = new List <IGiven>();
            IScenario     scenario        = new MyScenario(GivenCollection, null, null, null);

            //When
            scenario.
            Given("a given", aGiven).
            And("a given", anotherGiven).
            And("a given", yetAnotherGiven);

            //Then
            Assert.AreEqual(3, GivenCollection.Count);
        }
        public void ShouldSetupGivens()
        {
            //Given
            Mockery mocks = new Mockery();

            SimplestPossibleWorld world = new SimplestPossibleWorld();

            IGiven aGiven = mocks.NewMock <IGiven>();

            Expect.Once.On(aGiven).Method("Setup").With(world);

            List <IGiven> l = new List <IGiven>();

            l.Add(aGiven);
            Scenario.Scenario scenario = new MyScenario(l, null, null, world);
            //When
            scenario.SetupGivens();

            //Then
            mocks.VerifyAllExpectationsHaveBeenMet();
        }
Exemplo n.º 11
0
 public static void AnotherValue(this IGiven <TestContext> given, int secondValue)
 {
     given.Context.SecondValue = secondValue;
 }
Exemplo n.º 12
0
 public GivenAFixture(IGiven given, IFixture fixture)
 {
     _given   = given;
     _fixture = fixture;
 }
Exemplo n.º 13
0
 public static void RegisterAUri <T>(this IGiven <T> given,
                                     Func <RegistrationBuilder, RegistrationBuilder> builder)
     where T : IHasServer
 {
     given.Context.FakeServer.Register(builder);
 }
Exemplo n.º 14
0
 public static async Task AValue(this IGiven <TestContext> given)
 {
     given.Context.FirstValue = 1;
     await Task.Delay(1);
 }
Exemplo n.º 15
0
 public static async Task AnotherValue(this IGiven <TestContext> given, int secondValue)
 {
     given.Context.SecondValue = secondValue;
     await Task.Delay(1);
 }
 public static void AValue(this IGiven <TestContext> given)
 {
     given.Context.FirstValue = 1;
 }
Exemplo n.º 17
0
 public static IGivenAFixture Fixture(this IGiven given, IFixture fixture)
 {
     return(new GivenAFixture(given, fixture));
 }