Exemplo n.º 1
0
 def testgetTableItemList(self):
     """Test if getTableItemList() returns the right tables list"""
     data = open('./data/granulate_table_test.odt').read()
     oogranulator = OOGranulator(data, 'odt')
     table_list = [('Developers', ''),
                   ('Prices', 'Table 1: Prices table from Mon Restaurant'),
                   ('SoccerTeams', 'Tabela 2: Soccer Teams')]
     self.assertEquals(table_list, oogranulator.getTableItemList())
Exemplo n.º 2
0
 def testgetTableItemList(self):
   """Test if getTableItemList() returns the right tables list"""
   data = open('./data/granulate_table_test.odt').read()
   oogranulator = OOGranulator(data, 'odt')
   table_list = [('Developers', ''),
                 ('Prices', 'Table 1: Prices table from Mon Restaurant'),
                 ('SoccerTeams', 'Tabela 2: Soccer Teams')]
   self.assertEquals(table_list, oogranulator.getTableItemList())
Exemplo n.º 3
0
 def testGetChapterItemList(self):
   """Test if getChapterItemList() returns the right chapters list"""
   data = open('./data/granulate_chapters_test.odt').read()
   oogranulator = OOGranulator(data, 'odt')
   self.assertEquals([(0, 'Title 0'), (1, 'Title 1'), (2, 'Title 2'),
                      (3, 'Title 3'), (4, 'Title 4'), (5, 'Title 5'),
                      (6, 'Title 6'), (7, 'Title 7'), (8, 'Title 8'),
                      (9, 'Title 9'), (10, 'Title 10')],
                                         oogranulator.getChapterItemList())
Exemplo n.º 4
0
 def testGetChapterItemList(self):
     """Test if getChapterItemList() returns the right chapters list"""
     data = open('./data/granulate_chapters_test.odt').read()
     oogranulator = OOGranulator(data, 'odt')
     self.assertEquals([(0, 'Title 0'), (1, 'Title 1'), (2, 'Title 2'),
                        (3, 'Title 3'), (4, 'Title 4'), (5, 'Title 5'),
                        (6, 'Title 6'), (7, 'Title 7'), (8, 'Title 8'),
                        (9, 'Title 9'), (10, 'Title 10')],
                       oogranulator.getChapterItemList())
Exemplo n.º 5
0
 def testGetParagraphItemList(self):
   """Test if getParagraphItemList() returns the right paragraphs list, with
   the ids always in the same order"""
   for i in range(5):
     data = open('./data/granulate_test.odt').read()
     oogranulator = OOGranulator(data, 'odt')
     paragraph_list = oogranulator.getParagraphItemList()
     self.assertEquals((0, 'P3'), paragraph_list[0])
     self.assertEquals((1, 'P1'), paragraph_list[1])
     self.assertEquals((2, 'P12'), paragraph_list[2])
     self.assertEquals((8, 'P13'), paragraph_list[8])
     self.assertEquals((19, 'Standard'), paragraph_list[19])
Exemplo n.º 6
0
 def testGetParagraphItemList(self):
     """Test if getParagraphItemList() returns the right paragraphs list, with
 the ids always in the same order"""
     for i in range(5):
         data = open('./data/granulate_test.odt').read()
         oogranulator = OOGranulator(data, 'odt')
         paragraph_list = oogranulator.getParagraphItemList()
         self.assertEquals((0, 'P3'), paragraph_list[0])
         self.assertEquals((1, 'P1'), paragraph_list[1])
         self.assertEquals((2, 'P12'), paragraph_list[2])
         self.assertEquals((8, 'P13'), paragraph_list[8])
         self.assertEquals((19, 'Standard'), paragraph_list[19])
