public void VoteFoodTruck_Post_UserWithPriorDownvotePreference_UpVote_Validate_ChangeNewUpVote() { // Arrange List <Models.Preference.PreferenceData> testPreferences = new List <Preference.PreferenceData>() { new Preference.PreferenceData() { userid = "TestUser1", truckname = "TestTruck2", preference = 2 // Prior Downvote }, }; var user = new MockCurrentUser(); user.setUserId("TestUser1"); var controller = new HomeController( new MockPreferenceRepository(testPreferences), new MockTruckDataRepository(), user); // Act JsonResult result = controller.VoteFoodTruck("TestTruck2", "1"); // New Upvote // Assert dynamic jsonResult = result.Data; Assert.IsNotNull(jsonResult); Assert.AreEqual( true, jsonResult.success); Assert.AreEqual( 1, jsonResult.newIconColor); }
public void VoteFoodTruck_Post_UserNoPriorPreference_UpVote_Validate_NewUpvote() { // Arrange var user = new MockCurrentUser(); user.setUserId("TestUser1"); var controller = new HomeController( new MockPreferenceRepository(), new MockTruckDataRepository(), user); // Act JsonResult result = controller.VoteFoodTruck("TestTruck2", "1"); // New Upvote // Assert dynamic jsonResult = result.Data; //var pins = result.Data as List<Models.TruckPushpinInfo>; Assert.IsNotNull(jsonResult); Assert.AreEqual( true, jsonResult.success); Assert.AreEqual( 1, jsonResult.newIconColor); }
public void FilterNeighborhood_Get_AllNeighborhoods_UserWithPreference_2Event2Neighborhood_Validate_2Pins() { // Arrange List <Models.TruckEvent> testEvents = new List <TruckEvent>() { new TruckEvent() { Name = "TestTruck1", Url = "www.testtruck1.com", Day = "Friday", Time = "Lunch", Neighborhood = "NEU, on Opera Place at Huntington Ave", Coordinates = new Location("42.3398106,-71.0913604") }, new TruckEvent() { Name = "TestTruck2", Url = "www.testtruck2.com", Day = "Friday", Time = "Lunch", Neighborhood = "SoWa Open Market, 500 Harrison Avenue", Coordinates = new Location("42.3425311,-71.0674873") }, }; List <Models.Preference.PreferenceData> testPreferences = new List <Preference.PreferenceData>() { new Preference.PreferenceData() { userid = "TestUser1", truckname = "TestTruck2", preference = 1 // Upvote }, }; var user = new MockCurrentUser(); user.setUserId("TestUser1"); var controller = new HomeController( new MockPreferenceRepository(testPreferences), new MockTruckDataRepository(testEvents), user); // Act JsonResult result = controller.FilterTrucks(Constants.AllNeighborhoodsString, "", "Friday", "Lunch"); // Assert dynamic jsonResult = result.Data; var pins = jsonResult.PushpinFilteredData as List <Models.TruckPushpinInfo>; Assert.IsNotNull(pins); Assert.AreEqual(pins.Count, 2); Assert.AreEqual(pins[1].truckName, "TestTruck2"); Assert.AreEqual(pins[1].location, "SoWa Open Market, 500 Harrison Avenue"); Assert.AreEqual(pins[1].longitude, (Double)(-71.0674873)); Assert.AreEqual(pins[1].preference, 1); }
public void Index_Get_IndexView_UserWithPreferenceUpvote_1Event_Validate_1Pin() { // Arrange List <Models.TruckEvent> testEvents = new List <TruckEvent>() { new TruckEvent() { Name = "TestTruck1", Url = "www.testtruck1.com", Day = "Friday", Time = "Lunch", Neighborhood = "NEU, on Opera Place at Huntington Ave", Coordinates = new Location("42.3398106,-71.0913604") }, }; List <Models.Preference.PreferenceData> testPreferences = new List <Preference.PreferenceData>() { new Preference.PreferenceData() { userid = "TestUser1", truckname = "TestTruck1", preference = 1 // Upvote }, }; var user = new MockCurrentUser(); user.setUserId("TestUser1"); var controller = new HomeController( new MockPreferenceRepository(testPreferences), new MockTruckDataRepository(testEvents), user); // Act ViewResult result = controller.Index(setDay: "Friday", setMeal: "Lunch"); // Assert var pinsString = result.ViewData["CurrentTruckPins"] as string; JavaScriptSerializer serializer = new JavaScriptSerializer(); List <Models.TruckPushpinInfo> pins = serializer.Deserialize <List <Models.TruckPushpinInfo> >(pinsString); Assert.IsNotNull(pins); Assert.AreEqual(pins.Count, 1); Assert.AreEqual(pins[0].truckName, "TestTruck1"); Assert.AreEqual(pins[0].location, "NEU, on Opera Place at Huntington Ave"); Assert.AreEqual(pins[0].longitude, (Double)(-71.0913604)); Assert.AreEqual(pins[0].preference, 1); }
public void FilterNeighborhood_Get_SameTruckIn2LocationsOnSameDay_UserWithPreference_5Event2Neighborhood_Validate_2Pins() { // Arrange List <Models.TruckEvent> testEvents = new List <TruckEvent>() { new TruckEvent() { Name = "TestTruck1", Url = "www.testtruck1.com", Day = "Friday", Time = "Lunch", Neighborhood = "NEU, on Opera Place at Huntington Ave", Coordinates = new Location("42.3398106,-71.0913604") }, new TruckEvent() { Name = "TestTruck2", Url = "www.testtruck2.com", Day = "Friday", Time = "Lunch", Neighborhood = "SoWa Open Market, 500 Harrison Avenue", Coordinates = new Location("42.3425311,-71.0674873") }, new TruckEvent() { Name = "TestTruck3", Url = "www.testtruck3.com", Day = "Friday", Time = "Lunch", Neighborhood = "SoWa Open Market, 500 Harrison Avenue", Coordinates = new Location("42.3425311,-71.0674873") }, new TruckEvent() { Name = "TestTruck4", Url = "www.testtruck4.com", Day = "Friday", Time = "Dinner", Neighborhood = "SoWa Open Market, 500 Harrison Avenue", Coordinates = new Location("42.3425311,-71.0674873") }, new TruckEvent() { Name = "TestTruck3", Url = "www.testtruck3.com", Day = "Friday", Time = "Lunch", Neighborhood = "NEU, on Opera Place at Huntington Ave", Coordinates = new Location("42.3398106,-71.0913604") } }; List <Models.Preference.PreferenceData> testPreferences = new List <Preference.PreferenceData>() { new Preference.PreferenceData() { userid = "TestUser1", truckname = "TestTruck3", preference = 2 // Downvote }, }; var user = new MockCurrentUser(); user.setUserId("TestUser1"); var controller = new HomeController( new MockPreferenceRepository(testPreferences), new MockTruckDataRepository(testEvents), user); //Expected Dropdown lists var expectedNeighborhoodList = new List <String>(); expectedNeighborhoodList.Add(Constants.AllNeighborhoodsString); expectedNeighborhoodList.Add("NEU, on Opera Place at Huntington Ave"); expectedNeighborhoodList.Add("SoWa Open Market, 500 Harrison Avenue"); var expectedTruckNameList = new List <String>(); expectedTruckNameList.Add(Constants.AllTrucksString); expectedTruckNameList.Add("TestTruck3"); // Act JsonResult result = controller.FilterTrucks(Constants.AllNeighborhoodsString, "TestTruck3", "Friday", "Lunch"); // Assert dynamic jsonResult = result.Data; CollectionAssert.AreEqual(expectedNeighborhoodList, jsonResult.FilteredNeighborhoods); CollectionAssert.AreEqual(expectedTruckNameList, jsonResult.FilteredTrucks); var pins = jsonResult.PushpinFilteredData as List <Models.TruckPushpinInfo>; Assert.IsNotNull(pins); Assert.AreEqual(2, pins.Count); Assert.AreEqual("TestTruck3", pins[0].truckName); Assert.AreEqual("SoWa Open Market, 500 Harrison Avenue", pins[0].location); Assert.AreEqual((Double)(-71.0674873), pins[0].longitude); Assert.AreEqual(2, pins[0].preference); Assert.AreEqual("TestTruck3", pins[1].truckName); Assert.AreEqual("NEU, on Opera Place at Huntington Ave", pins[1].location); Assert.AreEqual((Double)(-71.0913604), pins[1].longitude); Assert.AreEqual(2, pins[1].preference); }