public void Given_EnoughMoneyAvailable_And_CoinsInserted_Then_MakeExchangeRequest_Should_ReturnNotesSuccessfully_And_UpdateAvailableMoney() { var initialMoney = new MoneyBuilder(Currency.Dollar) .AddNotes(10, 40) .AddNotes(5, 10) .AddNotes(2, 20) .AddNotes(1, 11) .Build(); var insertedMoney = new MoneyBuilder(Currency.Dollar) .AddCoins(25, 1000) .AddCoins(10, 1500) .AddCoins(5, 1000) .AddCoins(1, 5000) .Build(); var exchangeResult = new MoneyBuilder(Currency.Dollar) .AddNotes(10, 40) .AddNotes(5, 10) .AddNotes(2, 20) .AddNotes(1, 10) .Build(); var moneyAfterExchange = new MoneyBuilder(Currency.Dollar) .AddNotes(1) .Build(); Given_InitialMoney_And_MoneyInserted_Then_MakeExchangeRequest_Should_ReturnExpectedMoney(initialMoney, insertedMoney, HttpStatusCode.OK, exchangeResult, moneyAfterExchange); }
public void Given_NotEnoughMoneyAvailable_And_CoinsInserted_Then_MakeExchangeRequest_ShouldReturnInsertedCoins_With_ErrorStatus() { var initialMoney = new MoneyBuilder(Currency.Dollar) .AddNotes(1, 2) .AddNotes(2, 2) .AddNotes(5, 2) .AddNotes(10, 2) .AddCoins(1, 2) .AddCoins(5, 2) .AddCoins(10, 2) .AddCoins(25, 2) .Build(); var insertedMoney = new MoneyBuilder(Currency.Dollar) .AddCoins(1, 100) .AddCoins(5, 100) .AddCoins(10, 100) .AddCoins(25, 1000) .Build(); var exchangeResult = insertedMoney; var moneyAfterExchange = initialMoney; Given_InitialMoney_And_MoneyInserted_Then_MakeExchangeRequest_Should_ReturnExpectedMoney(initialMoney, insertedMoney, HttpStatusCode.Forbidden, exchangeResult, moneyAfterExchange); }
private HttpResponseMessage SetNoMoney() { var money = new MoneyBuilder(Currency.Dollar).Build(); return(SetMoney(money)); }