public void Should_ThrowException_When_ExpenseReportNumberOfEntriesIsEmptyOrLessThan2(int[] expenseEntries)
            {
                var mockExpenceReport = new ExpenseReport {
                    Entries = expenseEntries
                };
                var sut = new ExpenseReportService(mockExpenceReport);

                Assert.Throws <InvalidOperationException>(() => sut.Find2NumbersThatAddUpTo2020AndMultiplyTogether());
            }
        public void Should_ThrowException_When_ExpenseReportEntriesAreNull()
        {
            var mockExpenceReport = new ExpenseReport {
                Entries = null
            };
            var sut = new ExpenseReportService(mockExpenceReport);

            Assert.Throws <InvalidOperationException>(() => sut.Find2NumbersThatAddUpTo2020AndMultiplyTogether());
        }
            public void Should_ThrowException_When_Find2NumbersThatAddUpTo2020AndMultiplyTogetherUnableToFindCombination(
                int[] expenseReportEntries)
            {
                var expenseReport = new ExpenseReport {
                    Entries = expenseReportEntries
                };
                var sut = new ExpenseReportService(expenseReport);

                Assert.Throws <Exception>(() => sut.Find2NumbersThatAddUpTo2020AndMultiplyTogether());
            }
            public void Should_Find2NumbersThatAddUpTo2020AndMultiplyTogether_WhenCombinationExists(
                int[] expenseReportEntries, int expected)
            {
                var expenseReport = new ExpenseReport {
                    Entries = expenseReportEntries
                };
                var sut = new ExpenseReportService(expenseReport);

                var result = sut.Find2NumbersThatAddUpTo2020AndMultiplyTogether();

                Assert.That(result, Is.EqualTo(expected));
            }