Пример #1
0
 def test_generate_all_missing_parameter(self):
     create_repo()
     c = Client()
     response = c.post('/api/generate_all',
                       HTTP_AUTHORIZATION='Token ' + self.user.token)
     self.assertEqual(response.status_code, 400, msg=response.content)
     delete_all_repos_from_db()
Пример #2
0
 def test_generate_all_missing_authorization(self):
     create_repo()
     c = Client()
     response = c.post('/api/generate_all',
                       {'url': Repo.objects.all()[0].url})
     self.assertEqual(response.status_code, 401, msg=response.content)
     delete_all_repos_from_db()
Пример #3
0
    def test_doc_multi_lang(self):
        import OnToology.settings as settings
        resources_dir = get_repo_resource_dir(os.environ['test_user_email'])
        # The below two assertion is to protect the deletion of important files
        self.assertEqual(resources_dir.split('/')[-1],
                         'OnToology',
                         msg='might be a wrong resources dir OnToology')
        self.assertIn(os.environ['test_user_email'],
                      resources_dir,
                      msg='might be a wrong resources dir or wrong user')
        # print "will delete %s" % resources_dir
        # comm = "rm -Rf %s" % resources_dir
        # print comm
        settings.test_conf['local'] = True
        settings.test_conf['fork'] = False
        settings.test_conf['clone'] = False
        settings.test_conf['push'] = False
        settings.test_conf['pull'] = False
        delete_all_repos_from_db()
        create_repo(self.url)
        # inject the configuration file with the multi-lang
        f = open(os.path.join(resources_dir, 'alo.owl/OnToology.cfg'), 'w')
        conf_file_content = """
[ar2dtool]
enable = False

[widoco]
enable = True
languages = en,es,it

[oops]
enable = False

[owl2jsonld]
enable = False\n
        """
        f.write(conf_file_content)
        f.close()
        c = Client()
        response = c.post('/api/generate_all',
                          {'url': Repo.objects.all()[0].url},
                          HTTP_AUTHORIZATION='Token ' + self.user.token)
        self.assertEqual(response.status_code, 202, msg=response.content)
        files_to_check = [
            'alo.owl/OnToology.cfg',
        ]
        #docs_files = ['index-en.html','index-es.html', 'index-it.html', 'ontology.xml', '.htaccess', 'alo.owl.widoco.conf']
        # Until the issue is fixed for Widoco
        docs_files = [
            'index-en.html', 'ontology.xml', '.htaccess', 'alo.owl.widoco.conf'
        ]
        for f in docs_files:
            ff = os.path.join('alo.owl/documentation', f)
            files_to_check.append(ff)
        for f in files_to_check:
            print os.path.join(resources_dir, f)
            self.assertTrue(os.path.exists(os.path.join(resources_dir, f)),
                            msg=(f + " does not exists"))
        delete_all_repos_from_db()
Пример #4
0
 def test_generate_all_wrong_repo(self):
     create_repo()
     c = Client()
     response = c.post('/api/generate_all',
                       {'url': Repo.objects.all()[0].url + 'wrong'},
                       HTTP_AUTHORIZATION='Token ' + self.user.token)
     self.assertEqual(response.status_code, 404, msg=response.content)
     delete_all_repos_from_db()
Пример #5
0
    def test_generate_all_check_generated_resources_hash(self):
        import OnToology.settings as settings
        resources_dir = get_repo_resource_dir(os.environ['test_user_email'])
        # The below two assertion is to protect the deletion of important files
        self.assertEqual(resources_dir.split('/')[-1],
                         'OnToology',
                         msg='might be a wrong resources dir OnToology')
        self.assertIn(os.environ['test_user_email'],
                      resources_dir,
                      msg='might be a wrong resources dir or wrong user')
        print "will delete %s" % resources_dir
        comm = "rm -Rf %s" % resources_dir
        print comm
        call(comm, shell=True)
        # Because if clone is True, then deleting the file does not makes sense as the repo will be cloned
        settings.test_conf['clone'] = False
        create_repo()
        c = Client()
        response = c.post('/api/generate_all',
                          {'url': Repo.objects.all()[0].url},
                          HTTP_AUTHORIZATION='Token ' + self.user.token)
        self.assertEqual(response.status_code, 202, msg=response.content)

        files_to_check = [
            'geolinkeddata.owl/OnToology.cfg',
        ]
        docs_files = [
            'doc/index-en.html', 'doc/ontology.xml', '.htaccess',
            'geolinkeddata.owl.widoco.conf'
        ]
        diagrams_files = [
            'ar2dtool-class/geolinkeddata.owl.png',
            'ar2dtool-taxonomy/geolinkeddata.owl.png'
        ]
        eval_files = ['oopsEval.html']
        for f in docs_files:
            ff = os.path.join('geolinkeddata.owl/documentation', f)
            files_to_check.append(ff)
        for f in diagrams_files:
            ff = os.path.join('geolinkeddata.owl/diagrams', f)
            files_to_check.append(ff)
        for f in eval_files:
            ff = os.path.join('geolinkeddata.owl/evaluation', f)
            files_to_check.append(ff)
        for f in files_to_check:
            print os.path.join(resources_dir, f)
            self.assertTrue(os.path.exists(os.path.join(resources_dir, f)),
                            msg=(f + " does not exists"))
        delete_all_repos_from_db()