def test_modifiers_comment_with_template(self): parser = KSSDocParser(""" Style guide section title .emphasis - Adds brighter highlight. .subtle - Use for secondary actions. <p class="{{ modifier }}">The quick brown fox...</p> Styleguide 1.1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.title, 'Style guide section title') self.assertEquals(section.modifiers, [{'description': 'Adds brighter highlight.', 'modifier': '.emphasis', 'template': '<p class="emphasis">The quick brown fox...</p>\n'}, {'description': 'Use for secondary actions.', 'modifier': '.subtle', 'template': '<p class="subtle">The quick brown fox...</p>\n'}]) self.assertEquals(section.position, '1.1') self.assertEquals(section.template, '<p class="">The quick brown fox...</p>\n')
def test_modifiers_comment_with_template(self): parser = KSSDocParser(""" Style guide section title .emphasis - Adds brighter highlight. .subtle - Use for secondary actions. <p class="{{ modifier }}">The quick brown fox...</p> Styleguide 1.1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.title, 'Style guide section title') self.assertEquals( section.modifiers, [{ 'description': 'Adds brighter highlight.', 'modifier': '.emphasis', 'template': '<p class="emphasis">The quick brown fox...</p>\n' }, { 'description': 'Use for secondary actions.', 'modifier': '.subtle', 'template': '<p class="subtle">The quick brown fox...</p>\n' }]) self.assertEquals(section.position, '1.1') self.assertEquals(section.template, '<p class="">The quick brown fox...</p>\n')
def test_minimmum_comment(self): parser = KSSDocParser(""" Styleguide 1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.position, '1')
def test_title_comment(self): parser = KSSDocParser(""" Style guide section title Styleguide 1.1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.title, 'Style guide section title') self.assertEquals(section.position, '1.1')
def test_comment_with_template(self): parser = KSSDocParser(""" Style guide section title <p> The quick brown fox... </p> Styleguide 1.1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.title, 'Style guide section title') self.assertEquals(section.template, '<p>\n The quick brown fox...\n</p>\n') self.assertEquals(section.position, '1.1')
def test_descriptive_comment(self): parser = KSSDocParser(""" Style guide section title Description here. More description. Styleguide 1.1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.title, 'Style guide section title') self.assertEquals(section.desc, 'Description here.\n\nMore description.\n') self.assertEquals(section.position, '1.1')
def get_style_guide(self): # find all comment blocks comments_list = self.comment_collector.get_comments_list() # parse into StyleGuideSection sections = [] for raw_section in comments_list: parser = KSSDocParser(raw_section) if parser.is_valid_section(): sections.append(parser.parse_section()) # order by position sections = sorted(sections, key=lambda section: section.comparable_position()) # put together the StyleGuide instance guide = StyleGuide("Style Guide", sections) return guide
def test_modifiers_comment(self): parser = KSSDocParser(""" Style guide section title .emphasis - Adds brighter highlight. .subtle - Use for secondary actions. Styleguide 1.1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.title, 'Style guide section title') self.assertEquals(section.modifiers, [{'description': 'Adds brighter highlight.', 'modifier': '.emphasis', 'template': None}, {'description': 'Use for secondary actions.', 'modifier': '.subtle', 'template': None}]) self.assertEquals(section.position, '1.1')
def test_modifiers_comment(self): parser = KSSDocParser(""" Style guide section title .emphasis - Adds brighter highlight. .subtle - Use for secondary actions. Styleguide 1.1 """) self.assertTrue(parser.is_valid_section()) section = parser.parse_section() self.assertEquals(section.title, 'Style guide section title') self.assertEquals(section.modifiers, [{ 'description': 'Adds brighter highlight.', 'modifier': '.emphasis', 'template': None }, { 'description': 'Use for secondary actions.', 'modifier': '.subtle', 'template': None }]) self.assertEquals(section.position, '1.1')
def test_empty_comment(self): parser = KSSDocParser("") self.assertFalse(parser.is_valid_section())