Exemplo n.º 7
0
 def testGetTable(self):
     """Test if getTable() returns on odf file with the right table"""
     data = open('./data/granulate_table_test.odt').read()
     oogranulator = OOGranulator(data, 'odt')
     table_data_doc = oogranulator.getTable('Developers')
     content_xml_str = ZipFile(StringIO(table_data_doc)).read('content.xml')
     content_xml = etree.fromstring(content_xml_str)
     table_list = content_xml.xpath('//table:table',
                                    namespaces=content_xml.nsmap)
     self.assertEquals(1, len(table_list))
     table = table_list[0]
     name_key = '{urn:oasis:names:tc:opendocument:xmlns:table:1.0}name'
     self.assertEquals('Developers', table.attrib[name_key])
Exemplo n.º 8
0
 def testGetTable(self):
   """Test if getTable() returns on odf file with the right table"""
   data = open('./data/granulate_table_test.odt').read()
   oogranulator = OOGranulator(data, 'odt')
   table_data_doc = oogranulator.getTable('Developers')
   content_xml_str = ZipFile(StringIO(table_data_doc)).read('content.xml')
   content_xml = etree.fromstring(content_xml_str)
   table_list = content_xml.xpath('//table:table',
                                  namespaces=content_xml.nsmap)
   self.assertEquals(1, len(table_list))
   table = table_list[0]
   name_key = '{urn:oasis:names:tc:opendocument:xmlns:table:1.0}name'
   self.assertEquals('Developers', table.attrib[name_key])
Exemplo n.º 9
0
    def testGetLineItemList(self):
        """Test if getLineItemList() returns the right table lines list"""
        data = open('./data/granulate_table_test.odt').read()
        oogranulator = OOGranulator(data, 'odt')
        matrix = [['Name', 'Phone', 'Email'],
                  ['Hugo', '+55 (22) 8888-8888', '*****@*****.**'],
                  ['Rafael', '+55 (22) 9999-9999', '*****@*****.**']]
        self.assertEquals(matrix, oogranulator.getTableMatrix('Developers'))

        matrix = [['Product', 'Price'], ['Pizza', 'R$ 25,00'],
                  ['Petit Gateau', 'R$ 10,00'], ['Feijoada', 'R$ 30,00']]
        self.assertEquals(matrix, oogranulator.getTableMatrix('Prices'))

        self.assertEquals(None, oogranulator.getTableMatrix('Non existent'))
Exemplo n.º 10
0
  def testGetLineItemList(self):
    """Test if getLineItemList() returns the right table lines list"""
    data = open('./data/granulate_table_test.odt').read()
    oogranulator = OOGranulator(data, 'odt')
    matrix = [['Name', 'Phone', 'Email'],
             ['Hugo', '+55 (22) 8888-8888', '*****@*****.**'],
             ['Rafael', '+55 (22) 9999-9999', '*****@*****.**']]
    self.assertEquals(matrix, oogranulator.getTableMatrix('Developers'))

    matrix = [['Product', 'Price'],
             ['Pizza', 'R$ 25,00'],
             ['Petit Gateau', 'R$ 10,00'],
             ['Feijoada', 'R$ 30,00']]
    self.assertEquals(matrix, oogranulator.getTableMatrix('Prices'))
    self.assertEquals(None, oogranulator.getTableMatrix('Non existent'))
Exemplo n.º 11
0
 def _getOOGranulator(self, data, source_format="odt"):
     """Returns an instance of the handler OOGranulator after convert the
 data to 'odt'"""
     GRANULATABLE_FORMAT_LIST = ("odt", )
     if source_format not in GRANULATABLE_FORMAT_LIST:
         data = self.convertFile(data,
                                 source_format,
                                 GRANULATABLE_FORMAT_LIST[0],
                                 zip=False)
     return OOGranulator(decodestring(data), GRANULATABLE_FORMAT_LIST[0])
Exemplo n.º 12
0
 def testGetTableItemWithoutSuccess(self):
     """Test if getTable() returns None for an non existent table name"""
     data = open('./data/granulate_table_test.odt').read()
     oogranulator = OOGranulator(data, 'odt')
     table_data = oogranulator.getTable('NonExistentTable')
     self.assertEquals(table_data, None)
Exemplo n.º 13
0
 def setUp(self):
   data = open('./data/granulate_test.odt').read()
   self.oogranulator = OOGranulator(data, 'odt')
