def test_init_from_existing_local_clone(self):
        subprocess.run(
            ["git", "clone", self._repo_url, WORKING_REPO_DIR],
            check=True,
        )

        repo = Repository(WORKING_REPO_DIR)
        repo.lfs_track(["*.pdf"])
        repo.lfs_enable_largefiles()
        repo.git_pull()
 def test_init_clone_in_nonempty_folder(self):
     # Create dummy files
     # one is lfs-tracked, the other is not.
     os.makedirs(WORKING_REPO_DIR, exist_ok=True)
     with open(os.path.join(WORKING_REPO_DIR, "dummy.txt"), "w") as f:
         f.write("hello")
     with open(os.path.join(WORKING_REPO_DIR, "model.bin"), "w") as f:
         f.write("hello")
     repo = Repository(WORKING_REPO_DIR, clone_from=self._repo_url)
     repo.lfs_track(["*.pdf"])
     repo.lfs_enable_largefiles()
     repo.git_pull()
 def test_init_clone_in_empty_folder(self):
     repo = Repository(WORKING_REPO_DIR, clone_from=self._repo_url)
     repo.lfs_track(["*.pdf"])
     repo.lfs_enable_largefiles()
     repo.git_pull()