2222from gcloud import bigquery
2323
2424
25- _helpers .PROJECT = TESTS_PROJECT
26- CLIENT = bigquery .Client ()
2725DATASET_NAME = 'system_tests_%012d' % (1000 * time .time (),)
2826
2927
28+ class Config (object ):
29+ """Run-time configuration to be modified at set-up.
30+
31+ This is a mutable stand-in to allow test set-up to modify
32+ global state.
33+ """
34+ CLIENT = None
35+
36+
37+ def setUpModule ():
38+ _helpers .PROJECT = TESTS_PROJECT
39+ Config .CLIENT = bigquery .Client ()
40+
41+
3042class TestBigQuery (unittest2 .TestCase ):
3143
3244 def setUp (self ):
@@ -37,26 +49,26 @@ def tearDown(self):
3749 doomed .delete ()
3850
3951 def test_create_dataset (self ):
40- dataset = CLIENT .dataset (DATASET_NAME )
52+ dataset = Config . CLIENT .dataset (DATASET_NAME )
4153 self .assertFalse (dataset .exists ())
4254 dataset .create ()
4355 self .to_delete .append (dataset )
4456 self .assertTrue (dataset .exists ())
4557 self .assertEqual (dataset .name , DATASET_NAME )
4658
4759 def test_reload_dataset (self ):
48- dataset = CLIENT .dataset (DATASET_NAME )
60+ dataset = Config . CLIENT .dataset (DATASET_NAME )
4961 dataset .friendly_name = 'Friendly'
5062 dataset .description = 'Description'
5163 dataset .create ()
5264 self .to_delete .append (dataset )
53- other = CLIENT .dataset (DATASET_NAME )
65+ other = Config . CLIENT .dataset (DATASET_NAME )
5466 other .reload ()
5567 self .assertEqual (other .friendly_name , 'Friendly' )
5668 self .assertEqual (other .description , 'Description' )
5769
5870 def test_patch_dataset (self ):
59- dataset = CLIENT .dataset (DATASET_NAME )
71+ dataset = Config . CLIENT .dataset (DATASET_NAME )
6072 self .assertFalse (dataset .exists ())
6173 dataset .create ()
6274 self .to_delete .append (dataset )
@@ -68,7 +80,7 @@ def test_patch_dataset(self):
6880 self .assertEqual (dataset .description , 'Description' )
6981
7082 def test_update_dataset (self ):
71- dataset = CLIENT .dataset (DATASET_NAME )
83+ dataset = Config . CLIENT .dataset (DATASET_NAME )
7284 self .assertFalse (dataset .exists ())
7385 dataset .create ()
7486 self .to_delete .append (dataset )
@@ -90,20 +102,20 @@ def test_list_datasets(self):
90102 'newest%d' % (1000 * time .time (),),
91103 ]
92104 for dataset_name in datasets_to_create :
93- dataset = CLIENT .dataset (dataset_name )
105+ dataset = Config . CLIENT .dataset (dataset_name )
94106 dataset .create ()
95107 self .to_delete .append (dataset )
96108
97109 # Retrieve the datasets.
98- all_datasets , token = CLIENT .list_datasets ()
110+ all_datasets , token = Config . CLIENT .list_datasets ()
99111 self .assertTrue (token is None )
100112 created = [dataset for dataset in all_datasets
101113 if dataset .name in datasets_to_create and
102- dataset .project == CLIENT .project ]
114+ dataset .project == Config . CLIENT .project ]
103115 self .assertEqual (len (created ), len (datasets_to_create ))
104116
105117 def test_create_table (self ):
106- dataset = CLIENT .dataset (DATASET_NAME )
118+ dataset = Config . CLIENT .dataset (DATASET_NAME )
107119 self .assertFalse (dataset .exists ())
108120 dataset .create ()
109121 self .to_delete .append (dataset )
@@ -119,7 +131,7 @@ def test_create_table(self):
119131 self .assertEqual (table .name , TABLE_NAME )
120132
121133 def test_list_tables (self ):
122- dataset = CLIENT .dataset (DATASET_NAME )
134+ dataset = Config . CLIENT .dataset (DATASET_NAME )
123135 self .assertFalse (dataset .exists ())
124136 dataset .create ()
125137 self .to_delete .append (dataset )
@@ -145,7 +157,7 @@ def test_list_tables(self):
145157 self .assertEqual (len (created ), len (tables_to_create ))
146158
147159 def test_patch_table (self ):
148- dataset = CLIENT .dataset (DATASET_NAME )
160+ dataset = Config . CLIENT .dataset (DATASET_NAME )
149161 self .assertFalse (dataset .exists ())
150162 dataset .create ()
151163 self .to_delete .append (dataset )
@@ -165,7 +177,7 @@ def test_patch_table(self):
165177 self .assertEqual (table .description , 'Description' )
166178
167179 def test_update_table (self ):
168- dataset = CLIENT .dataset (DATASET_NAME )
180+ dataset = Config . CLIENT .dataset (DATASET_NAME )
169181 self .assertFalse (dataset .exists ())
170182 dataset .create ()
171183 self .to_delete .append (dataset )
@@ -203,7 +215,7 @@ def test_load_table_then_dump_table(self):
203215 ('Bhettye Rhubble' , 27 , None ),
204216 ]
205217 ROW_IDS = range (len (ROWS ))
206- dataset = CLIENT .dataset (DATASET_NAME )
218+ dataset = Config . CLIENT .dataset (DATASET_NAME )
207219 self .assertFalse (dataset .exists ())
208220 dataset .create ()
209221 self .to_delete .append (dataset )
@@ -270,7 +282,7 @@ def test_load_table_from_storage_then_dump_table(self):
270282
271283 self .to_delete .insert (0 , blob )
272284
273- dataset = CLIENT .dataset (DATASET_NAME )
285+ dataset = Config . CLIENT .dataset (DATASET_NAME )
274286 dataset .create ()
275287 self .to_delete .append (dataset )
276288
@@ -281,7 +293,7 @@ def test_load_table_from_storage_then_dump_table(self):
281293 table .create ()
282294 self .to_delete .insert (0 , table )
283295
284- job = CLIENT .load_table_from_storage (
296+ job = Config . CLIENT .load_table_from_storage (
285297 'bq_load_storage_test_%d' % (TIMESTAMP ,), table , GS_URL )
286298 job .create_disposition = 'CREATE_NEVER'
287299 job .skip_leading_rows = 1
0 commit comments