Exemplo n.º 14
0
 def testGetChapterItem(self):
     """Test if getChapterItem() returns the right chapter"""
     data = open("./data/granulate_chapters_test.odt").read()
     oogranulator = OOGranulator(data, 'odt')
     self.assertEquals(['Title 1', 1], oogranulator.getChapterItem(1))
Exemplo n.º 15
0
class TestOOGranulator(HandlerTestCase):

  def setUp(self):
    data = open('./data/granulate_test.odt').read()
    self.oogranulator = OOGranulator(data, 'odt')

  def testOdfWithoutContentXml(self):
    """Test if _odfWithoutContentXml() return a ZipFile instance without the
    content.xml file"""
    odf_without_content_xml = self.oogranulator._odfWithoutContentXml('odt')
    self.assertTrue(isinstance(odf_without_content_xml, ZipFile))
    complete_name_list = []
    for item in self.oogranulator.document._zipfile.filelist:
      complete_name_list.append(item.filename)
    for item in odf_without_content_xml.filelist:
      self.assertTrue(item.filename in complete_name_list)
      self.assertTrue(item.filename != 'content.xml')

  def testgetTableItemList(self):
    """Test if getTableItemList() returns the right tables list"""
    data = open('./data/granulate_table_test.odt').read()
    oogranulator = OOGranulator(data, 'odt')
    table_list = [('Developers', ''),
                  ('Prices', 'Table 1: Prices table from Mon Restaurant'),
                  ('SoccerTeams', 'Tabela 2: Soccer Teams')]
    self.assertEquals(table_list, oogranulator.getTableItemList())

  def testGetTable(self):
    """Test if getTable() returns on odf file with the right table"""
    data = open('./data/granulate_table_test.odt').read()
    oogranulator = OOGranulator(data, 'odt')
    table_data_doc = oogranulator.getTable('Developers')
    content_xml_str = ZipFile(StringIO(table_data_doc)).read('content.xml')
    content_xml = etree.fromstring(content_xml_str)
    table_list = content_xml.xpath('//table:table',
                                   namespaces=content_xml.nsmap)
    self.assertEquals(1, len(table_list))
    table = table_list[0]
    name_key = '{urn:oasis:names:tc:opendocument:xmlns:table:1.0}name'
    self.assertEquals('Developers', table.attrib[name_key])

  def testGetTableItemWithoutSuccess(self):
    """Test if getTable() returns None for an non existent table name"""
    data = open('./data/granulate_table_test.odt').read()
    oogranulator = OOGranulator(data, 'odt')
    table_data = oogranulator.getTable('NonExistentTable')
    self.assertEquals(table_data, None)

  def testGetColumnItemList(self):
    """Test if getColumnItemList() returns the right table columns list"""
    data = open('./data/granulate_table_test.odt').read()
    oogranulator = OOGranulator(data, 'odt')
    self.assertEquals([[0, 'Name'], [1, 'Country']],
                      oogranulator.getColumnItemList('SoccerTeams'))

  def testGetLineItemList(self):
    """Test if getLineItemList() returns the right table lines list"""
    data = open('./data/granulate_table_test.odt').read()
    oogranulator = OOGranulator(data, 'odt')
    matrix = [['Name', 'Phone', 'Email'],
             ['Hugo', '+55 (22) 8888-8888', '*****@*****.**'],
             ['Rafael', '+55 (22) 9999-9999', '*****@*****.**']]
    self.assertEquals(matrix, oogranulator.getTableMatrix('Developers'))

    matrix = [['Product', 'Price'],
             ['Pizza', 'R$ 25,00'],
             ['Petit Gateau', 'R$ 10,00'],
             ['Feijoada', 'R$ 30,00']]
    self.assertEquals(matrix, oogranulator.getTableMatrix('Prices'))

    self.assertEquals(None, oogranulator.getTableMatrix('Non existent'))

  def testGetImageItemList(self):
    """Test if getImageItemList() returns the right images list"""
    image_list = self.oogranulator.getImageItemList()
    self.assertEquals([('10000000000000C80000009C38276C51.jpg', ''),
                       ('10000201000000C80000004E7B947D46.png', 'TioLive Logo'),
                       ('10000201000000C80000004E7B947D46.png', ''),
                       # XXX The svg image are stored into odf as svm
                       ('2000004F00004233000013707E7DE37A.svm', 'Python Logo'),
                       ('10000201000000C80000004E7B947D46.png',
                        'Again TioLive Logo')], image_list)

  def testGetImageSuccessfully(self):
    """Test if getImage() returns the right image file successfully"""
    data = open('./data/granulate_test.odt').read()
    zip = ZipFile(StringIO(data))
    image_id = '10000000000000C80000009C38276C51.jpg'
    original_image = zip.read('Pictures/%s' % image_id)
    geted_image = self.oogranulator.getImage(image_id)
    self.assertEquals(original_image, geted_image)

  def testGetImageWithoutSuccess(self):
    """Test if getImage() returns an empty string for not existent id"""
    obtained_image = self.oogranulator.getImage('anything.png')
    self.assertEquals('', obtained_image)

  def testGetParagraphItemList(self):
    """Test if getParagraphItemList() returns the right paragraphs list, with
    the ids always in the same order"""
    for i in range(5):
      data = open('./data/granulate_test.odt').read()
      oogranulator = OOGranulator(data, 'odt')
      paragraph_list = oogranulator.getParagraphItemList()
      self.assertEquals((0, 'P3'), paragraph_list[0])
      self.assertEquals((1, 'P1'), paragraph_list[1])
      self.assertEquals((2, 'P12'), paragraph_list[2])
      self.assertEquals((8, 'P13'), paragraph_list[8])
      self.assertEquals((19, 'Standard'), paragraph_list[19])

  def testGetParagraphItemSuccessfully(self):
    """Test if getParagraphItem() returns the right paragraph"""
    self.assertEquals(('Some images without title', 'P13'),
                      self.oogranulator.getParagraph(8))

    big_paragraph = self.oogranulator.getParagraph(5)
    self.assertEquals('P8', big_paragraph[1])
    self.assertTrue(big_paragraph[0].startswith(u'A prática cotidiana prova'))
    self.assertTrue(big_paragraph[0].endswith(u'corresponde às necessidades.'))

  def testGetParagraphItemWithoutSuccess(self):
    """Test if getParagraphItem() returns None for not existent id"""
    self.assertEquals(None, self.oogranulator.getParagraph(200))

  def testGetChapterItemList(self):
    """Test if getChapterItemList() returns the right chapters list"""
    data = open('./data/granulate_chapters_test.odt').read()
    oogranulator = OOGranulator(data, 'odt')
    self.assertEquals([(0, 'Title 0'), (1, 'Title 1'), (2, 'Title 2'),
                       (3, 'Title 3'), (4, 'Title 4'), (5, 'Title 5'),
                       (6, 'Title 6'), (7, 'Title 7'), (8, 'Title 8'),
                       (9, 'Title 9'), (10, 'Title 10')],
                                          oogranulator.getChapterItemList())

  def testGetChapterItem(self):
    """Test if getChapterItem() returns the right chapter"""
    data = open("./data/granulate_chapters_test.odt").read()
    oogranulator = OOGranulator(data, 'odt')
    self.assertEquals(['Title 1', 1], oogranulator.getChapterItem(1))
