Exemple #1
0
 def test_no_duplicates_in_js(self):
     js = ([JSSource(src="source%d"%i) for i in xrange(5)] +
           [JSSource(src="source%d"%i) for i in xrange(2,10)])
     w = Widget(javascript=js)
     self.failUnlessEqual(
         [j.src for j in w.retrieve_resources()['head']],
         ["source%d"%i for i in xrange(10)]
         )
     self.failUnlessEqual(len(w.retrieve_resources()['head']), 10)
Exemple #2
0
 def test_order_is_preserved_in_css(self):
     css = [CSSSource(src="source%d"%i) for i in xrange(5)]
     w = Widget(css=css)
     self.failUnlessEqual(
         [c.src for c in w.retrieve_resources()['head']],
         ["source%d"%i for i in xrange(5)]
         )
Exemple #3
0
 def test_order_is_preserved_in_js(self):
     js = [JSSource(src="source%d"%i) for i in xrange(5)]
     w = Widget(javascript=js)
     self.failUnlessEqual(
         [j.src for j in w.retrieve_resources()['head']],
         ["source%d"%i for i in xrange(5)]
         )
Exemple #4
0
 def test_resources_are_collected_from_children(self):
     c = count()
     children = [
         Widget(css=[CSSSource(src='source%d'% c.next()) for i in xrange(5)])
             for i in xrange(5)
         ]
     p = Widget(children=children)
     self.assertEqual(len(p.retrieve_resources()[locations.head]), 25)
Exemple #5
0
 def test_order_is_preserved_in_css_and_css_is_in_head(self):
     css = [CSSSource(src="source%d"%i) for i in xrange(5)]
     w = Widget(css=css)
     resources = w.retrieve_resources()
     self.failUnlessEqual(
         [c.src for c in resources[locations.head]],
         ["source%d"%i for i in xrange(5)]
         )
Exemple #6
0
 def test_no_duplicates_in_css(self):
     css = ([CSSSource(src="source%d"%i) for i in xrange(5)] +
            [CSSSource(src="source%d"%i) for i in xrange(2,10)])
     w = Widget(css=css)
     self.failUnlessEqual(
         [c.src for c in w.retrieve_resources()['head']],
         ["source%d"%i for i in xrange(10)]
         )
Exemple #7
0
 def test_resources_are_classified_correctly(self):
     js = [JSSource(src="js%d-%s"%(i,l), location=l) 
         for l in locations for i in xrange(5)]
     w = Widget(javascript=js)
     resources = w.retrieve_resources()
     for l in locations:
         self.failUnlessEqual(
             [r.src for r in resources[l]], 
             ["js%d-%s"%(i,l) for i in xrange(5)]
             )
Exemple #8
0
 def test_resource_dependencies_are_collected(self):
     c1 = CSSSource(src="c1")
     c2 = CSSSource(src="c2")
     j1 = JSSource(src="d1")
     j2 = JSSource(src="d2")
     js = JSSource(src="js", css=[c1,c2], javascript=[j1,j2])
     css = CSSSource(src="css", css=[c1,c2], javascript=[j1,j2])
     w = Widget(javascript=[js], css=[css])
     head_resources = w.retrieve_resources()['head']
     js = filter(lambda s: isinstance(s, JSMixin), head_resources)
     css = filter(lambda s: isinstance(s, CSSMixin), head_resources)
     self.failUnlessEqual(len(css), 3)
     self.failUnlessEqual(len(js), 3)