public void GivenNoFramesReturnFalse() { Karass karass = new KarassDummy(); KanKan kankan = new KanKan(karass, new FrameFactoryDummy()); Assert.False(kankan.MoveNext()); }
public void TeardownActionsAreCalled() { bool teardownCalled = false; bool frameCalled = false; bool FrameSpy(string message) { frameCalled = true; return(true); } void TeardownSpy() { teardownCalled = true; } FrameRequest frameRequest = _mockFramesFactory.GetValidFrameRequest(FrameSpy); Karass karass = _karassFactory.Get( new List <List <Action> >(), CreateActionListWith(TeardownSpy), new List <FrameRequest[]> { new[] { frameRequest } }); KanKan kankan = new KanKan(karass, _frameFactory); kankan.MoveNext(); Assert.True(frameCalled); kankan.MoveNext(); Assert.True(teardownCalled); }
public void ThenOnlyContainsFirstFrame() { FrameRequest frameOne = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest frameTwo = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest frameThree = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest frameFour = _mockFramesFactory.GetInvalidFrameRequest(); Karass karass = KarassFactory.Get( new List <List <Action> >(), new List <List <Action> >(), new List <FrameRequest[]> { new[] { frameOne, frameTwo, frameThree, frameFour } }); KanKan kanKan = new KanKan(karass, new FrameFactoryDummy()); Assert.True(kanKan.CurrentState.NextFrames.Contains(frameOne)); Assert.False(kanKan.CurrentState.NextFrames.Contains(frameTwo)); Assert.False(kanKan.CurrentState.NextFrames.Contains(frameThree)); Assert.False(kanKan.CurrentState.NextFrames.Contains(frameFour)); }
public void CurrentFramesReturnsNextFrames() { KarassFactory karassFactory = new KarassFactory(); IDependencies dependencies = new KarassDependencies(); FrameFactory frameFactory = new FrameFactory(dependencies); MockFramesFactory mockFramesFactory = new MockFramesFactory(frameFactory); IKarass karass = karassFactory.Get(new List <Action>(), new List <Action>(), new List <FrameRequest[]>() { new FrameRequest[] { mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), mockFramesFactory.GetValidFrameRequest((_) => true), } }); Assert.True(karass.FramesCollection[0].Length == 10); KanKan kanKan = new KanKan(karass, frameFactory); for (int i = 0; i < 10; i++) { Assert.AreEqual(kanKan.Current, kanKan.CurrentState.NextFrames); kanKan.MoveNext(); } }
public void WithThreeFramesReturnCorrectValues() { IKarass karass = new KarassNumberOfFramesStub(2); KanKan kankan = new KanKan(karass, new FrameFactoryDummy()); Assert.True(kankan.MoveNext()); Assert.False(kankan.MoveNext()); }
public void GivenOneFrameCurrentIsNotNull() { IKarass karass = new KarassNumberOfFramesStub(1); Assert.True(karass.FramesCollection.Count == 1); KanKan kanKan = new KanKan(karass, new FrameFactory(new KarassDependencies())); Assert.NotNull(kanKan.Current); }
public void SetupIsRunOnMoveNext() { int setupCounter = 0; Action setup = () => { setupCounter++; }; Karass testKarass = KarassFactory.Get(CreateActionListWith(setup), new List <List <Action> >(), new List <FrameRequest[]>()); KanKan kankan = new KanKan(testKarass, new FrameFactoryDummy()); kankan.MoveNext(); Assert.True(setupCounter > 0); }
public void SetupIsRunOnFirstMoveNextOnly() { int setupCounter = 0; Action setup = () => { setupCounter++; }; Karass testKarass = KarassFactory.Get(CreateActionListWith(setup), new List <List <Action> >(), Frames); KanKan kankan = new KanKan(testKarass, _frameFactory); kankan.MoveNext(); Assert.True(setupCounter == 1); kankan.MoveNext(); Assert.True(setupCounter == 1); }
public void WithMultipleFramesReturnCorrectValues() { int number = 42; IKarass karass = new KarassNumberOfFramesStub(number); KanKan kankan = new KanKan(karass, new FrameFactoryDummy()); for (int i = 0; i < number - 1; i++) { bool returnValue = kankan.MoveNext(); Assert.True(returnValue); } Assert.False(kankan.MoveNext()); }
public void SetupAndTearDownAreRun() { int setupCounter = 0; int teardownCounter = 0; Action setup = () => { setupCounter++; }; Action teardown = () => { teardownCounter++; }; Karass testKarass = KarassFactory.Get(CreateActionListWith(setup), CreateActionListWith(teardown), new List <FrameRequest[]>()); KanKan kankan = new KanKan(testKarass, new FrameFactory(new KarassDependencies())); kankan.MoveNext(); Assert.True(setupCounter == 1); Assert.True(teardownCounter == 1); }
public void BothKarassSetupAndTeardownWillBeRun() { KarassFactory karassFactory = new KarassFactory(); bool karassOneSetupRun = false; void KarassOneSetupSpy() { karassOneSetupRun = true; } bool karassTwoSetupRun = false; void KarassTwoSetupSpy() { karassTwoSetupRun = true; } bool karassOneTeardownRun = false; void KarassOneTeardownSpy() { karassOneTeardownRun = true; } bool karassTwoTeardownRun = false; void KarassTwoTeardownSpy() { karassTwoTeardownRun = true; } Karass karassOne = karassFactory.Get(KarassOneSetupSpy, KarassOneTeardownSpy, new List <FrameRequest[]>()); Karass karassTwo = karassFactory.Get(KarassTwoSetupSpy, KarassTwoTeardownSpy, new List <FrameRequest[]>()); KanKan kankan = new KanKan(new IKarass[] { karassOne, karassTwo }, new FrameFactory(new KarassDependencies())); kankan.MoveNext(); Assert.True(karassOneSetupRun); Assert.True(karassTwoSetupRun); Assert.True(karassOneTeardownRun); Assert.True(karassTwoTeardownRun); }
public void SetupAndTeardownIsRun() { int setupCounter = 0; int teardownCounter = 0; Action setup = () => { setupCounter++; }; Action teardown = () => { teardownCounter++; }; Karass testKarass = _karassFactory.Get(CreateActionListWith(setup), CreateActionListWith(teardown), Frames); KanKan kanKan = new KanKan(testKarass, _frameFactory); kanKan.MoveNext(); Assert.True(setupCounter == 1); Assert.True(teardownCounter == 1); Assert.True(_frameRun); }
public void ThenTheFrameIsInCurrentFrames() { FrameRequest frame = _mockFramesFactory.GetInvalidFrameRequest(); Karass karass = KarassFactory.Get( new List <List <Action> >(), new List <List <Action> >(), new List <FrameRequest[]> { new[] { frame } }); KanKan kanKan = new KanKan(karass, new FrameFactoryDummy()); Assert.True(kanKan.CurrentState.NextFrames.Contains(frame)); }
public void GivenNoMoveNextFirstFrameReturnedOnReset() { KarassFramesStub karass = new KarassFramesStub( new List <FrameRequest[]> { new[] { _mockFramesFactory.GetValidFrameRequest(FirstFrameSpy) } }, _dependencies, _frameFactory ); KanKan kanKan = new KanKan(karass, _frameFactory); kanKan.MoveNext(); kanKan.Reset(); kanKan.MoveNext(); Assert.True(_timesFirstFrameRun == 2); }
public void ThenOnlyTheFirstFramesAreInCurrentFrames() { FrameRequest setOneFrameOne = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest setOneFrameTwo = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest setOneFrameThree = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest setTwoFrameOne = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest setTwoFrameTwo = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest setTwoFrameThree = _mockFramesFactory.GetInvalidFrameRequest(); Karass karass = KarassFactory.Get( new List <List <Action> >(), new List <List <Action> >(), new List <FrameRequest[]> { new[] { setOneFrameOne, setOneFrameTwo, setOneFrameThree }, new[] { setTwoFrameOne, setTwoFrameTwo, setTwoFrameThree } }); KanKan kanKan = new KanKan(karass, new FrameFactoryDummy()); Assert.True(kanKan.CurrentState.NextFrames.Contains(setOneFrameOne)); Assert.True(kanKan.CurrentState.NextFrames.Contains(setTwoFrameOne)); Assert.False(kanKan.CurrentState.NextFrames.Contains(setOneFrameTwo)); Assert.False(kanKan.CurrentState.NextFrames.Contains(setTwoFrameTwo)); Assert.False(kanKan.CurrentState.NextFrames.Contains(setOneFrameTwo)); Assert.False(kanKan.CurrentState.NextFrames.Contains(setTwoFrameTwo)); }
public void ThenBothFramesAreInCurrentFrames() { FrameRequest setOneFrame = _mockFramesFactory.GetInvalidFrameRequest(); FrameRequest setTwoFrame = _mockFramesFactory.GetInvalidFrameRequest(); Karass karass = KarassFactory.Get( new List <List <Action> >(), new List <List <Action> >(), new List <FrameRequest[]> { new[] { setOneFrame }, new[] { setTwoFrame } }); KanKan kanKan = new KanKan(karass, new FrameFactory(new KarassDependencies())); Assert.True(kanKan.CurrentState.NextFrames.Contains(setOneFrame)); Assert.True(kanKan.CurrentState.NextFrames.Contains(setTwoFrame)); }
public void ThenKarassWillRunCorrectly() { bool karassOneSetupRun = false; void KarassOneSetupSpy() { karassOneSetupRun = true; } bool karassOneTeardownRun = false; void KarassOneTeardownSpy() { karassOneTeardownRun = true; } bool karassOneFrameOneRun = false; bool KarassOneFrameOneSpy(string message) { karassOneFrameOneRun = true; return(true); } FrameRequest karassOneFrameOneSpyRequest = _mockFramesFactory.GetValidFrameRequest(KarassOneFrameOneSpy); Karass karassOne = _karassFactory.Get(KarassOneSetupSpy, KarassOneTeardownSpy, new List <FrameRequest[]> { new[] { karassOneFrameOneSpyRequest } }); bool karassTwoSetupRun = false; void KarassTwoSetupSpy() { karassTwoSetupRun = true; } bool karassTwoTeardownRun = false; void KarassTwoTeardownSpy() { karassTwoTeardownRun = true; } bool karassTwoFrameOneRun = false; bool karassTwoFrameTwoRun = false; bool karassTwoFrameThreeRun = false; bool KarassTwoFrameOneSpy(string message) { karassTwoFrameOneRun = true; return(true); } bool KarassTwoFrameTwoSpy(string message) { karassTwoFrameTwoRun = true; return(true); } bool KarassTwoFrameThreeSpy(string message) { karassTwoFrameThreeRun = true; return(true); } FrameRequest karassTwoFrameOneSpyRequest = _mockFramesFactory.GetValidFrameRequest(KarassTwoFrameOneSpy); FrameRequest karassTwoFrameTwoSpyRequest = _mockFramesFactory.GetValidFrameRequest(KarassTwoFrameTwoSpy); FrameRequest karassTwoFrameThreeSpyRequest = _mockFramesFactory.GetValidFrameRequest(KarassTwoFrameThreeSpy); Karass karassTwo = _karassFactory.Get(KarassTwoSetupSpy, KarassTwoTeardownSpy, new List <FrameRequest[]> { new[] { karassTwoFrameOneSpyRequest, karassTwoFrameTwoSpyRequest, karassTwoFrameThreeSpyRequest, } }); bool karassThreeSetupRun = false; void KarassThreeSetupSpy() { karassThreeSetupRun = true; } bool karassThreeTeardownRun = false; void KarassThreeTeardownSpy() { karassThreeTeardownRun = true; } bool karassThreeFrameOneRun = false; bool KarassThreeFrameOneSpy(string message) { karassThreeFrameOneRun = true; return(true); } FrameRequest karassThreeFrameOneSpyRequest = _mockFramesFactory.GetValidFrameRequest(KarassThreeFrameOneSpy); Karass karassThree = _karassFactory.Get(KarassThreeSetupSpy, KarassThreeTeardownSpy, new List <FrameRequest[]> { new[] { karassThreeFrameOneSpyRequest } }); bool karassFourSetupRun = false; void KarassFourSetupSpy() { karassFourSetupRun = true; } bool karassFourTeardownRun = false; void KarassFourTeardownSpy() { karassFourTeardownRun = true; } bool karassFourFrameOneRun = false; bool karassFourFrameTwoRun = false; bool KarassFourFrameOneSpy(string message) { karassFourFrameOneRun = true; return(true); } bool KarassFourFrameTwoSpy(string message) { karassFourFrameTwoRun = true; return(true); } FrameRequest karassFourFrameOneSpyRequest = _mockFramesFactory.GetValidFrameRequest(KarassFourFrameOneSpy); FrameRequest karassFourFrameTwoSpyRequest = _mockFramesFactory.GetValidFrameRequest(KarassFourFrameTwoSpy); Karass karassFour = _karassFactory.Get(KarassFourSetupSpy, KarassFourTeardownSpy, new List <FrameRequest[]> { new[] { karassFourFrameOneSpyRequest, karassFourFrameTwoSpyRequest } }); KanKan kankan = new KanKan( new IKarass[] { karassOne, karassTwo, karassThree, karassFour }, _frameFactory); bool moveNext = kankan.MoveNext(); CheckFirstFrame(karassOneSetupRun, karassOneTeardownRun, karassOneFrameOneRun, karassTwoSetupRun, karassTwoTeardownRun, karassTwoFrameOneRun, karassTwoFrameTwoRun, karassTwoFrameThreeRun, moveNext, karassThreeSetupRun, karassThreeTeardownRun, karassThreeFrameOneRun, karassFourSetupRun, karassFourTeardownRun, karassFourFrameOneRun, karassFourFrameTwoRun); moveNext = kankan.MoveNext(); CheckSecondFrame(karassOneSetupRun, karassOneTeardownRun, karassOneFrameOneRun, karassTwoSetupRun, karassTwoTeardownRun, karassTwoFrameOneRun, karassTwoFrameTwoRun, karassTwoFrameThreeRun, karassThreeSetupRun, karassThreeTeardownRun, karassThreeFrameOneRun, karassFourSetupRun, karassFourTeardownRun, karassFourFrameOneRun, karassFourFrameTwoRun, moveNext); moveNext = kankan.MoveNext(); CheckThirdFrame(karassOneSetupRun, karassOneTeardownRun, karassOneFrameOneRun, karassTwoSetupRun, karassTwoTeardownRun, karassTwoFrameOneRun, karassTwoFrameTwoRun, karassTwoFrameThreeRun, karassThreeSetupRun, karassThreeTeardownRun, karassThreeFrameOneRun, karassFourSetupRun, karassFourTeardownRun, karassFourFrameOneRun, karassFourFrameTwoRun, moveNext); moveNext = kankan.MoveNext(); CheckFourthFrame(karassOneSetupRun, karassOneTeardownRun, karassOneFrameOneRun, karassTwoSetupRun, karassTwoTeardownRun, karassTwoFrameOneRun, karassTwoFrameTwoRun, karassTwoFrameThreeRun, karassThreeSetupRun, karassThreeTeardownRun, karassThreeFrameOneRun, karassFourSetupRun, karassFourTeardownRun, karassFourFrameOneRun, karassFourFrameTwoRun, moveNext); moveNext = kankan.MoveNext(); CheckFifthFrame(karassOneSetupRun, karassOneTeardownRun, karassOneFrameOneRun, karassTwoSetupRun, karassTwoTeardownRun, karassTwoFrameOneRun, karassTwoFrameTwoRun, karassTwoFrameThreeRun, karassThreeSetupRun, karassThreeTeardownRun, karassThreeFrameOneRun, karassFourSetupRun, karassFourTeardownRun, karassFourFrameOneRun, karassFourFrameTwoRun, moveNext); moveNext = kankan.MoveNext(); CheckSixthFrame(karassOneSetupRun, karassOneTeardownRun, karassOneFrameOneRun, karassTwoSetupRun, karassTwoTeardownRun, karassTwoFrameOneRun, karassTwoFrameTwoRun, karassTwoFrameThreeRun, karassThreeSetupRun, karassThreeTeardownRun, karassThreeFrameOneRun, karassFourSetupRun, karassFourTeardownRun, karassFourFrameOneRun, karassFourFrameTwoRun, moveNext); moveNext = kankan.MoveNext(); CheckSeventhFrame(karassOneSetupRun, karassOneTeardownRun, karassOneFrameOneRun, karassTwoSetupRun, karassTwoTeardownRun, karassTwoFrameOneRun, karassTwoFrameTwoRun, karassTwoFrameThreeRun, karassThreeSetupRun, karassThreeTeardownRun, karassThreeFrameOneRun, karassFourSetupRun, karassFourTeardownRun, karassFourFrameOneRun, karassFourFrameTwoRun, moveNext); }
public void ThenNextFramesIsCorrectlyUpdated() { FrameRequest setOneFrameOneSpyRequest = _mockFramesFactory.GetValidFrameRequest(SetOneFrameOneSpy); FrameRequest setOneFrameTwoSpyRequest = _mockFramesFactory.GetValidFrameRequest(SetOneFrameTwoSpy); FrameRequest setTwoFrameOneSpyRequest = _mockFramesFactory.GetValidFrameRequest(SetTwoFrameOneSpy); FrameRequest setTwoFrameTwoSpyRequest = _mockFramesFactory.GetValidFrameRequest(SetTwoFrameTwoSpy); bool setOneFrameOneRun = false; bool SetOneFrameOneSpy(string s) { setOneFrameOneRun = true; return(true); } bool setOneFrameTwoRun = false; bool SetOneFrameTwoSpy(string s) { setOneFrameTwoRun = true; return(true); } bool setTwoFrameOneRun = false; bool SetTwoFrameOneSpy(string s) { setTwoFrameOneRun = true; return(true); } bool setTwoFrameTwoRun = false; bool SetTwoFrameTwoSpy(string s) { setTwoFrameTwoRun = true; return(true); } Karass karass = _karassFactory.Get(new List <List <Action> >(), new List <List <Action> >(), new List <FrameRequest[]> { new[] { setOneFrameOneSpyRequest, setOneFrameTwoSpyRequest }, new[] { setTwoFrameOneSpyRequest, setTwoFrameTwoSpyRequest } }); KanKan kankan = new KanKan(karass, _frameFactory); Assert.True(kankan.CurrentState.NextFrames.Count == 2); Assert.True(kankan.CurrentState.NextFrames.Contains(setOneFrameOneSpyRequest)); Assert.True(kankan.CurrentState.NextFrames.Contains(setTwoFrameOneSpyRequest)); kankan.MoveNext(); Assert.True(kankan.CurrentState.NextFrames.Count == 2); Assert.True(kankan.CurrentState.NextFrames.Contains(setOneFrameTwoSpyRequest)); Assert.True(kankan.CurrentState.NextFrames.Contains(setTwoFrameTwoSpyRequest)); Assert.True(setOneFrameOneRun); Assert.False(setOneFrameTwoRun); Assert.True(setTwoFrameOneRun); Assert.False(setTwoFrameTwoRun); kankan.MoveNext(); Assert.False(kankan.CurrentState.NextFrames.Any()); Assert.True(setOneFrameOneRun); Assert.True(setOneFrameTwoRun); Assert.True(setTwoFrameOneRun); Assert.True(setTwoFrameTwoRun); }
public void ThenFrameSetsAreRunIndependently() { FrameRequest frameSetOneRequestOne = _mockFramesFactory.GetValidFrameRequest(FrameSetOneFrameOneSpy); FrameRequest frameSetOneRequestTwo = _mockFramesFactory.GetValidFrameRequest(FrameSetOneFrameTwoSpy); FrameRequest frameSetOneRequestThree = _mockFramesFactory.GetValidFrameRequest(FrameSetOneFrameThreeSpy); FrameRequest frameSetTwpRequestOne = _mockFramesFactory.GetValidFrameRequest(FrameSetTwoFrameOneSpy); FrameRequest frameSetTwoRequestTwo = _mockFramesFactory.GetValidFrameRequest(FrameSetTwoFrameTwoSpy); bool setOneSetupRun = false; void FrameSetOneSetupSpy() { setOneSetupRun = true; } bool setOneTeardownRun = false; void FrameSetOneTeardownSpy() { setOneTeardownRun = true; } bool setOneFrameOneRun = false; bool FrameSetOneFrameOneSpy(string message) { setOneFrameOneRun = true; return(true); } bool setOneFrameTwoRun = false; bool FrameSetOneFrameTwoSpy(string message) { setOneFrameTwoRun = true; return(true); } bool setOneFrameThreeRun = false; bool FrameSetOneFrameThreeSpy(string message) { setOneFrameThreeRun = true; return(true); } bool setTwoSetupRun = false; void FrameSetTwoSetupSpy() { setTwoSetupRun = true; } bool setTwoTeardownRun = false; void FrameSetTwoTeardownSpy() { setTwoTeardownRun = true; } bool setTwoFrameOneRun = false; bool FrameSetTwoFrameOneSpy(string message) { setTwoFrameOneRun = true; return(true); } bool setTwoFrameTwoRun = false; bool FrameSetTwoFrameTwoSpy(string message) { setTwoFrameTwoRun = true; return(true); } Karass karassOne = KarassFactory.Get(CreateActionListWith(FrameSetOneSetupSpy), CreateActionListWith(FrameSetOneTeardownSpy), new List <FrameRequest[]> { new[] { frameSetOneRequestOne, frameSetOneRequestTwo, frameSetOneRequestThree } }); Karass karassTwo = KarassFactory.Get(CreateActionListWith(FrameSetTwoSetupSpy), CreateActionListWith(FrameSetTwoTeardownSpy), new List <FrameRequest[]> { new[] { frameSetTwpRequestOne, frameSetTwoRequestTwo } }); KanKan kankan = new KanKan(karassOne + karassTwo, _frameFactory); Assert.True(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestOne)); Assert.True(kankan.CurrentState.NextFrames.Contains(frameSetTwpRequestOne)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestTwo)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetTwoRequestTwo)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestThree)); kankan.MoveNext(); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestOne)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetTwpRequestOne)); Assert.True(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestTwo)); Assert.True(kankan.CurrentState.NextFrames.Contains(frameSetTwoRequestTwo)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestThree)); CheckFirstFrame(setOneSetupRun, setTwoSetupRun, setOneTeardownRun, setTwoTeardownRun, setOneFrameOneRun, setTwoFrameOneRun, setOneFrameTwoRun, setOneFrameThreeRun, setTwoFrameTwoRun); kankan.MoveNext(); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestOne)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetTwpRequestOne)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestTwo)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameSetTwoRequestTwo)); Assert.True(kankan.CurrentState.NextFrames.Contains(frameSetOneRequestThree)); CheckSecondFrame(setOneSetupRun, setTwoSetupRun, setOneTeardownRun, setTwoTeardownRun, setOneFrameOneRun, setTwoFrameOneRun, setOneFrameTwoRun, setTwoFrameTwoRun, setOneFrameThreeRun); kankan.MoveNext(); Assert.False(kankan.CurrentState.NextFrames.Any()); CheckThirdFrame(setOneSetupRun, setTwoSetupRun, setOneTeardownRun, setTwoTeardownRun, setOneFrameOneRun, setTwoFrameOneRun, setOneFrameTwoRun, setTwoFrameTwoRun, setOneFrameThreeRun); }
public void ThenNextFramesCorrectlyProgressThroughFrames() { FrameRequest frameRequestOne = _mockFramesFactory.GetValidFrameRequest(FrameOneSpy); FrameRequest frameRequestTwo = _mockFramesFactory.GetValidFrameRequest(FrameTwoSpy); FrameRequest frameRequestThree = _mockFramesFactory.GetValidFrameRequest(FrameThreeSpy); bool frameOneRun = false; bool FrameOneSpy(string s) { frameOneRun = true; return(true); } bool frameTwoRun = false; bool FrameTwoSpy(string s) { frameTwoRun = true; return(true); } bool frameThreeRun = false; bool FrameThreeSpy(string s) { frameThreeRun = true; return(true); } bool setupRun = false; void SetupSpy() { setupRun = true; } bool tearDownRun = false; void TeardownSpy() { tearDownRun = true; } Karass karass = KarassFactory.Get( CreateActionListWith(SetupSpy), CreateActionListWith(TeardownSpy), new List <FrameRequest[]> { new[] { frameRequestOne, frameRequestTwo, frameRequestThree } }); KanKan kankan = new KanKan(karass, _frameFactory); Assert.True(kankan.CurrentState.NextFrames.Contains(frameRequestOne)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameRequestTwo)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameRequestThree)); kankan.MoveNext(); Assert.False(kankan.CurrentState.NextFrames.Contains(frameRequestOne)); Assert.True(kankan.CurrentState.NextFrames.Contains(frameRequestTwo)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameRequestThree)); CheckFirstFrame(setupRun, frameOneRun, tearDownRun, frameTwoRun, frameThreeRun); kankan.MoveNext(); Assert.False(kankan.CurrentState.NextFrames.Contains(frameRequestOne)); Assert.False(kankan.CurrentState.NextFrames.Contains(frameRequestTwo)); Assert.True(kankan.CurrentState.NextFrames.Contains(frameRequestThree)); CheckSecondFrame(setupRun, frameOneRun, tearDownRun, frameTwoRun, frameThreeRun); kankan.MoveNext(); Assert.False(kankan.CurrentState.NextFrames.Any()); CheckThirdFrame(setupRun, frameOneRun, tearDownRun, frameTwoRun, frameThreeRun); }
public void GivenNoFramesCurrentReturnsNotNull() { IEnumerator ukankan = new KanKan(new KarassDummy(), new FrameFactory(new KarassDependencies())); Assert.NotNull(ukankan.Current); }