Example #1
0
        public async void WithdrawEurosFromUSASuccess()
        {
            try
            {
                var currencyHttpServiceMock = new Mock <ICurrencyHttpService>();
                currencyHttpServiceMock.Setup(m => m.GetEuroToUSdRate()).Returns(Task.Run(() => { return(2.0); }));
                var list = new List <BankTransaction>();
                list.Add(new BankTransaction {
                    Amount = 900
                });

                var aTMRepositoryMock = new Mock <IATMRepository>();
                aTMRepositoryMock.Setup(m => m.All).Returns(list.AsQueryable());
                aTMRepositoryMock.Setup(m => m.CreateAsync(It.IsAny <BankTransaction>()))
                .Callback <BankTransaction>(c => list.Add(c))
                .Returns(Task.Run(() => { return(new BankTransaction()); }));

                ATMService service = new ATMService(currencyHttpServiceMock.Object, aTMRepositoryMock.Object);
                await service.Withdraw(100, Currency.EURO, "address", Country.USA);

                var a = list.Sum(x => x.Amount);
                Assert.Equal(700, list.Sum(x => x.Amount));
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Example #2
0
 public UnitTest1()
 {
     mockRepository = new Mock <IATMRepository>();
     mockRepository.Setup(p => p.All).Returns(transactions.AsQueryable());
     mockCurency = new Mock <ICurrencyHttpService>();
     mockCurency.Setup(p => p.GetEuroToUSdRate()).ReturnsAsync(1.13);
     service = new ATMService(mockCurency.Object, mockRepository.Object);
 }
Example #3
0
 public async void TestRateEqualZeroSuccess()
 {
     mockCurency = new Mock <ICurrencyHttpService>();
     mockCurency.Setup(p => p.GetEuroToUSdRate()).ReturnsAsync(0);
     service = new ATMService(mockCurency.Object, mockRepository.Object);
     try
     {
         await service.Withdraw(300, Currency.EURO, "ccccc", Country.Germany);
     }
     catch (ATMRateEqualZeroException ex)
     {
         Assert.True(true);
         return;
     }
     Assert.True(false);
 }
Example #4
0
        public async void TestCountryCheckAmmountForNotUSASuccess()
        {
            try
            {
                mockRepository.Setup(p => p.CreateAsync(It.IsAny <BankTransaction>()))
                .Callback((BankTransaction val) =>
                {
                    transactions.Add(val);
                });
                service = new ATMService(mockCurency.Object, mockRepository.Object);
                await service.Withdraw(300, Currency.USD, "ccccc", Country.Germany);

                Assert.Equal(730, mockRepository.Object.All.Sum(x => x.Amount));
            }
            catch (Exception ex)
            {
                Assert.Equal(730, transactions.Sum(x => x.Amount));
            }
        }
        public void LoadAllMySQLInformations()
        {
            ATMService.LoadAllATMs();
            BlipService.LoadCustomBlipsFromDatabase();
            ClothingService.LoadAllClothing();
            ItemService.LoadItemsFromDB();
            ShopService.LoadShopsFromDB();
            GarageService.LoadAllGarageFromDB();
            VehicleService.ResetAllVehicles();
            GasStationService.LoadAllGasStationsFromDB();
            VehicleService.LoadVehicleInformationsFromDB();
            VehicleShopService.LoadAllVehicleShopsFromDB();
            DoorService.LoadAllDoorsFromDB();
            ClothingShopService.LoadAllClothingShopsFromDB();

            API.delay(3000, true, () =>
            {
                API.setServerPassword(oldServerPassword);
                API.consoleOutput("Server is now unlocked..");
            });
        }
Example #6
0
        public async void Test()
        {
            var mock = new Mock <IATMRepository>();

            mock.Setup(p => p.All).Returns(new List <BankTransaction> {
                new BankTransaction {
                    Amount = 1000, ATMAddress = "", IsDebit = true, TransactionDate = DateTime.Now
                }
            }.AsQueryable());

            var service = new ATMService(mock.Object, new CurrencyHttpService());

            try
            {
                await service.Withdraw(2000, "ccccc");
            }
            catch (ATMNotEnoughMoneyException)
            {
                Assert.True(true);
                return;
            }
            //Assert.True(false);
        }
Example #7
0
        public async void WithdrawSuccessful()
        {
            try
            {
                var currencyHttpServiceMock = new Mock <ICurrencyHttpService>();
                currencyHttpServiceMock.Setup(m => m.GetEuroToUSdRate()).Returns(Task.Run(() => { return(10.0); }));

                var aTMRepositoryMock = new Mock <IATMRepository>();
                aTMRepositoryMock.Setup(m => m.CreateAsync(new BankTransaction())).Returns(Task.Run(() => { return(new BankTransaction()); }));

                var list = new List <BankTransaction>();
                list.Add(new BankTransaction {
                    Amount = 900
                });
                aTMRepositoryMock.Setup(m => m.All).Returns(list.AsQueryable());

                ATMService service = new ATMService(currencyHttpServiceMock.Object, aTMRepositoryMock.Object);
                await service.Withdraw(100, Currency.EURO, "address", Country.Germany);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Example #8
0
 public void AddATMCmd(Client player)
 {
     ATMService.AddATM(player.position);
     API.sendChatMessageToPlayer(player, "~b~ATM ~w~added..");
 }
 public ATMController(ICardRepository repository, ITerminalSessionManager sessionManager, ATMService atmService)
 {
     _repository     = repository;
     _sessionManager = sessionManager;
     _atmService     = atmService;
 }