예제 #1
0
 def test_two(self):
     data = model.DummyTableData([
         ['id', 'Id'],
         ['name', 'Given Name'],
     ], [
         ['1', 'John Smith'],
         ['2', 'Eve Adams'],
     ])
     self.assertEqual(
         data.to_jsonable(), {
             'active_columns': ['id', 'name'],
             'column_map': {
                 'id': 'Id',
                 'name': 'Given Name',
             },
             'data': [
                 {
                     'id': '1',
                     'name': 'John Smith'
                 },
                 {
                     'id': '2',
                     'name': 'Eve Adams'
                 },
             ],
             'css': {},
         })
예제 #2
0
    def test_basic_table_contents(self):
        data = model.DummyTableData([
            ['id', 'Id'],
            ['name', 'Given Name'],
        ], [
            ['1', 'John Smith'],
            ['2', 'Eve Adams'],
        ])

        result = engine.execute('nunja.molds/table', data=data.to_jsonable())

        self.assertEqual(
            result, '<div data-nunja="nunja.molds/table">\n'
            '<table class="">\n'
            '  <thead>\n'
            '    <tr class="">\n'
            '    <td>Id</td><td>Given Name</td>\n'
            '    </tr>\n'
            '  </thead>\n'
            '  <tbody>\n'
            '    <tr class="">\n'
            '      <td>1</td><td>John Smith</td>\n'
            '    </tr><tr class="">\n'
            '      <td>2</td><td>Eve Adams</td>\n'
            '    </tr>\n'
            '  </tbody>\n'
            '</table>\n'
            '</div>')
예제 #3
0
 def test_basic(self):
     data = model.DummyTableData([], [])
     self.assertEqual(data.to_jsonable(), {
         'active_columns': [],
         'column_map': {},
         'data': [],
         'css': {},
     })
예제 #4
0
 def test_jsonld_id(self):
     data = model.DummyTableData(
         [
             ['@id', ''],  # human readable can be empty
             ['name', 'Name'],
             ['desc', 'Description'],
             ['size', 'Size'],
         ],
         [
             [
                 'http://example.com/documents', 'documents',
                 'My Documents', '9'
             ],
             [
                 'http://example.com/pictures', 'pictures', 'My Pictures',
                 '43'
             ],
             ['http://example.com/videos', 'videos', 'My Videos', '0'],
         ])
     self.assertEqual(
         data.to_jsonable(), {
             'active_columns': ['name', 'desc', 'size'],
             'column_map': {
                 'name': 'Name',
                 'desc': 'Description',
                 'size': 'Size',
             },
             'data': [
                 {
                     'size': '9',
                     '@id': 'http://example.com/documents',
                     'name': 'documents',
                     'desc': 'My Documents'
                 },
                 {
                     'size': '43',
                     '@id': 'http://example.com/pictures',
                     'name': 'pictures',
                     'desc': 'My Pictures'
                 },
                 {
                     'size': '0',
                     '@id': 'http://example.com/videos',
                     'name': 'videos',
                     'desc': 'My Videos'
                 },
             ],
             'css': {},
         })
예제 #5
0
 def test_one(self):
     data = model.DummyTableData([['ID', 'Identifier']], [
         ['1'],
         ['2'],
     ])
     self.assertEqual(
         data.to_jsonable(), {
             'active_columns': ['ID'],
             'column_map': {
                 'ID': 'Identifier',
             },
             'data': [
                 {
                     'ID': '1'
                 },
                 {
                     'ID': '2'
                 },
             ],
             'css': {},
         })
예제 #6
0
    def test_basic_navtable_contents(self):
        data = model.DummyTableData([
            ['@id', ''],
            ['name', 'Name'],
            ['desc', 'Description'],
            ['size', 'Size'],
        ], [
            ['http://example.com/documents', 'documents', 'My Documents', '9'],
            ['http://example.com/pictures', 'pictures', 'My Pictures', '43'],
            ['http://example.com/videos', 'videos', 'My Videos', '0'],
            ['', 'file', 'A File', '100'],
        ])

        result = self.engine.execute('nunja.molds/navtable',
                                     data=data.to_jsonable())

        self.assertEqual(
            result, '<div data-nunja="nunja.molds/navtable">\n'
            '<table class="">\n'
            '  <thead>\n'
            '    <tr class="">\n'
            '    <td>Name</td><td>Description</td><td>Size</td>\n'
            '    </tr>\n'
            '  </thead>\n'
            '  <tbody>\n'
            '    <tr class="">\n'
            '      <td><a href="http://example.com/documents">documents</a>'
            '</td><td>My Documents</td><td>9</td>\n'
            '    </tr><tr class="">\n'
            '      <td><a href="http://example.com/pictures">pictures</a>'
            '</td><td>My Pictures</td><td>43</td>\n'
            '    </tr><tr class="">\n'
            '      <td><a href="http://example.com/videos">videos</a>'
            '</td><td>My Videos</td><td>0</td>\n'
            '    </tr><tr class="">\n'
            '      <td>file</td><td>A File</td><td>100</td>\n'
            '    </tr>\n'
            '  </tbody>\n'
            '</table>\n'
            '</div>')