@Test 
	public void testSeveralRulesWithRepeat() {
		base.addRules(rules,rules1,rules2,rules3,rules4,rules5,rules6);
		List<String> result1 = base.matchEventToRules("documentEvent");
		Assert.assertEquals(result1.size(),3);
		Assert.assertTrue(result1.contains("http://www.rules.org/action1") &&
				                            result1.contains("http://www.rules.org/action4") 
				                            && result1.contains("http://www.rules.org/action6"));
		Assert.assertFalse(result1.contains("http://www.rules.org/action2"));
		Assert.assertFalse(result1.contains("http://www.rules.org/action5"));
		Assert.assertFalse(result1.contains("http://www.rules.org/action7"));
		Assert.assertFalse(result1.contains("http://www.rules.org/action3"));
		
		List<String> result2 = base.matchEventToRules("documentEvent");
		Assert.assertEquals(result2.size(),3);
		Assert.assertTrue(result2.contains("http://www.rules.org/action1") &&
				                            result1.contains("http://www.rules.org/action4") 
				                            && result1.contains("http://www.rules.org/action6"));
		Assert.assertFalse(result2.contains("http://www.rules.org/action2"));
		Assert.assertFalse(result2.contains("http://www.rules.org/action5"));
		Assert.assertFalse(result2.contains("http://www.rules.org/action7"));
		Assert.assertFalse(result2.contains("http://www.rules.org/action3"));
		
		List<String> result3 = base.matchEventToRules("documentEvent");
		Assert.assertEquals(result3.size(),3);
		Assert.assertTrue(result3.contains("http://www.rules.org/action1") &&
				                            result1.contains("http://www.rules.org/action4") 
				                            && result1.contains("http://www.rules.org/action6"));
		Assert.assertFalse(result3.contains("http://www.rules.org/action2"));
		Assert.assertFalse(result3.contains("http://www.rules.org/action5"));
		Assert.assertFalse(result3.contains("http://www.rules.org/action7"));
		Assert.assertFalse(result3.contains("http://www.rules.org/action3"));
		
		List<String> result4 = base.matchEventToRules("join");
		Assert.assertEquals(result4.size(),4);
		Assert.assertTrue(result4.contains("http://www.rules.org/action1") &&
				                            result4.contains("http://www.rules.org/action5") && result4.contains("http://www.rules.org/action2")
				                            && result4.contains("http://www.rules.org/action6"));
		Assert.assertFalse(result4.contains("http://www.rules.org/action3"));
		Assert.assertFalse(result4.contains("http://www.rules.org/action4"));
		Assert.assertFalse(result4.contains("http://www.rules.org/action7"));
		
		List<String> result5 = base.matchEventToRules("event");
		Assert.assertEquals(result5.size(),2);
	}