public void StartBot_StartBotWithoutMarkup_NoMarkupData() { //Arrange Account account = new Account { Bots = new List <BotDB> { new BotDB { Markup = null, Token = "someToken" } }, Money = 1 }; dbContext.Accounts.Add(account); dbContext.SaveChanges(); //Act BotStartMessage result = botsAirstripService.StartBot(account.Bots.First().Id, account.Id); //Assert Assert.IsFalse(result.Success); Assert.IsNotNull(result.FailureReason); Assert.AreEqual(BotStartFailureReason.NoMarkupData, result.FailureReason); }
public void StartBot_NormalData_SuccessStart() { //Arrange Account account = new Account { Bots = new List <BotDB> { new BotDB { Markup = "someMarkup", Token = "someData" } }, Money = 1 }; dbContext.Accounts.Add(account); dbContext.SaveChanges(); //Act BotStartMessage result = botsAirstripService.StartBot(account.Bots.First().Id, account.Id); //Assert Assert.IsTrue(result.Success); Assert.IsNull(result.FailureReason); Assert.IsNull(result.ForestException); }
public void StartBot_AttemptToRunBotThatIsAlreadyRunning_ThisBotIsAlreadyRunning() { //Arrange Account account = new Account { Bots = new List <BotDB> { new BotDB { Markup = "someMarkup", Token = "someToken" } }, Money = 1 }; dbContext.Accounts.Add(account); dbContext.SaveChanges(); RouteRecord routeRecord = new RouteRecord { BotId = account.Bots.First().Id }; dbContext.RouteRecords.Add(routeRecord); dbContext.SaveChanges(); //Act BotStartMessage result = botsAirstripService.StartBot(account.Bots.First().Id, account.Id); //Assert Assert.IsFalse(result.Success); Assert.IsNotNull(result.FailureReason); Assert.AreEqual(BotStartFailureReason.ThisBotIsAlreadyRunning, result.FailureReason); }
public void StartBot_BotLaunchWithoutMoney_NotEnoughFundsInTheAccountOfTheBotOwner() { //Arrange Account account = new Account { Money = 0, Bots = new List <BotDB> { new BotDB { Markup = "someMarkup", Token = "someToken" } } }; dbContext.Accounts.Add(account); dbContext.SaveChanges(); //Act BotStartMessage result = botsAirstripService.StartBot(account.Bots.First().Id, account.Id); //Assert Assert.IsFalse(result.Success); Assert.IsNotNull(result.FailureReason); Assert.AreEqual(BotStartFailureReason.NotEnoughFundsInTheAccountOfTheBotOwner, result.FailureReason); }
public void StartBot_StartBotWithWrongAccountId_NoAccessToThisBot() { //Arrange Account account = new Account { Bots = new List <BotDB> { new BotDB { Markup = "someMarkup", Token = "someToken" } }, Money = 1 }; dbContext.Accounts.Add(account); dbContext.SaveChanges(); //Act BotStartMessage result = botsAirstripService.StartBot(account.Bots.First().Id, int.MaxValue); //Assert Assert.IsFalse(result.Success); Assert.IsNotNull(result.FailureReason); Assert.AreEqual(BotStartFailureReason.NoAccessToThisBot, result.FailureReason); }