def test_load_module(self):
     # Test loading by just giving it the name in the constructor
     tx_module = TxModule.get(name='module1')
     self.assertEqual(tx_module.resource_types, self.items['module1']['resource_types'])
     # Test loading by just giving it only the name in the data array in the constructor
     tx_module = TxModule.get(name='module2')
     self.assertEqual(tx_module.input_format, self.items['module2']['input_format'])
Esempio n. 2
0
 def test_load_module(self):
     # Test loading by just giving it the name in the constructor
     tx_module = TxModule.get(name='module1')
     self.assertEqual(tx_module.resource_types,
                      self.items['module1']['resource_types'])
     # Test loading by just giving it only the name in the data array in the constructor
     tx_module = TxModule.get(name='module2')
     self.assertEqual(tx_module.input_format,
                      self.items['module2']['input_format'])
    def test_register_module(self):
        data = {
            'name': 'module4',
            'type': 'conversion',
            'resource_types': ['obs'],
            'input_format': 'md',
            'output_format': 'html',
            'options': {'pageSize': 'A4'},
            'public_links': [],
            'private_links': []
        }
        self.tx_manager.register_module(data)
        tx_module = TxModule.get(name=data['name'])
        self.assertIsNotNone(tx_module)
        self.assertEqual(tx_module.options['pageSize'], 'A4')
        self.assertEqual(tx_module.created_at.year, datetime.utcnow().year)
        self.assertEqual(tx_module.updated_at.year, datetime.utcnow().year)
        self.assertEqual(tx_module.public_links, ['{0}/tx/convert/{1}'.format(App.api_url, data['name'])])

        test_missing_keys = ['name', 'type', 'input_format', 'resource_types']
        for key in test_missing_keys:
            # should raise an exception if data is missing a required field
            missing = data.copy()
            del missing[key]
            self.assertRaises(Exception, self.tx_manager.register_module, missing)
Esempio n. 4
0
    def register_module(data):
        tx_module = TxModule(**data)

        if not tx_module.name:
            raise Exception('"name" not given.')
        if not tx_module.type:
            raise Exception('"type" not given.')
        if not tx_module.input_format:
            raise Exception('"input_format" not given.')
        if not tx_module.resource_types:
            raise Exception('"resource_types" not given.')

        tx_module.public_links.append("{0}/tx/convert/{1}".format(App.api_url, tx_module.name))
        
        old_module = TxModule.get(name=tx_module.name)
        if old_module:
            old_module.delete()
        tx_module.insert()
        return tx_module
Esempio n. 5
0
 def test_delete_module(self):
     tx_module = TxModule.get(name=self.items['module1']['name'])
     self.assertIsNotNone(tx_module)
     tx_module.delete()
     tx_module = TxModule.get(name=self.items['module1']['name'])
     self.assertIsNone(tx_module)
Esempio n. 6
0
 def test_update_module(self):
     tx_module = TxModule.get(name=self.items['module3']['name'])
     tx_module.output_format = 'usfm'
     tx_module.update()
     tx_module = TxModule.get(name=self.items['module3']['name'])
     self.assertEqual(tx_module.output_format, 'usfm')
 def test_delete_module(self):
     tx_module = TxModule.get(name=self.items['module1']['name'])
     self.assertIsNotNone(tx_module)
     tx_module.delete()
     tx_module = TxModule.get(name=self.items['module1']['name'])
     self.assertIsNone(tx_module)
 def test_update_module(self):
     tx_module = TxModule.get(name=self.items['module3']['name'])
     tx_module.output_format = 'usfm'
     tx_module.update()
     tx_module = TxModule.get(name=self.items['module3']['name'])
     self.assertEqual(tx_module.output_format, 'usfm')