public void Answer_When1AnswerOutOf4Datas_Then25PercentComplete() { //ARRANGE const string testName = "Test1"; var listOfTestNames = new List<string> { testName }; var mockedResourceLoader = new Mock<IResourceLoader>(); var mockedResourceTest = new Mock<IResourceTest>(); mockedResourceLoader.Setup(x => x.LoadResource()) .Returns(new List<IResourceTest> {mockedResourceTest.Object}); mockedResourceTest.Setup(x => x.Name).Returns(testName); mockedResourceTest.Setup(x => x.Data).Returns(new List<DerDieDasData> { new DerDieDasData("der, kommen, kommen", new ArticleFactory()), new DerDieDasData("der, kommen, kommen", new ArticleFactory()), new DerDieDasData("der, kommen, kommen", new ArticleFactory()), new DerDieDasData("der, kommen, kommen", new ArticleFactory()) }); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); derDieDasTest.StartTest(listOfTestNames); derDieDasTest.Answer("Der", "kommen"); var percentageComplete = derDieDasTest.PercentageComplete(); //ASSERT Assert.Equal(25, percentageComplete); }
public void Answer_When1Answer_ThenEndOfTestIsFalse() { //ARRANGE const string testName = "Test1"; var listOfTestNames = new List<string> { testName }; var mockedResourceLoader = new Mock<IResourceLoader>(); var mockedResourceTest = new Mock<IResourceTest>(); mockedResourceLoader.Setup(x => x.LoadResource()) .Returns(new List<IResourceTest> { mockedResourceTest.Object }); mockedResourceTest.Setup(x => x.Name).Returns(testName); mockedResourceTest.Setup(x => x.Data).Returns(new List<DerDieDasData> { new DerDieDasData("Der, kommen, kommen", new ArticleFactory()), new DerDieDasData("Der, kommen, kommen", new ArticleFactory()), new DerDieDasData("Der, kommen, kommen", new ArticleFactory()), new DerDieDasData("Der, kommen, kommen", new ArticleFactory()) }); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); derDieDasTest.StartTest(listOfTestNames); derDieDasTest.Answer("der", "kommen"); var endOfTest = derDieDasTest.EndOfTest; //ASSERT Assert.False(endOfTest); }
public void StartTest_WhenNullSpecified_ThenThrowsArgumentNullException() { //ARRANGE var mockedResourceLoader = new Mock<IResourceLoader>(); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); Assert.ThrowsDelegate testDelegate = () => derDieDasTest.StartTest(null); //ASSERT Assert.Throws<ArgumentNullException>(testDelegate); }
public void StartTest_WhenEmptyListSpecified_ThenPercentagePluralCorrectWillBeZero() { //ARRANGE var mockedResourceLoader = new Mock<IResourceLoader>(); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); derDieDasTest.StartTest(new List<string>()); var percentagePluralCorrect = derDieDasTest.PercentagePluralCorrect(); //ASSERT Assert.Equal(0, percentagePluralCorrect); }
public void StartTest_WhenEmptyListSpecified_ThenCurrentWillBeNull() { //ARRANGE var mockedResourceLoader = new Mock<IResourceLoader>(); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); derDieDasTest.StartTest(new List<string>()); var current = derDieDasTest.Current(); //ASSERT Assert.Null(current); }
public void PercentagePluralCorrect_WhenLoaderReturnsZero_ThenExpectZeroPercent() { //ARRANGE var mockedResourceLoader = new Mock<IResourceLoader>(); mockedResourceLoader.Setup(x => x.LoadResource()) .Returns(new List<ResourceTest>()); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); //ASSERT Assert.Equal(0, derDieDasTest.PercentagePluralCorrect()); }
public void Constructor_WhenResourceLoaderReturnsEmptyList_ThenAvailableTestsIsEmpty() { //ARRANGE var mockedResourceLoader = new Mock<IResourceLoader>(); mockedResourceLoader.Setup(x => x.LoadResource()).Returns(new List<ResourceTest>()); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); //ASSERT Assert.Empty(derDieDasTest.AvailableTests); }
public void Constructor_WhenLoaderReturnsItems_ThenAvailableListContainsTheseItems() { //ARRANGE var mockedResourceLoader = new Mock<IResourceLoader>(); mockedResourceLoader.Setup(x => x.LoadResource()) .Returns(new List<ResourceTest> {new ResourceTest("Fred"), new ResourceTest("Squid")}); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); //ASSERT var availableTestsList = derDieDasTest.AvailableTests.ToList(); Assert.Equal(2, availableTestsList.Count()); Assert.Contains("Fred", availableTestsList); Assert.Contains("Squid", availableTestsList); }
public void Answer_WhenNullPluralSpecified_ThenThrowsArgumentNullException() { //ARRANGE var mockedResourceLoader = new Mock<IResourceLoader>(); //ACT var derDieDasTest = new DerDieDasTest(mockedResourceLoader.Object); derDieDasTest.StartTest(new List<string>()); Assert.ThrowsDelegate testDelegate = () => derDieDasTest.Answer("Der", null); //ASSERT Assert.Throws<ArgumentNullException>(testDelegate); }