private Program CreateProgram(int id) => new Program { ActualVersion = MoqDataGenerator.GetRandomNumber(10, 100), Code = MoqDataGenerator.GetRandomString(100), Name = MoqDataGenerator.GetRandomString(10), ProgramID = id, ProgramRobots = new List <ProgramRobot>() };
public async Task CreateAccountTest() { int amount = data.Accounts.Data.Count(); string name = MoqDataGenerator.GetRandomString(10); int sum = MoqDataGenerator.GetRandomNumber(10, 100); var account = await accountManager.CreateAccount(name, sum); var last = data.Accounts.Data.Last(); Assert.AreSame(account, last); Assert.AreEqual(amount + 1, data.Accounts.Data.Count()); Assert.AreEqual(name, last.Name); Assert.AreEqual(sum, last.TargetSum); }
public void GetCommandsApiTest() { /* * . создать нового робота и комманду * . получить эту комманду через апи * . удалить нового робота и комманду */ var amountRobots = context.Robots.Count(); var amountCommands = context.RobotCommands.Count(); var robot = new Robot(); var command = new RobotCommand { Argument = MoqDataGenerator.GetRandomNumber(1, 10), Type = MoqDataGenerator.GetRandomNumber(1, 10), Robot = robot }; context.Robots.Add(robot); context.RobotCommands.Add(command); context.SaveChanges(); Assert.AreEqual(amountCommands, context.RobotCommands.Count() - 1); Assert.AreEqual(amountRobots, context.Robots.Count() - 1); try { using (var wb = new WebClient()) { wb.Encoding = Encoding.UTF8; var json = wb.DownloadString(serverUrl + "/api/GetCommands?robotId=" + robot.RobotID); var resp = JsonConvert.DeserializeObject <IEnumerable <GetCommandsOutput> >(json); Assert.AreEqual(1, resp.Count()); var comm = resp.First(); Assert.AreEqual(comm.RobotCommandID, command.RobotCommandID); Assert.AreEqual(comm.Type, command.Type); Assert.AreEqual(comm.Argument, command.Argument); } } finally { context.Robots.Remove(robot); context.RobotCommands.Remove(command); context.SaveChanges(); Assert.AreEqual(amountCommands, context.RobotCommands.Count()); Assert.AreEqual(amountRobots, context.Robots.Count()); } }
public async Task CreatePaymentTest() { var user = data.Users.Data.First(); var account = data.Accounts.Data.First(); var text = MoqDataGenerator.GetRandomString(10); var value = MoqDataGenerator.GetRandomNumber(1, 100); var date = DateTime.Now; int amount = data.Payments.Data.Count(); await paymentManager.CreatePayment(text, date, user, account, value); Assert.AreEqual(amount + 1, data.Payments.Data.Count()); var result = data.Payments.Data.Last(); Assert.AreSame(result.User, user); Assert.AreSame(result.Account, account); Assert.AreEqual(text, result.Text); Assert.AreEqual(value, result.Value); Assert.AreEqual(date, result.Date); }
private void CheckUpdateData() { // поменяем user.Login = MoqDataGenerator.GetRandomString(10); user.Password = MoqDataGenerator.GetRandomString(10); user.Nickname = MoqDataGenerator.GetRandomString(10); account.Description = MoqDataGenerator.GetRandomString(10); account.Name = MoqDataGenerator.GetRandomString(10); payment.Date = DateTime.Now; payment.Text = MoqDataGenerator.GetRandomString(10); payment.Value = MoqDataGenerator.GetRandomNumber(1, 100); token.Value = MoqDataGenerator.GetRandomString(11); // сохраним изменения в БД _context.Entry(user).State = EntityState.Modified; _context.Entry(account).State = EntityState.Modified; _context.Entry(payment).State = EntityState.Modified; _context.Entry(token).State = EntityState.Modified; _context.SaveChanges(); // проверить, что наши экземпляры сущностей по-прежнему лежат в БД CheckEntitiesAreInDB(); }
private void CheckUpdateData() { // поменяем все кроме ImageRecipe, ибо такие нужно не менять, а удалять program.Name = MoqDataGenerator.GetRandomString(10); programRobot.CurrentVersion = MoqDataGenerator.GetRandomNumber(10, 100); configuration.Port = MoqDataGenerator.GetRandomNumber(10, 11111); user.Login = MoqDataGenerator.GetRandomString(10); user.Password = MoqDataGenerator.GetRandomString(10); robot.ActivationCode = MoqDataGenerator.GetRandomNumber(0, 9999); robotCommand.Argument = MoqDataGenerator.GetRandomNumber(1, 100); robotCommand.Type = MoqDataGenerator.GetRandomNumber(1, 100); // сохраним изменения в БД _context.Entry(program).State = EntityState.Modified; _context.Entry(programRobot).State = EntityState.Modified; _context.Entry(configuration).State = EntityState.Modified; _context.Entry(user).State = EntityState.Modified; _context.Entry(robot).State = EntityState.Modified; _context.Entry(robotCommand).State = EntityState.Modified; _context.SaveChanges(); // проверить, что наши экземпляры сущностей по-прежнему лежат в БД CheckEntitiesIsInDb(); }
private async Task FillWithTestData() { // создаем объекты var user = new User { Login = MoqDataGenerator.GetRandomString(10), Password = MoqDataGenerator.GetRandomString(10), Nickname = MoqDataGenerator.GetRandomString(10), UserID = MoqDataGenerator.GetRandomNumber(1, 100) }; var account = new Account { AccountID = MoqDataGenerator.GetRandomNumber(1, 100), Name = MoqDataGenerator.GetRandomString(10), Description = MoqDataGenerator.GetRandomString(100) }; var payment = new Payment { Date = DateTime.Now, PaymentID = MoqDataGenerator.GetRandomNumber(1, 100), Value = MoqDataGenerator.GetRandomNumber(1, 1000), Text = MoqDataGenerator.GetRandomString(1000) }; var userAccount = new UserAccount { UserAccountID = MoqDataGenerator.GetRandomNumber(1, 100) }; var token = new Token { Value = MoqDataGenerator.GetRandomString(10) }; // устанавливаем связи account.UserAccounts = new List <UserAccount> { userAccount }; account.Payments = new List <Payment> { payment }; payment.User = user; payment.UserID = user.UserID; payment.Account = account; user.UserAccounts = new List <UserAccount> { userAccount }; user.Payments = new List <Payment> { payment }; userAccount.User = user; userAccount.Account = account; userAccount.UserID = user.UserID; userAccount.AccountID = account.AccountID; token.User = user; token.UserID = user.UserID; await Accounts.AddAsync(account); await Payments.AddAsync(payment); await Users.AddAsync(user); await UserAccounts.AddAsync(userAccount); await Tokens.AddAsync(token); }
private void FillWithTestData() { // создали по одной сущности в каждый из списков var user = new User { Login = MoqDataGenerator.GetRandomString(10), Password = MoqDataGenerator.GetRandomString(10), UserID = 1 }; var robot = new Robot { RobotID = MoqDataGenerator.GetRandomNumber(1, 100), Configurations = new List <Configuration>(), ProgramRobots = new List <ProgramRobot>(), ActivationCode = MoqDataGenerator.GetRandomNumber(1, 100) }; var program = CreateProgram(id: 1); var configuration = new Configuration { ConfigurationID = MoqDataGenerator.GetRandomNumber(10, 100), Port = MoqDataGenerator.GetRandomNumber(10, 11111) }; var programRobot = new ProgramRobot { ProgramRobotID = MoqDataGenerator.GetRandomNumber(10, 100) }; var image = new Image { ImageMimeType = MoqDataGenerator.GetRandomString(10), ImageData = MoqDataGenerator.GetSomeBytes(), ImageID = 1, Name = MoqDataGenerator.GetRandomString(10) }; var robotCommand = new RobotCommand { RobotCommandID = MoqDataGenerator.GetRandomNumber(10, 100), Type = 0 }; // добавили связи между сущностями robot.Configurations.Add(configuration); robot.ProgramRobots.Add(programRobot); robot.User = user; robot.UserID = user.UserID; configuration.Robot = robot; configuration.RobotID = robot.RobotID; program.ProgramRobots.Add(programRobot); program.Image = image; program.ImageID = image.ImageID; programRobot.Robot = robot; programRobot.Program = program; programRobot.RobotID = robot.RobotID; programRobot.ProgramID = program.ProgramID; programRobot.CurrentVersion = program.ActualVersion - 1; robotCommand.Argument = program.ProgramID; robotCommand.Robot = robot; robotCommand.RobotID = robot.RobotID; // добавили сущности в списки сущностей Robots.Add(robot); Programs.Add(program); Configurations.Add(configuration); ProgramRobots.Add(programRobot); Users.Add(user); RobotCommands.Add(robotCommand); Images.Add(image); // добавили еще 4 программы для теста pagination for (var i = 0; i < 4; i++) { Programs.Add(CreateProgram(i + 2)); } }