@@ -147,7 +147,13 @@ def snippets(session):
147147 # Skip tests in samples/snippets, as those are run in a different session
148148 # using the nox config from that directory.
149149 session .run ("py.test" , os .path .join ("docs" , "snippets.py" ), * session .posargs )
150- session .run ("py.test" , "samples" , "--ignore=samples/snippets" , * session .posargs )
150+ session .run (
151+ "py.test" ,
152+ "samples" ,
153+ "--ignore=samples/snippets" ,
154+ "--ignore=samples/geography" ,
155+ * session .posargs ,
156+ )
151157
152158
153159@nox .session (python = "3.8" )
@@ -162,6 +168,38 @@ def cover(session):
162168 session .run ("coverage" , "erase" )
163169
164170
171+ @nox .session (python = "3.8" )
172+ def prerelease_deps (session ):
173+ """Run all tests with prerelease versions of dependencies installed.
174+
175+ https://github.com/googleapis/python-bigquery/issues/95
176+ """
177+ # PyArrow prerelease packages are published to an alternative PyPI host.
178+ # https://arrow.apache.org/docs/python/install.html#installing-nightly-packages
179+ session .install (
180+ "--extra-index-url" , "https://pypi.fury.io/arrow-nightlies/" , "--pre" , "pyarrow"
181+ )
182+ session .install ("--pre" , "grpcio" , "pandas" )
183+ session .install (
184+ "mock" ,
185+ "pytest" ,
186+ "google-cloud-testutils" ,
187+ "pytest-cov" ,
188+ "freezegun" ,
189+ "IPython" ,
190+ )
191+ session .install ("-e" , ".[all]" )
192+
193+ # Print out prerelease package versions.
194+ session .run ("python" , "-c" , "import grpc; print(grpc.__version__)" )
195+ session .run ("python" , "-c" , "import pandas; print(pandas.__version__)" )
196+ session .run ("python" , "-c" , "import pyarrow; print(pyarrow.__version__)" )
197+
198+ # Run all tests, except a few samples tests which require extra dependencies.
199+ session .run ("py.test" , "tests" )
200+ session .run ("py.test" , "samples/tests" )
201+
202+
165203@nox .session (python = "3.8" )
166204def lint (session ):
167205 """Run linters.
0 commit comments