コード例 #1
0
 def test_render_document_list_no_valid_fields(self):
     # if there are no fields to print, don't print anything. This comes from
     # a bug (BZ 847091) where blank lines were printed for each document,
     # even if no fields from that document were printed.
     r = Recorder()
     p = core.PulpPrompt(output=r, record_tags=True)
     docs = [
         {
             'id': 'd1',
             'name': 'document 1',
             'description': 'description 1'
         },
         {
             'id': 'd2',
             'name': 'document 2',
             'description': 'description 2'
         },
         {
             'id': 'd3',
             'name': 'document 3',
             'description': 'description 3'
         },
     ]
     f = ['notavalidfield']
     p.render_document_list(docs, order=['name'], filters=f)
     # only print the ANSI reset and new line character, but not any documents
     self.assertEqual(len(r.lines), 2)
コード例 #2
0
    def test_render_document_list_with_filter(self):
        # Test
        r = Recorder()
        p = core.PulpPrompt(output=r, record_tags=True)
        docs = [
            {
                'id': 'd1',
                'name': 'document 1'
            },
            {
                'id': 'd2',
                'name': 'document 2'
            },
            {
                'id': 'd3',
                'name': 'document 3'
            },
        ]
        p.render_document_list(docs, filters=['name'])

        # Verify
        self.assertEqual(len(docs), len(p.get_write_tags()))
        self.assertEqual(
            0,
            len([t for t in p.get_write_tags() if t is not core.TAG_DOCUMENT]))

        self.assertTrue('Name' in r.lines[1])
        self.assertEqual('\n', r.lines[2])
        self.assertTrue(
            'Name'
            in r.lines[3])  # shouldn't be "Id" since that was filtered out
コード例 #3
0
    def test_render_document_list_with_full_order(self):
        # Test
        r = Recorder()
        p = core.PulpPrompt(output=r, record_tags=True)
        docs = [
            {
                'id': 'd1',
                'name': 'document 1'
            },
            {
                'id': 'd2',
                'name': 'document 2'
            },
            {
                'id': 'd3',
                'name': 'document 3'
            },
        ]
        p.render_document_list(docs, order=['name', 'id'])

        # Verify
        self.assertEqual(len(docs) * len(docs[0]), len(p.get_write_tags()))
        self.assertEqual(
            0,
            len([t for t in p.get_write_tags() if t is not core.TAG_DOCUMENT]))

        self.assertTrue('Name' in r.lines[1])
        self.assertTrue('Id' in r.lines[2])
        self.assertEqual('\n', r.lines[3])
コード例 #4
0
    def test_render_failure_message(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        p.render_failure_message('Failure', reason='Stuff broke')

        # Verify
        self.assertEqual(1, len(p.get_write_tags()))
        self.assertEqual(core.TAG_FAILURE, p.get_write_tags()[0])
コード例 #5
0
    def test_render_success_message(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        p.render_success_message('Success')

        # Verify
        self.assertEqual(1, len(p.get_write_tags()))
        self.assertEqual(core.TAG_SUCCESS, p.get_write_tags()[0])
コード例 #6
0
    def test_render_paragraph(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        p.render_paragraph('Paragraph')

        # Verify
        self.assertEqual(1, len(p.get_write_tags()))
        self.assertEqual(core.TAG_PARAGRAPH, p.get_write_tags()[0])
コード例 #7
0
    def test_render_section(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        p.render_section('Section')

        # Verify
        self.assertEqual(1, len(p.get_write_tags()))
        self.assertEqual(core.TAG_SECTION, p.get_write_tags()[0])
コード例 #8
0
    def test_render_document_list_no_items(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        docs = []
        p.render_document_list(docs)

        # Verify
        self.assertEqual(0, len(p.get_write_tags()))
コード例 #9
0
    def test_render_title(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        p.render_title('Title')

        # Verify
        self.assertEqual(1, len(p.get_write_tags()))
        self.assertEqual(core.TAG_TITLE, p.get_write_tags()[0])
コード例 #10
0
    def test_render_document(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        doc = {'id': 'd1', 'name': 'document 1'}
        p.render_document(doc)

        # Verify
        self.assertEqual(len(doc), len(p.get_write_tags()))
        self.assertEqual(core.TAG_DOCUMENT, p.get_write_tags()[0])
コード例 #11
0
    def test_render_spacer(self):
        # Test
        r = Recorder()
        p = core.PulpPrompt(output=r, enable_color=False)
        p.render_spacer(lines=4)

        # Verify
        self.assertEqual(4, len(r.lines))
        self.assertEqual(0, len([l for l in r.lines if l != '\n']))
コード例 #12
0
    def test_create_spinner(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        s = p.create_spinner()
        for i in range(0, 10):
            s.next()

        # Verify
        self.assertEqual(10, len(p.get_write_tags()))
        self.assertEqual(0, len([t for t in p.get_write_tags() if t is not core.TAG_SPINNER]))
コード例 #13
0
    def test_create_progress_bar(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        pb = p.create_progress_bar()
        for i in range(0, 10):
            pb.render(i, 10)

        # Verify
        self.assertEqual(10, len(p.get_write_tags()))
        self.assertEqual(0, len([t for t in p.get_write_tags() if t is not core.TAG_PROGRESS_BAR]))
コード例 #14
0
    def test_render_document_list(self):
        # Test
        p = core.PulpPrompt(record_tags=True)
        docs = [
            {'id' : 'd1', 'name' : 'document 1'},
            {'id' : 'd2', 'name' : 'document 2'},
            {'id' : 'd3', 'name' : 'document 3'},
        ]
        p.render_document_list(docs)

        # Verify
        self.assertEqual(len(docs) * len(docs[0]), len(p.get_write_tags()))
        self.assertEqual(0, len([t for t in p.get_write_tags() if t is not core.TAG_DOCUMENT]))
コード例 #15
0
    def test_render_document_list_omit_hidden_false(self):
        # Test
        r = Recorder()
        p = core.PulpPrompt(output=r, record_tags=True)
        docs = [{'_id': 'd1', 'name': 'document 1'}]
        p.render_document_list(docs, omit_hidden=False)

        # Verify
        self.assertEqual(2, len(p.get_write_tags()))
        self.assertEqual(
            0,
            len([t for t in p.get_write_tags() if t is not core.TAG_DOCUMENT]))

        self.assertTrue('_id' in r.lines[1])
コード例 #16
0
    def test_render_document_list_order_and_filter(self):
        # Test
        r = Recorder()
        p = core.PulpPrompt(output=r, record_tags=True)
        docs = [
                {'id' : 'd1', 'name' : 'document 1', 'description' : 'description 1'},
        ]
        f = ['id', 'name']
        p.render_document_list(docs, order=['name'], filters=f)

        # Verify
        self.assertEqual(len(docs)* len(f), len(p.get_write_tags()))
        self.assertEqual(0, len([t for t in p.get_write_tags() if t is not core.TAG_DOCUMENT]))

        self.assertTrue('Name' in r.lines[1])
        self.assertTrue('Id' in r.lines[2])
        self.assertEqual('\n', r.lines[3])