@Test public void testUriBlacklistExactMatch() throws Exception { RecordedHttpRequest recordedHttpRequest1 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a"), null, null); RecordedHttpRequest recordedHttpRequest2 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a"), null, null); MatchRule matchRule = MatchRuleUtils.matchUriWithQueryBlacklist(new HashSet<>()); Assert.assertTrue(matchRule.test(recordedHttpRequest1, recordedHttpRequest2)); }
@Test public void testUriBlacklistMatchWithNullParameter() throws Exception { RecordedHttpRequest recordedHttpRequest1 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a&b=b&c=c&e="), null, null); RecordedHttpRequest recordedHttpRequest2 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a&b=z&c=c&e="), null, null); HashSet<String> blacklist = new HashSet<>(); blacklist.add("b"); blacklist.add("c"); blacklist.add("d"); MatchRule matchRule = MatchRuleUtils.matchUriWithQueryBlacklist(blacklist); Assert.assertTrue(matchRule.test(recordedHttpRequest1, recordedHttpRequest2)); }
@Test public void testUriBlacklistMatch() throws Exception { RecordedHttpRequest recordedHttpRequest1 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a&b=b&c=c"), null, null); RecordedHttpRequest recordedHttpRequest2 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a&b=z&c=c"), null, null); HashSet<String> blacklist = new HashSet<>(); blacklist.add("b"); blacklist.add("c"); blacklist.add("d"); MatchRule matchRule = MatchRuleUtils.matchUriWithQueryBlacklist(blacklist); Assert.assertTrue(matchRule.test(recordedHttpRequest1, recordedHttpRequest2)); }
@Test public void testUriBlacklistNotMatchDifferentOrder() throws Exception { RecordedHttpRequest recordedHttpRequest1 = new RecordedHttpRequest(null, new URI("http://www.google.com/?b=b&c=c&a=a"), null, null); RecordedHttpRequest recordedHttpRequest2 = new RecordedHttpRequest(null, new URI("http://www.google.com/?b=z&a=a&c=c"), null, null); HashSet<String> blacklist = new HashSet<>(); blacklist.add("b"); MatchRule matchRule = MatchRuleUtils.matchUriWithQueryBlacklist(blacklist); Assert.assertFalse(matchRule.test(recordedHttpRequest1, recordedHttpRequest2)); Assert.assertTrue(matchRule.getMatchFailureDescriptionForRequests(recordedHttpRequest1, recordedHttpRequest2).contains("URI Mismatch (with Query Blacklist)")); }
@Test public void testUriBlacklistNotMatch() throws Exception { RecordedHttpRequest recordedHttpRequest1 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a&b=b&c=c"), null, null); RecordedHttpRequest recordedHttpRequest2 = new RecordedHttpRequest(null, new URI("http://www.google.com/?a=a&b=z&c=c"), null, null); HashSet<String> blacklist = new HashSet<>(); blacklist.add("c"); MatchRule matchRule = MatchRuleUtils.matchUriWithQueryBlacklist(blacklist); Assert.assertFalse(matchRule.test(recordedHttpRequest1, recordedHttpRequest2)); Assert.assertTrue(matchRule.getMatchFailureDescriptionForRequests(recordedHttpRequest1, recordedHttpRequest2).contains("URI Mismatch (with Query Blacklist)")); }