@@ -90,6 +90,9 @@ def get_staging_dirs(
9090 split_system_tests = True ,
9191 microgenerator = True ,
9292 cov_level = 99 ,
93+ system_test_external_dependencies = [
94+ "pytest-asyncio" ,
95+ ],
9396)
9497
9598s .move (templated_files , excludes = [".coveragerc" , "README.rst" , ".github/release-please.yml" ])
@@ -142,7 +145,35 @@ def system_emulated(session):
142145 escape = "()"
143146)
144147
145- # add system_emulated nox session
148+ conformance_session = """
149+ @nox.session(python=SYSTEM_TEST_PYTHON_VERSIONS)
150+ def conformance(session):
151+ TEST_REPO_URL = "https://github.com/googleapis/cloud-bigtable-clients-test.git"
152+ CLONE_REPO_DIR = "cloud-bigtable-clients-test"
153+ # install dependencies
154+ constraints_path = str(
155+ CURRENT_DIRECTORY / "testing" / f"constraints-{session.python}.txt"
156+ )
157+ install_unittest_dependencies(session, "-c", constraints_path)
158+ with session.chdir("test_proxy"):
159+ # download the conformance test suite
160+ clone_dir = os.path.join(CURRENT_DIRECTORY, CLONE_REPO_DIR)
161+ if not os.path.exists(clone_dir):
162+ print("downloading copy of test repo")
163+ session.run("git", "clone", TEST_REPO_URL, CLONE_REPO_DIR, external=True)
164+ session.run("bash", "-e", "run_tests.sh", external=True)
165+
166+ """
167+
168+ place_before (
169+ "noxfile.py" ,
170+ "@nox.session(python=SYSTEM_TEST_PYTHON_VERSIONS)\n "
171+ "def system(session):" ,
172+ conformance_session ,
173+ escape = "()"
174+ )
175+
176+ # add system_emulated and mypy and conformance to nox session
146177s .replace ("noxfile.py" ,
147178 """nox.options.sessions = \[
148179 "unit",
@@ -151,6 +182,7 @@ def system_emulated(session):
151182 "unit",
152183 "system_emulated",
153184 "system",
185+ "conformance",
154186 "mypy",""" ,
155187)
156188
@@ -171,7 +203,7 @@ def mypy(session):
171203 session.run(
172204 "mypy",
173205 "-p",
174- "google.cloud.bigtable",
206+ "google.cloud.bigtable.data ",
175207 "--check-untyped-defs",
176208 "--warn-unreachable",
177209 "--disallow-any-generics",
0 commit comments