Пример #1
0
    def test_prepare_filename(self):
        repo_urls = [
            "https://whatever.cite.com/cool/you.git",
            "whatever.cite.com/cool/you.git",
            "whatever.cite.com/cool/you\\\n",
            "whatever.cite.com/cool/you\n",
            "whatever.cite.com/cool/you",
            "whatever.cite.com/cool/you.git\n",
        ]
        with tempfile.TemporaryDirectory() as tmpdir:
            for repo_url in repo_urls:
                self.assertEqual(
                    os.path.join(tmpdir,
                                 "source_whatever.cite.com&cool&you.asdf"),
                    Repo2SourceTransformer.prepare_filename(
                        repo_url, tmpdir, 0))

            for repo_url in repo_urls:
                self.assertEqual(
                    os.path.join(tmpdir,
                                 "w/source_whatever.cite.com&cool&you.asdf"),
                    Repo2SourceTransformer.prepare_filename(
                        repo_url, tmpdir, 1))

            for repo_url in repo_urls:
                self.assertEqual(
                    os.path.join(
                        tmpdir,
                        "w/wh/wha/source_whatever.cite.com&cool&you.asdf"),
                    Repo2SourceTransformer.prepare_filename(
                        repo_url, tmpdir, 3))
            self.assertEqual(
                os.path.join(tmpdir, "a/ab/abc/source_abc.asdf"),
                Repo2SourceTransformer.prepare_filename("abc", tmpdir, 10))
Пример #2
0
 def test_overwrite_existing(self):
     with tempfile.TemporaryDirectory() as tmpdir:
         model_path = Repo2SourceTransformer.prepare_filename(
             DATA_DIR_SOURCE, tmpdir)
         r2cc = Repo2SourceTransformer(linguist=tests.ENRY,
                                       overwrite_existing=False)
         r2cc.transform(DATA_DIR_SOURCE, output=tmpdir, num_processes=1)
         data = asdf.open(model_path)
         r2cc2 = Repo2SourceTransformer(linguist=tests.ENRY,
                                        overwrite_existing=False)
         r2cc2.transform(DATA_DIR_SOURCE, output=tmpdir, num_processes=1)
         data2 = asdf.open(model_path)
         self.assertEqual(data.tree["meta"]["created_at"],
                          data2.tree["meta"]["created_at"])
         r2cc2 = Repo2SourceTransformer(linguist=tests.ENRY,
                                        overwrite_existing=True)
         r2cc2.transform(DATA_DIR_SOURCE, output=tmpdir, num_processes=1)
         data3 = asdf.open(model_path)
         self.assertNotEqual(data.tree["meta"]["created_at"],
                             data3.tree["meta"]["created_at"])
Пример #3
0
 def check_no_model(self, tmpdir):
     path = Repo2SourceTransformer.prepare_filename(DATA_DIR_SOURCE, tmpdir)
     self.assertFalse(os.path.exists(path))
Пример #4
0
 def load_default_source_model(self, tmpdir):
     path = Repo2SourceTransformer.prepare_filename(DATA_DIR_SOURCE, tmpdir)
     validate_asdf_file(self, path)
     return Source().load(source=path)
Пример #5
0
 def default_source_model_transformer(self, tmpdir):
     r2cc = Repo2SourceTransformer(timeout=50, linguist=tests.ENRY)
     r2cc.transform(DATA_DIR_SOURCE, output=tmpdir, num_processes=1)
     self.assertEqual(r2cc.dependencies(), [])