Exemplo n.º 16
0
 def testGetChapterItem(self):
   """Test if getChapterItem() returns the right chapter"""
   data = open("./data/granulate_chapters_test.odt").read()
   oogranulator = OOGranulator(data, 'odt')
   self.assertEquals(['Title 1', 1], oogranulator.getChapterItem(1))
Exemplo n.º 17
0
class TestOOGranulator(HandlerTestCase):
    def setUp(self):
        data = open('./data/granulate_test.odt').read()
        self.oogranulator = OOGranulator(data, 'odt')

    def testOdfWithoutContentXml(self):
        """Test if _odfWithoutContentXml() return a ZipFile instance without the
    content.xml file"""
        odf_without_content_xml = self.oogranulator._odfWithoutContentXml(
            'odt')
        self.assertTrue(isinstance(odf_without_content_xml, ZipFile))
        complete_name_list = []
        for item in self.oogranulator.document._zipfile.filelist:
            complete_name_list.append(item.filename)
        for item in odf_without_content_xml.filelist:
            self.assertTrue(item.filename in complete_name_list)
            self.assertTrue(item.filename != 'content.xml')

    def testgetTableItemList(self):
        """Test if getTableItemList() returns the right tables list"""
        data = open('./data/granulate_table_test.odt').read()
        oogranulator = OOGranulator(data, 'odt')
        table_list = [('Developers', ''),
                      ('Prices', 'Table 1: Prices table from Mon Restaurant'),
                      ('SoccerTeams', 'Tabela 2: Soccer Teams')]
        self.assertEquals(table_list, oogranulator.getTableItemList())

    def testGetTable(self):
        """Test if getTable() returns on odf file with the right table"""
        data = open('./data/granulate_table_test.odt').read()
        oogranulator = OOGranulator(data, 'odt')
        table_data_doc = oogranulator.getTable('Developers')
        content_xml_str = ZipFile(StringIO(table_data_doc)).read('content.xml')
        content_xml = etree.fromstring(content_xml_str)
        table_list = content_xml.xpath('//table:table',
                                       namespaces=content_xml.nsmap)
        self.assertEquals(1, len(table_list))
        table = table_list[0]
        name_key = '{urn:oasis:names:tc:opendocument:xmlns:table:1.0}name'
        self.assertEquals('Developers', table.attrib[name_key])

    def testGetTableItemWithoutSuccess(self):
        """Test if getTable() returns None for an non existent table name"""
        data = open('./data/granulate_table_test.odt').read()
        oogranulator = OOGranulator(data, 'odt')
        table_data = oogranulator.getTable('NonExistentTable')
        self.assertEquals(table_data, None)

    def testGetColumnItemList(self):
        """Test if getColumnItemList() returns the right table columns list"""
        data = open('./data/granulate_table_test.odt').read()
        oogranulator = OOGranulator(data, 'odt')
        self.assertEquals([[0, 'Name'], [1, 'Country']],
                          oogranulator.getColumnItemList('SoccerTeams'))

    def testGetLineItemList(self):
        """Test if getLineItemList() returns the right table lines list"""
        data = open('./data/granulate_table_test.odt').read()
        oogranulator = OOGranulator(data, 'odt')
        matrix = [['Name', 'Phone', 'Email'],
                  ['Hugo', '+55 (22) 8888-8888', '*****@*****.**'],
                  ['Rafael', '+55 (22) 9999-9999', '*****@*****.**']]
        self.assertEquals(matrix, oogranulator.getTableMatrix('Developers'))

        matrix = [['Product', 'Price'], ['Pizza', 'R$ 25,00'],
                  ['Petit Gateau', 'R$ 10,00'], ['Feijoada', 'R$ 30,00']]
        self.assertEquals(matrix, oogranulator.getTableMatrix('Prices'))

        self.assertEquals(None, oogranulator.getTableMatrix('Non existent'))

    def testGetImageItemList(self):
        """Test if getImageItemList() returns the right images list"""
        image_list = self.oogranulator.getImageItemList()
        self.assertEquals(
            [
                ('10000000000000C80000009C38276C51.jpg', ''),
                ('10000201000000C80000004E7B947D46.png', 'TioLive Logo'),
                ('10000201000000C80000004E7B947D46.png', ''),
                # XXX The svg image are stored into odf as svm
                ('2000004F00004233000013707E7DE37A.svm', 'Python Logo'),
                ('10000201000000C80000004E7B947D46.png', 'Again TioLive Logo')
            ],
            image_list)

    def testGetImageSuccessfully(self):
        """Test if getImage() returns the right image file successfully"""
        data = open('./data/granulate_test.odt').read()
        zip = ZipFile(StringIO(data))
        image_id = '10000000000000C80000009C38276C51.jpg'
        original_image = zip.read('Pictures/%s' % image_id)
        geted_image = self.oogranulator.getImage(image_id)
        self.assertEquals(original_image, geted_image)

    def testGetImageWithoutSuccess(self):
        """Test if getImage() returns an empty string for not existent id"""
        obtained_image = self.oogranulator.getImage('anything.png')
        self.assertEquals('', obtained_image)

    def testGetParagraphItemList(self):
        """Test if getParagraphItemList() returns the right paragraphs list, with
    the ids always in the same order"""
        for i in range(5):
            data = open('./data/granulate_test.odt').read()
            oogranulator = OOGranulator(data, 'odt')
            paragraph_list = oogranulator.getParagraphItemList()
            self.assertEquals((0, 'P3'), paragraph_list[0])
            self.assertEquals((1, 'P1'), paragraph_list[1])
            self.assertEquals((2, 'P12'), paragraph_list[2])
            self.assertEquals((8, 'P13'), paragraph_list[8])
            self.assertEquals((19, 'Standard'), paragraph_list[19])

    def testGetParagraphItemSuccessfully(self):
        """Test if getParagraphItem() returns the right paragraph"""
        self.assertEquals(('Some images without title', 'P13'),
                          self.oogranulator.getParagraph(8))

        big_paragraph = self.oogranulator.getParagraph(5)
        self.assertEquals('P8', big_paragraph[1])
        self.assertTrue(
            big_paragraph[0].startswith(u'A prática cotidiana prova'))
        self.assertTrue(
            big_paragraph[0].endswith(u'corresponde às necessidades.'))

    def testGetParagraphItemWithoutSuccess(self):
        """Test if getParagraphItem() returns None for not existent id"""
        self.assertEquals(None, self.oogranulator.getParagraph(200))

    def testGetChapterItemList(self):
        """Test if getChapterItemList() returns the right chapters list"""
        data = open('./data/granulate_chapters_test.odt').read()
        oogranulator = OOGranulator(data, 'odt')
        self.assertEquals([(0, 'Title 0'), (1, 'Title 1'), (2, 'Title 2'),
                           (3, 'Title 3'), (4, 'Title 4'), (5, 'Title 5'),
                           (6, 'Title 6'), (7, 'Title 7'), (8, 'Title 8'),
                           (9, 'Title 9'), (10, 'Title 10')],
                          oogranulator.getChapterItemList())

    def testGetChapterItem(self):
        """Test if getChapterItem() returns the right chapter"""
        data = open("./data/granulate_chapters_test.odt").read()
        oogranulator = OOGranulator(data, 'odt')
        self.assertEquals(['Title 1', 1], oogranulator.getChapterItem(1))
Exemplo n.º 18
0
 def setUp(self):
     data = open('./data/granulate_test.odt').read()
     self.oogranulator = OOGranulator(data, 'odt')
Exemplo n.º 19
0
 def testGetTableItemWithoutSuccess(self):
   """Test if getTable() returns None for an non existent table name"""
   data = open('./data/granulate_table_test.odt').read()
   oogranulator = OOGranulator(data, 'odt')
   table_data = oogranulator.getTable('NonExistentTable')
   self.assertEquals(table_data, None)
Exemplo n.º 20
0
 def testGetColumnItemList(self):
   """Test if getColumnItemList() returns the right table columns list"""
   data = open('./data/granulate_table_test.odt').read()
   oogranulator = OOGranulator(data, 'odt')
   self.assertEquals([[0, 'Name'], [1, 'Country']],
                     oogranulator.getColumnItemList('SoccerTeams'))
Exemplo n.º 21
0
 def testGetColumnItemList(self):
     """Test if getColumnItemList() returns the right table columns list"""
     data = open('./data/granulate_table_test.odt').read()
     oogranulator = OOGranulator(data, 'odt')
     self.assertEquals([[0, 'Name'], [1, 'Country']],
                       oogranulator.getColumnItemList('SoccerTeams'))