public void UnequipArmor_ShouldRemoveArmorFromRobot() { var users = new[] { new User() { Id = "111" }, new User() { Id = "222" }, new User() { Id = "333" }, new User() { Id = "444" } }; var mockUserStore = new Mock <IUserStore <User> >(); var mockUserManager = new Mock <UserManager <User> >( mockUserStore.Object, null, null, null, null, null, null, null, null); mockUserManager.Setup(um => um.GetUserAsync(null)) .ReturnsAsync(users[1]); this.dbContext = MockDbContext.GetContext(); this.service = new RobotDataService(dbContext, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); this.armorService = new ArmorDataService(dbContext, this.service, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); this.weaponService = new WeaponDataService(dbContext, this.service, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); var controller = new RobotController(mockUserManager.Object, MockAutoMapper.GetAutoMapper(), this.service, this.weaponService, this.armorService); controller.ControllerContext = new ControllerContext() { HttpContext = new DefaultHttpContext() { User = new ClaimsPrincipal(new ClaimsIdentity(new[] { new Claim(ClaimTypes.Role, "Admin") })) } }; var user2 = controller.ControllerContext.HttpContext.User; var robot = new Models.Robots.Robot() { Id = 1, BaseHealth = 1000, CurrentHealth = 1000, BaseDamage = 100, Type = "Fire", ImageUrl = "https://i.ytimg.com/vi/Rrb4jW_uJxE/hqdefault.jpg" }; var armor = new Models.Items.Armor() { Name = "mechoo", ArmorPoints = 101, DurabilityLossAmount = 15, ImageUrl = "kk", Price = 101 }; dbContext.Robots.Add(robot); dbContext.Armors.Add(armor); robot.Armors.Add(armor); this.dbContext.SaveChanges(); var result = controller.UnequipArmor(robot.Id, armor.Id); this.dbContext.SaveChanges(); Assert.AreEqual(0, robot.Armors.Count()); }
public void EditingRobot_ShouldEditRobotName() { var users = new[] { new User() { Id = "111" }, new User() { Id = "222" }, new User() { Id = "333" }, new User() { Id = "444" } }; var mockUserStore = new Mock <IUserStore <User> >(); var mockUserManager = new Mock <UserManager <User> >( mockUserStore.Object, null, null, null, null, null, null, null, null); mockUserManager.Setup(um => um.GetUserAsync(null)) .ReturnsAsync(users[1]); this.dbContext = MockDbContext.GetContext(); this.service = new RobotDataService(dbContext, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); this.armorService = new ArmorDataService(dbContext, this.service, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); this.weaponService = new WeaponDataService(dbContext, this.service, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); var controller = new RobotController(mockUserManager.Object, MockAutoMapper.GetAutoMapper(), this.service, this.weaponService, this.armorService); controller.ControllerContext = new ControllerContext() { HttpContext = new DefaultHttpContext() { User = new ClaimsPrincipal(new ClaimsIdentity(new[] { new Claim(ClaimTypes.Role, "Admin") })) } }; var user2 = controller.ControllerContext.HttpContext.User; var robot = new Models.Robots.Robot() { Id = 1, BaseHealth = 1000, CurrentHealth = 1000, BaseDamage = 100, Type = "Fire", ImageUrl = "https://i.ytimg.com/vi/Rrb4jW_uJxE/hqdefault.jpg" }; this.dbContext.Robots.Add(robot); this.dbContext.SaveChanges(); var updateNameBindingModel = new UpdateNameBindingModel() { Name = "Edited" }; var result = controller.Edit(robot.Id, updateNameBindingModel); //service.CreateRobotAsync(user2, robot); Assert.AreEqual("Edited", dbContext.Robots.First().Name); }
public async void Fight_ShouldDecreaseRobotPoints() { var users = new[] { new User() { Id = "111" }, new User() { Id = "222" }, new User() { Id = "333" }, new User() { Id = "444" } }; var mockUserStore = new Mock <IUserStore <User> >(); var mockUserManager = new Mock <UserManager <User> >( mockUserStore.Object, null, null, null, null, null, null, null, null); mockUserManager.Setup(um => um.GetUserAsync(null)) .ReturnsAsync(users[1]); this.dbContext = MockDbContext.GetContext(); this.service = new RobotDataService(dbContext, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); this.armorService = new ArmorDataService(dbContext, this.service, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); this.weaponService = new WeaponDataService(dbContext, this.service, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); this.creepService = new CreepDataService(dbContext, this.service, MockAutoMapper.GetAutoMapper()); this.dbContextService = new DbContextService(dbContext, this.service, MockAutoMapper.GetAutoMapper(), mockUserManager.Object); var robot = new Models.Robots.Robot() { Id = 1, BaseHealth = 1000, CurrentHealth = 1000, BaseDamage = 100, Type = "Fire", ImageUrl = "https://i.ytimg.com/vi/Rrb4jW_uJxE/hqdefault.jpg" }; var creep = new Creep() { Id = 1, Name = "aaaa", Type = "Fire", Health = 1000, Damage = 100, Bounty = 10, ImageUrl = "1" }; var controller = new BattleController ( mockUserManager.Object, MockAutoMapper.GetAutoMapper(), this.service, this.creepService, this.dbContextService ); controller.ControllerContext = new ControllerContext() { HttpContext = new DefaultHttpContext() { User = new ClaimsPrincipal(new ClaimsIdentity(new[] { new Claim(ClaimTypes.Role, "Admin") })) } }; this.dbContext.Robots.Add(robot); this.dbContext.Creeps.Add(creep); this.dbContext.SaveChanges(); await controller.Fight(robot.Id, creep.Id); Assert.AreEqual(0, robot.CurrentHealth); }