コード例 #1
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_unnested_combine_ancestor_selector(self):
     src = u'a &'
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     with self.assertRaises(errors.CSSSyntaxError) as cm:
         parser.selector()
     self.assertEqual("The '&' selector is only allowed within nested ruleset scopes.", 
                      cm.exception.msg)
コード例 #2
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_class_selector(self):
     src = u'.myclass'
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     sel = parser.selector()
     expected = \
         Selector(
             children=[
                 SimpleSelectorSequence(
                     head=None,
                     tail=[ClassSelector(name=u'myclass')]
                 ),
             ]
         )
     self.assertEqual(dump(expected), dump(sel))
コード例 #3
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_type_selector(self):
     src = u'div'
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     sel = parser.selector()
     expected = \
         Selector(
             children=[
                 SimpleSelectorSequence(
                     head=TypeSelector(name=u'div'),
                     tail=[]
                 ),
             ]
         )
     self.assertEqual(dump(expected), dump(sel))
コード例 #4
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_negation_selector(self):
     src = u'a:not( #myid )'
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     sel = parser.selector()
     expected = \
         Selector(
             children=[
                 SimpleSelectorSequence(
                     head=TypeSelector(name=u'a'),
                     tail=[
                         NegationSelector(
                             arg=IdSelector(name=u'myid')
                         ),
                     ]
                 )
             ]
         )
     self.assertEqual(dump(expected), dump(sel))
コード例 #5
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_pseudo_element_selector2(self):
     src = u'a::foo'
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     sel = parser.selector()
     expected = \
         Selector(
             children=[
                 SimpleSelectorSequence(
                     head=TypeSelector(name=u'a'),
                     tail=[
                         PseudoElementSelector(
                             node=Ident(name=u'foo')
                         ),
                     ]
                 )
             ]
         )
     self.assertEqual(dump(expected), dump(sel))
コード例 #6
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_child_combinator(self):
     src = u'a > b'
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     sel = parser.selector()
     expected = \
         Selector(
             children=[
                 SimpleSelectorSequence(
                     head=TypeSelector(name=u'a'),
                     tail=[]
                 ),
                 ChildCombinator(),
                 SimpleSelectorSequence(
                     head=TypeSelector(name=u'b'),
                     tail=[]
                 ),
             ]
         )
     self.assertEqual(dump(expected), dump(sel))
コード例 #7
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_whitespace_combinator2(self):
     src = u'a.myclass b#myid'
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     sel = parser.selector()
     expected = \
         Selector(
             children=[
                 SimpleSelectorSequence(
                     head=TypeSelector(name=u'a'),
                     tail=[ClassSelector(name=u'myclass')]
                 ),
                 DescendantCombinator(),
                 SimpleSelectorSequence(
                     head=TypeSelector(name=u'b'),
                     tail=[IdSelector(name=u'myid')]
                 ),
             ]
         )
     self.assertEqual(dump(expected), dump(sel))
コード例 #8
0
ファイル: test_parsers.py プロジェクト: colossalbit/cssypy
 def test_bad_class_selector(self):
     src = u'."this is a string"   '
     parser = Parser(src)
     self.assertTrue(parser.match(tokens.START))
     with self.assertRaises(errors.CSSSyntaxError):
         parser.selector()