ci: create sponge_log.xml files (#722)
* ci: create sponge_log.xml files
* test: fix noxfile
Co-authored-by: arithmetic1728 <58957152+arithmetic1728@users.noreply.github.com>
diff --git a/.gitignore b/.gitignore
index 1f0b7e3..ca0c074 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,6 +22,7 @@
# Coverage files
.coverage
coverage.xml
+*sponge_log.xml
nosetests.xml
htmlcov/
diff --git a/noxfile.py b/noxfile.py
index 168c1e2..3b4863c 100644
--- a/noxfile.py
+++ b/noxfile.py
@@ -87,6 +87,7 @@
session.install(".")
session.run(
"pytest",
+ f"--junitxml=unit_{session.python}_sponge_log.xml",
"--cov=google.auth",
"--cov=google.oauth2",
"--cov=tests",
@@ -100,7 +101,12 @@
session.install(".")
session.install(*TEST_DEPENDENCIES)
session.run(
- "pytest", "--cov=google.auth", "--cov=google.oauth2", "--cov=tests", "tests"
+ "pytest",
+ f"--junitxml=unit_{session.python}_sponge_log.xml",
+ "--cov=google.auth",
+ "--cov=google.oauth2",
+ "--cov=tests",
+ "tests",
)
@@ -170,6 +176,7 @@
session.install(".")
session.run(
"pytest",
+ f"--junitxml=unit_{session.python}_sponge_log.xml",
"--cov=google.auth",
"--cov=google.oauth2",
"--cov=tests",
diff --git a/system_tests/noxfile.py b/system_tests/noxfile.py
index 4ba7cc3..6e2e1b8 100644
--- a/system_tests/noxfile.py
+++ b/system_tests/noxfile.py
@@ -174,11 +174,21 @@
PYTHON_VERSIONS_SYNC = ["2.7", "3.7"]
+def default(session, *test_paths):
+ # replace 'session._runner.friendly_name' with
+ # session.name once nox has released a new version
+ # https://github.com/theacodes/nox/pull/386
+ sponge_log = f"--junitxml=system_{str(session._runner.friendly_name)}_sponge_log.xml"
+ session.run(
+ "pytest", sponge_log, *test_paths,
+ )
+
+
@nox.session(python=PYTHON_VERSIONS_SYNC)
def service_account_sync(session):
session.install(*TEST_DEPENDENCIES_SYNC)
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_service_account.py")
+ default(session, "system_tests_sync/test_service_account.py")
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -187,7 +197,11 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*TEST_DEPENDENCIES_SYNC)
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_default.py", "system_tests_sync/test_id_token.py")
+ default(
+ session,
+ "system_tests_sync/test_default.py",
+ "system_tests_sync/test_id_token.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -195,7 +209,9 @@
session.env[EXPLICIT_CREDENTIALS_ENV] = AUTHORIZED_USER_FILE
session.install(*TEST_DEPENDENCIES_SYNC)
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_default.py")
+ default(
+ session, "system_tests_sync/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -205,7 +221,9 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*TEST_DEPENDENCIES_SYNC)
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_default.py")
+ default(
+ session, "system_tests_sync/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -214,7 +232,9 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*TEST_DEPENDENCIES_SYNC)
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_default.py")
+ default(
+ session, "system_tests_sync/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -222,7 +242,9 @@
configure_cloud_sdk(session, AUTHORIZED_USER_FILE)
session.install(*TEST_DEPENDENCIES_SYNC)
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_default.py")
+ default(
+ session, "system_tests_sync/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -231,7 +253,10 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*TEST_DEPENDENCIES_SYNC)
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_default.py")
+ default(
+ session, "system_tests_sync/test_default.py",
+ )
+
@nox.session(python=PYTHON_VERSIONS_SYNC)
def compute_engine(session):
@@ -240,7 +265,9 @@
# credentials are detected from environment
del session.virtualenv.env["GOOGLE_APPLICATION_CREDENTIALS"]
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_sync/test_compute_engine.py")
+ default(
+ session, "system_tests_sync/test_compute_engine.py",
+ )
@nox.session(python=["2.7"])
@@ -282,7 +309,9 @@
# Run the tests
session.env["TEST_APP_URL"] = application_url
session.chdir(HERE)
- session.run("pytest", "system_tests_sync/test_app_engine.py")
+ default(
+ session, "system_tests_sync/test_app_engine.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -290,7 +319,9 @@
session.install(LIBRARY_DIR)
session.install(*TEST_DEPENDENCIES_SYNC, "google-cloud-pubsub==1.7.0")
session.env[EXPLICIT_CREDENTIALS_ENV] = SERVICE_ACCOUNT_FILE
- session.run("pytest", "system_tests_sync/test_grpc.py")
+ default(
+ session, "system_tests_sync/test_grpc.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -298,7 +329,9 @@
session.install(LIBRARY_DIR)
session.install(*TEST_DEPENDENCIES_SYNC)
session.env[EXPLICIT_CREDENTIALS_ENV] = SERVICE_ACCOUNT_FILE
- session.run("pytest", "system_tests_sync/test_requests.py")
+ default(
+ session, "system_tests_sync/test_requests.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -306,7 +339,9 @@
session.install(LIBRARY_DIR)
session.install(*TEST_DEPENDENCIES_SYNC)
session.env[EXPLICIT_CREDENTIALS_ENV] = SERVICE_ACCOUNT_FILE
- session.run("pytest", "system_tests_sync/test_urllib3.py")
+ default(
+ session, "system_tests_sync/test_urllib3.py",
+ )
@nox.session(python=PYTHON_VERSIONS_SYNC)
@@ -314,16 +349,21 @@
session.install(LIBRARY_DIR)
session.install(*TEST_DEPENDENCIES_SYNC, "pyopenssl")
session.env[EXPLICIT_CREDENTIALS_ENV] = SERVICE_ACCOUNT_FILE
- session.run("pytest", "system_tests_sync/test_mtls_http.py")
+ default(
+ session, "system_tests_sync/test_mtls_http.py",
+ )
-#ASYNC SYSTEM TESTS
+# ASYNC SYSTEM TESTS
+
@nox.session(python=PYTHON_VERSIONS_ASYNC)
def service_account_async(session):
- session.install(*(TEST_DEPENDENCIES_SYNC+TEST_DEPENDENCIES_ASYNC))
+ session.install(*(TEST_DEPENDENCIES_SYNC + TEST_DEPENDENCIES_ASYNC))
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_async/test_service_account.py")
+ default(
+ session, "system_tests_async/test_service_account.py",
+ )
@nox.session(python=PYTHON_VERSIONS_ASYNC)
@@ -332,8 +372,11 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*(TEST_DEPENDENCIES_SYNC + TEST_DEPENDENCIES_ASYNC))
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_async/test_default.py",
- "system_tests_async/test_id_token.py")
+ default(
+ session,
+ "system_tests_async/test_default.py",
+ "system_tests_async/test_id_token.py",
+ )
@nox.session(python=PYTHON_VERSIONS_ASYNC)
@@ -341,7 +384,9 @@
session.env[EXPLICIT_CREDENTIALS_ENV] = AUTHORIZED_USER_FILE
session.install(*(TEST_DEPENDENCIES_SYNC + TEST_DEPENDENCIES_ASYNC))
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_async/test_default.py")
+ default(
+ session, "system_tests_async/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_ASYNC)
@@ -351,7 +396,9 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*(TEST_DEPENDENCIES_SYNC + TEST_DEPENDENCIES_ASYNC))
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_async/test_default.py")
+ default(
+ session, "system_tests_async/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_ASYNC)
@@ -360,7 +407,9 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*(TEST_DEPENDENCIES_SYNC + TEST_DEPENDENCIES_ASYNC))
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_async/test_default.py")
+ default(
+ session, "system_tests_async/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_ASYNC)
@@ -368,7 +417,9 @@
configure_cloud_sdk(session, AUTHORIZED_USER_FILE)
session.install(*(TEST_DEPENDENCIES_SYNC + TEST_DEPENDENCIES_ASYNC))
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_async/test_default.py")
+ default(
+ session, "system_tests_async/test_default.py",
+ )
@nox.session(python=PYTHON_VERSIONS_ASYNC)
@@ -377,4 +428,6 @@
session.env[EXPECT_PROJECT_ENV] = "1"
session.install(*(TEST_DEPENDENCIES_SYNC + TEST_DEPENDENCIES_ASYNC))
session.install(LIBRARY_DIR)
- session.run("pytest", "system_tests_async/test_default.py")
+ default(
+ session, "system_tests_async/test_default.py",
+ )