public void GetGrossTypingSpeedReturnsExpectedValue(
            [ValueSource("_typingTestDataSet1")] TypingTestData testData)
        {
            var testResult = _typingCalculator.GetGrossTypingSpeed(testData.UserInput, testData.ElapsedTime);

            testResult.ShouldBe(testData.ExpectedGrossSpeed);
        }
        public void GetNetTypingSpeedReturnsExpectedValue(
            [ValueSource("_typingTestDataSet1")] TypingTestData testData)
        {
            var testResult = _typingCalculator.GetNetTypingSpeed(testData.UserInput, testData.ElapsedTime, testData.TotalErrorsMade);

            testResult.ShouldBe(testData.ExpectedNetSpeed);
        }
 public void GetGrossTypingSpeedThrowsDivideByZeroExceptionWhenElapsedTimeIs0(
     [ValueSource("_typingTestDataSet2")] TypingTestData testData)
 {
     Should.Throw <DivideByZeroException>(() => _typingCalculator.GetGrossTypingSpeed(
                                              testData.UserInput,
                                              testData.ElapsedTime));
 }
 public void GetTypingAccuracyThrowsDivideByZeroExceptionWhenUserInputLenghtIs0(
     [ValueSource("_typingTestDataSet2")] TypingTestData testData)
 {
     Should.Throw <DivideByZeroException>(() => _typingCalculator.GetTypingAccuracy(
                                              testData.UserInput,
                                              testData.TotalErrorsMade));
 }
        public void GetTypingAccuracyReturnsExpectedValue(
            [ValueSource("_typingTestDataSet1")] TypingTestData testData)
        {
            var testResult = _typingCalculator.GetTypingAccuracy(testData.UserInput, testData.TotalErrorsMade);

            testResult.ShouldBe(testData.ExpectedAccuracy);
        }