Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_init_commit_repo(tmpfolder):
project = "my_project"
struct = {
project: {
"my_file": "Some other content",
"my_dir": {"my_file": "Some more content"},
"dummy": None,
}
}
structure.create_structure(struct, {})
dummy_file = os.path.join(project, "dummy")
with open(dummy_file, "w"):
os.utime(dummy_file, None)
repo.init_commit_repo(project, struct)
assert os.path.exists(os.path.join(project, ".git"))
def test_init_commit_repo_with_wrong_structure(tmpfolder):
project = "my_project"
struct = {project: {"my_file": type("StrangeType", (object,), {})}}
os.mkdir(project)
with pytest.raises(RuntimeError):
repo.init_commit_repo(project, struct)
def test_version_of_subdir(tmpfolder):
projects = ["main_project", "inner_project"]
for project in projects:
opts = cli.parse_args([project])
opts = cli.process_opts(opts)
_, opts = api.get_default_options({}, opts)
struct, _ = structure.define_structure({}, opts)
struct, _ = update.apply_update_rules(struct, opts)
structure.create_structure(struct, {})
repo.init_commit_repo(project, struct)
utils.rm_rf(os.path.join("inner_project", ".git"))
shutil.move("inner_project", "main_project/inner_project")
with utils.chdir("main_project"):
main_version = (
subprocess.check_output([sys.executable, "setup.py", "--version"])
.strip()
.splitlines()[-1]
)
with utils.chdir("inner_project"):
inner_version = (
subprocess.check_output([sys.executable, "setup.py", "--version"])
.strip()
.splitlines()[-1]
)
assert main_version.strip() == inner_version.strip()
def test_dirty_workspace(tmpfolder):
project = "my_project"
struct = {project: {"dummyfile": "NO CONTENT"}}
structure.create_structure(struct, {})
repo.init_commit_repo(project, struct)
path = tmpfolder / project
assert info.is_git_workspace_clean(path)
with open(str(path / "dummyfile"), "w") as fh:
fh.write("CHANGED\n")
assert not info.is_git_workspace_clean(path)
def test_add_tag(tmpfolder):
project = "my_project"
struct = {
project: {
"my_file": "Some other content",
"my_dir": {"my_file": "Some more content"},
}
}
structure.create_structure(struct, {})
repo.init_commit_repo(project, struct)
repo.add_tag(project, "v0.0")
repo.add_tag(project, "v0.1", "Message with whitespace")
def test_get_git_root(tmpfolder):
project = "my_project"
struct = {
project: {
"my_file": "Some other content",
"my_dir": {"my_file": "Some more content"},
}
}
structure.create_structure(struct, {})
repo.init_commit_repo(project, struct)
with utils.chdir(project):
git_root = repo.get_git_root()
assert os.path.basename(git_root) == project
def test_pretend_init_commit_repo(tmpfolder):
project = "my_project"
struct = {
project: {
"my_file": "Some other content",
"my_dir": {"my_file": "Some more content"},
"dummy": None,
}
}
structure.create_structure(struct, {})
dummy_file = os.path.join(project, "dummy")
with open(dummy_file, "w"):
os.utime(dummy_file, None)
repo.init_commit_repo(project, struct, pretend=True)
assert not os.path.exists(os.path.join(project, ".git"))