예제 #1
0
 def test_comparison(self):
     t1 = Template('abc', "A Thing")
     t2 = Template('def')
     t3 = Template('def', "Do This")
     assert t1 != t2
     assert t2 == t3
     assert t1 < t3
예제 #2
0
    def it_supports_comparison():
        t1 = Template('abc', "A Thing")
        t2 = Template('def')
        t3 = Template('def', "Do This")

        assert t1 != t2
        assert t2 == t3
        assert t1 < t3
예제 #3
0
    def test_validate_with_good_templates(self, template_service):
        templates = [
            Template(key='abc', name="The ABC Meme"),
            Template(key='def', name="The DEF Meme", aliases=['def2'])
        ]
        template_service.template_store.filter.return_value = templates

        assert True is template_service.validate()
예제 #4
0
    def test_validate_with_duplicate_aliases(self, template_service):
        templates = [
            Template(key='abc',
                     name="The ABC Meme",
                     aliases=['123', 'the-meme']),
            Template(key='def', name="The DEF Meme", aliases=['the-meme'])
        ]
        template_service.template_store.filter.return_value = templates

        assert False is template_service.validate()
예제 #5
0
    def test_validate_size(self, mock_open, dimensions, valid):
        mock_img = Mock()
        mock_img.size = dimensions
        mock_open.return_value = mock_img

        template = Template(key='abc',
                            name="The ABC Meme",
                            link="example.com")

        assert valid is template.validate_size()
예제 #6
0
    def test_validate_with_good_templates(self, template_service):
        templates = [Template(key='abc',
                              name="The ABC Meme"),
                     Template(key='def',
                              name="The DEF Meme",
                              aliases=['def2'])]
        template_service.template_store.filter.return_value = templates

        with patch('os.path.isfile', Mock(return_value=True)):
            assert True is template_service.validate()
    def test_aliases(self, template_service):
        template = Template('a', aliases=['b', 'c'])
        template_service.template_store.filter.return_value = [template]

        aliases = template_service.aliases()

        assert ['a', 'b', 'c'] == sorted(aliases)
    def test_aliases_with_filter(self, template_service):
        template = Template('a1', aliases=['a2', 'b1'])
        template_service.template_store.filter.return_value = [template]

        aliases = template_service.aliases('a')

        assert ['a1', 'a2'] == sorted(aliases)
예제 #9
0
    def test_find_template_by_alias(self, template_service):
        template = Template('hello', aliases=['hello-world', 'helloworld'])
        template_service.template_store.read.return_value = None
        template_service.template_store.filter.return_value = [template]

        template = template_service.find('HELLO_WORLD')

        assert 'hello' == template.key
예제 #10
0
    def test_validate_with_misformatted_aliases(self, template_service):
        templates = [Template(key='abc',
                              name="The ABC Meme",
                              aliases=['abc-meme', 'Bad Format'])]
        template_service.template_store.filter.return_value = templates

        with patch('os.path.isfile', Mock(return_value=True)):
            assert False is template_service.validate()
예제 #11
0
def template():
    return Template('abc', name='ABC', lines=['foo', 'bar'])
예제 #12
0
 def test_path(self):
     template = Template('abc', root="my_root")
     with patch('os.path.isfile', Mock(return_value=True)):
         path = template.path
     assert "my_root/abc/default.png" == path
예제 #13
0
    def test_validate_link(self):
        template = Template(key='abc',
                            name="The ABC Meme",
                            link="example.com")

        assert True is template.validate_link()
예제 #14
0
 def test_validate_meta_with_nonalphanumberic_name(self):
     template = Template('abc', name="'ABC' Meme")
     assert False is template.validate_meta()
예제 #15
0
 def test_validate_meta_with_no_default_image(self):
     template = Template('abc', name="ABC")
     assert False is template.validate_meta()
예제 #16
0
 def test_validate_meta_with_no_name(self):
     template = Template('abc')
     assert False is template.validate_meta()
예제 #17
0
 def test_path_is_none_with_no_file(self):
     template = Template('abc', root="my_root")
     with patch('os.path.isfile', Mock(return_value=False)):
         path = template.path
     assert path is None
예제 #18
0
 def test_default(self):
     template = Template('abc', lines=['foo', 'bar'])
     assert "foo/bar" == template.default
예제 #19
0
 def test_validate_with_no_default_image(self):
     template = Template('abc', name="ABC")
     assert False is template.validate()
예제 #20
0
 def test_validate_with_no_name(self):
     template = Template('abc')
     assert False is template.validate()
예제 #21
0
 def test_default_with_no_lines(self):
     template = Template('abc', lines=[])
     assert "" == template.default