def _getRules(self, settings, fromcache=True):
     if fromcache:
         key = "%s:%s" % getHost(self.request)
         if key in _rule_cache:
             rules = _rule_cache[key]
         else:
             rules = convertRules(settings.rules)
             _rule_cache[key] = rules
         return rules
     else:
         return convertRules(settings.rules)
Example #2
0
    def test_group_rule(self):
        rules = convertRules("""<xml>
<group if-content="#foo">
        <drop src="#bar" />
    </group></xml>""")
        self.assertEquals(len(rules), 1)
        self.assertEquals(type(rules[0]), Group)
Example #3
0
    def test_replace_rule(self):
        rules = convertRules("""<xml>
<replace src="#foo" dst="#bar" /></xml>""")
        self.assertEquals(len(rules), 1)
        self.assertEquals(type(rules[0]), Replace)
        self.assertEquals(rules[0].src.selector, '#foo')
        self.assertEquals(rules[0].dst.selector, '#bar')
Example #4
0
    def test_after_rule(self):
        rules = convertRules("""<xml>
<after src="#foo" dst="#bar" /></xml>""")
        self.assertEquals(len(rules), 1)
        self.assertEquals(type(rules[0]), After)
        self.assertEquals(rules[0].src.selector, '#foo')
        self.assertEquals(rules[0].dst.selector, '#bar')
Example #5
0
    def test_html_selectors(self):
        rules = convertRules("""<xml>
<after src-html="" dst="#bar">
<h1>Hi!</h1>
</after></xml>""")
        self.assertEquals(len(rules), 1)
        self.assertEquals(type(rules[0]), After)
        self.assertEquals(type(rules[0].src), NodeHTML)
Example #6
0
    def test_class_rule(self):
        rules = convertRules("""<xml>
<class src="#foo" add="one two" remove="three four" /></xml>""")
        self.assertEquals(len(rules), 1)
        self.assertEquals(type(rules[0]), Class)
        self.assertEquals(rules[0].src.selector, '#foo')
        self.assertEquals(rules[0].add, ['one', 'two'])
        self.assertEquals(rules[0].remove, ['three', 'four'])
Example #7
0
    def test_tag_rule(self):
        rules = convertRules("""<xml>
<tag src="#foo" tag="p" /></xml>""")
        self.assertEquals(len(rules), 1)
        self.assertEquals(type(rules[0]), Tag)
Example #8
0
    def test_drop_rule(self):
        rules = convertRules("""<xml>
<drop src="#foo" /></xml>""")
        self.assertEquals(len(rules), 1)
        self.assertEquals(type(rules[0]), Drop)
        self.assertEquals(rules[0].src.selector, '#foo')