public void GetByKey_ReturnsIncomeAndExpense()
        {
            string expectedTransactionTypesJson = File.ReadAllText(TestConfiguration.MockDataFolderPath + @"TransactionTypes.json");
            var    expectedTransactionTypes     = JsonConvert.DeserializeObject <List <TransactionType> >(expectedTransactionTypesJson);

            var expectedIncome = expectedTransactionTypes
                                 .First(t => t.Name == TransactionType.Options.Income.ToString());
            var expectedExpense = expectedTransactionTypes
                                  .First(t => t.Name == TransactionType.Options.Expense.ToString());

            TransactionTypeRepository
            .Setup(r => r.GetByKey(TransactionType.Options.Income.ToString())).Returns(expectedIncome);

            TransactionTypeRepository
            .Setup(r => r.GetByKey(TransactionType.Options.Expense.ToString())).Returns(expectedExpense);


            var actualIncome  = TransactionTypeService.GetByKey(TransactionType.Options.Income.ToString());
            var actualExpense = TransactionTypeService.GetByKey(TransactionType.Options.Expense.ToString());


            Assert.NotNull(actualIncome);
            Assert.NotNull(actualExpense);

            Assert.Equal(actualIncome.Name, expectedIncome.Name);
            Assert.Equal(actualIncome.IconUrl, expectedIncome.IconUrl);

            Assert.Equal(actualExpense.Name, expectedExpense.Name);
            Assert.Equal(actualExpense.IconUrl, expectedExpense.IconUrl);
        }