public void AddSetGameAndRedirectToIndex() { //Arrange Game game = new TestContext().Games.FirstOrDefault(); var img = new Mock <IFormFile>(); img.Setup(m => m.OpenReadStream()).Returns(new FileStream("1.jpg", FileMode.Open)); GameViewModel gv = new GameViewModel() { ID = game.ID, Description = game.Description, Genre = game.Genre, Name = game.Name, Negative = game.Negative, Positive = game.Positive, Year = game.Year, Img = img.Object }; var mock = new Mock <IStore>(); var controller = new StoreController(mock.Object); //Act var result = controller.Add(gv); //Assert var model = Assert.IsType <RedirectToActionResult>(result); Assert.Equal("Index", model.ActionName); mock.Verify(m => m.SetGame(It.IsAny <Game>())); }
public void AddRedirectsToAdd() { //Arrange var mock = new Mock <IStore>(); var controller = new StoreController(mock.Object); //Act controller.ModelState.AddModelError("", "Wrong values"); var result = controller.Add(new GameViewModel()); //Assert var model = Assert.IsType <RedirectToActionResult>(result); Assert.Equal("Add", model.ActionName); }
private void SecondStore(string connectionString, StoreModel storeModel, StoreModel storeModel2) { StoreController storeController = new StoreController(); storeController.AndroAdminConnectionStringOverride = connectionString; // Add a second store ActionResult actionResult = storeController.Add(storeModel2); // Check for model errors string error = AndroAdminTestHelper.CheckForModelError(actionResult, storeController); if (error.Length > 0) { Assert.Fail(error); } // Check to see if the store exists error = AndroAdminTestHelper.CheckStores(storeController, new List <StoreModel> { storeModel, storeModel2 }); if (error.Length > 0) { Assert.Fail(error); } // Export to XML SyncHelper.ConnectionStringOverride = connectionString; string xml = ""; string errorMessage = AndroAdminSyncHelper.TryGetExportSyncXml(1, 2, out xml); Assert.AreEqual <string>("", errorMessage); string expectedXml2 = "<CloudSync>" + "<FromDataVersion>1</FromDataVersion>" + "<ToDataVersion>2</ToDataVersion>" + "<Stores>" + "<Store>" + "<ExternalSiteName>TestExternalSiteName2</ExternalSiteName>" + "<AndromedaSiteId>321</AndromedaSiteId>" + "<ExternalSiteId>TestExternalSiteId2</ExternalSiteId>" + "<StoreStatus>Live</StoreStatus>" + "<Phone>0987654321</Phone>" + "<TimeZone>GMT</TimeZone>" + "<Address>" + "<Id>2</Id>" + "<Org1>Test2_Org1</Org1>" + "<Org2>Test2_Org2</Org2>" + "<Org3>Test2_Org3</Org3>" + "<Prem1>Test2_Prem1</Prem1>" + "<Prem2>Test2_Prem2</Prem2>" + "<Prem3>Test2_Prem3</Prem3>" + "<Prem4>Test2_Prem4</Prem4>" + "<Prem5>Test2_Prem5</Prem5>" + "<Prem6>Test2_Prem6</Prem6>" + "<RoadNum>Test2_RoadNum</RoadNum>" + "<RoadName>Test2_RoadName</RoadName>" + "<Locality>Test2_Locality</Locality>" + "<Town>Test2_Town</Town>" + "<County>Test2_County</County>" + "<State>Test2_State</State>" + "<PostCode>Test2_PostCode</PostCode>" + "<DPS>DPS2</DPS>" + "<Lat>1.2</Lat>" + "<Long>3.4</Long>" + "<CountryId>234</CountryId>" + "</Address>" + "</Store>" + "</Stores>" + "<Partners />" + "</CloudSync>"; Assert.AreEqual <string>(expectedXml2, xml, "Incorrect sync xml generated: " + xml); }
public void Store() { // ARRANGE var handlerMock = new Mock <HttpMessageHandler>(MockBehavior.Strict); handlerMock .Protected() // Setup the PROTECTED method to mock .Setup <Task <HttpResponseMessage> >( "SendAsync", ItExpr.IsAny <HttpRequestMessage>(), ItExpr.IsAny <CancellationToken>() ) // prepare the expected response of the mocked http call .ReturnsAsync(new HttpResponseMessage() { StatusCode = HttpStatusCode.OK, Content = null, }) .Verifiable(); var httpClient = new HttpClient(handlerMock.Object) { BaseAddress = new Uri("http://test.com/"), }; var subjectUnderTest = new StoreController(httpClient, new Web.MyConfiguration() { ServiceUrl = "http://test.com/" }); var result = subjectUnderTest.Index(); var result2 = subjectUnderTest.Add(new Web.API_Models.EquipmentModel() { Difficulty = 2, EquipmentId = 1, Modifier = 1, Name = "a", PlayerEquipmentId = 1, Price = 1, Type = "Dunegon" }); var result3 = subjectUnderTest.StoreIndex(1); var result4 = subjectUnderTest.StoreIndex(new StoreModel() { Flavors = new List <FlavorModel>() { new FlavorModel() { Bonus = 1, Description = "a", FlavorId = 2, Name = "b" } }, Description = "b", Difficulty = 1, Name = "a", StoreId = 1, }, new LootModel() { Description = "a", DropRate = 1, Flavor = new FlavorModel() { Bonus = 1, Description = "a", FlavorId = 1, Name = "b" }, FlavorLootId = 1, LocationLootId = 1, LootId = 1, Name = "b", PlayerLootId = 1, Price = 1, Quantity = 1, }, new PlayerModel() { Gold = 1, Name = "p", PlayerId = 1, }); Assert.NotNull(result); Assert.NotNull(result2); }