public void RegionPersonalisationGroupCriteria_MatchesVisitor_WithEmptyDefinition_ThrowsException() { // Arrange var mockIpProvider = MockIpProvider(); var mockCountryGeoLocationProvider = MockCountryGeoLocationProvider(); var criteria = new RegionPersonalisationGroupCriteria(mockIpProvider.Object, mockCountryGeoLocationProvider.Object); // Act criteria.MatchesVisitor((string)null); }
public void RegionPersonalisationGroupCriteria_MatchesVisitor_WithEmptyDefinition_ThrowsException() { // Arrange var mockIpProvider = MockIpProvider(); var mockCountryGeoLocationProvider = MockGeoLocationProvider(); var criteria = new RegionPersonalisationGroupCriteria(mockIpProvider.Object, mockCountryGeoLocationProvider.Object); // Act Assert.Throws <ArgumentNullException>(() => criteria.MatchesVisitor(null)); }
public void RegionPersonalisationGroupCriteria_MatchesVisitor_WithInvalidDefinition_ThrowsException() { // Arrange var mockIpProvider = MockIpProvider(); var mockCountryGeoLocationProvider = MockCountryGeoLocationProvider(); var criteria = new RegionPersonalisationGroupCriteria(mockIpProvider.Object, mockCountryGeoLocationProvider.Object); var definition = "invalid"; // Act criteria.MatchesVisitor(definition); }
public void RegionPersonalisationGroupCriteria_MatchesVisitor_WithValidDefinitionWithMatchingRegionListFromSubdivision_ReturnsTrue() { // Arrange var mockIpProvider = MockIpProvider(); var mockCountryGeoLocationProvider = MockCountryGeoLocationProvider(); var criteria = new RegionPersonalisationGroupCriteria(mockIpProvider.Object, mockCountryGeoLocationProvider.Object); var definition = string.Format(DefinitionFormat, "IsLocatedIn", "GB", "South-west", "Cumbria"); // Act var result = criteria.MatchesVisitor(definition); // Assert Assert.IsTrue(result); }
public void RegionPersonalisationGroupCriteria_MatchesVisitor_WithValidDefinitionWithDifferentRegionList_ReturnsFalse() { // Arrange var mockIpProvider = MockIpProvider(); var mockCountryGeoLocationProvider = MockCountryGeoLocationProvider(); var criteria = new RegionPersonalisationGroupCriteria(mockIpProvider.Object, mockCountryGeoLocationProvider.Object); var definition = string.Format(DefinitionFormat, "IsLocatedIn", "GB", "Devon", "Somerset"); // Act var result = criteria.MatchesVisitor(definition); // Assert Assert.IsFalse(result); }
public void RegionPersonalisationGroupCriteria_MatchesVisitor_WithValidDefinitionWithEmptyRegionLists_ReturnsFalse() { // Arrange var mockIpProvider = MockIpProvider(); var mockCountryGeoLocationProvider = MockCountryGeoLocationProvider(); var criteria = new RegionPersonalisationGroupCriteria(mockIpProvider.Object, mockCountryGeoLocationProvider.Object); var definition = "{ \"match\": \"IsLocatedIn\", \"countryCode\": \"GB\", \"names\": [] }"; // Act var result = criteria.MatchesVisitor(definition); // Assert Assert.IsFalse(result); }
public void RegionPersonalisationGroupCriteria_MatchesVisitor_WithValidDefinitionForCouldNotBeLocatedWhenCanLocate_ReturnsFalse() { // Arrange var mockIpProvider = MockIpProvider(); var mockCountryGeoLocationProvider = MockGeoLocationProvider(); var criteria = new RegionPersonalisationGroupCriteria(mockIpProvider.Object, mockCountryGeoLocationProvider.Object); var definition = "{ \"match\": \"CouldNotBeLocated\", \"codes\": [] }"; // Act var result = criteria.MatchesVisitor(definition); // Assert Assert.IsFalse(result); }