expected_authors_list = ( "test \ntestagain \n" ) expected_authors_list_without_email = "test\ntestagain\n" authors_file = "AUTHORS" class TestGitAuthors: def test_init(self, temp_repo): git = temp_repo.get_repo_git() tmp_file = temp_repo.get_file(0) temp_repo.writefile(tmp_file, "A") git.add(".") git.commit("-m", "test: add data A") git.config("--local", "user.name", "testagain") git.config("--local", "user.email", "testagain@git-extras.com") temp_repo.writefile(tmp_file, "B") git.add(".") git.commit("-m", "test: add data B") def test_output_authors_has_email_without_any_parameter(self, temp_repo): temp_repo.get_repo_git() temp_repo.invoke_extras_command("authors") with open(authors_file) as f: content = f.read() print(content) print(expected_authors_list) assert content == expected_authors_list def test_list_authors_has_email_defaultly(self, temp_repo): temp_repo.get_repo_git() actual = temp_repo.invoke_extras_command("authors", "--list") actual = actual.stdout.decode() assert actual == expected_authors_list actual = temp_repo.invoke_extras_command("authors", "-l") actual = actual.stdout.decode() assert actual == expected_authors_list def test_list_authors_has_not_email(self, temp_repo): temp_repo.get_repo_git() actual = temp_repo.invoke_extras_command("authors", "--list", "--no-email") actual = actual.stdout.decode() assert actual == expected_authors_list_without_email actual = temp_repo.invoke_extras_command("authors", "-l", "--no-email") actual = actual.stdout.decode() assert actual == expected_authors_list_without_email