2222from gcloud import bigquery
2323
2424
25- _helpers .PROJECT = TESTS_PROJECT
2625DATASET_NAME = 'system_tests_%012d' % (1000 * time .time (),)
2726
2827
29- class TestBigQuery (unittest2 .TestCase ):
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+
3036
31- @classmethod
32- def setUpClass (cls ):
33- cls .client = bigquery .Client ()
37+ def setUpModule ():
38+ _helpers .PROJECT = TESTS_PROJECT
39+ Config .CLIENT = bigquery .Client ()
40+
41+
42+ class TestBigQuery (unittest2 .TestCase ):
3443
3544 def setUp (self ):
3645 self .to_delete = []
@@ -40,26 +49,26 @@ def tearDown(self):
4049 doomed .delete ()
4150
4251 def test_create_dataset (self ):
43- dataset = self . client .dataset (DATASET_NAME )
52+ dataset = Config . CLIENT .dataset (DATASET_NAME )
4453 self .assertFalse (dataset .exists ())
4554 dataset .create ()
4655 self .to_delete .append (dataset )
4756 self .assertTrue (dataset .exists ())
4857 self .assertEqual (dataset .name , DATASET_NAME )
4958
5059 def test_reload_dataset (self ):
51- dataset = self . client .dataset (DATASET_NAME )
60+ dataset = Config . CLIENT .dataset (DATASET_NAME )
5261 dataset .friendly_name = 'Friendly'
5362 dataset .description = 'Description'
5463 dataset .create ()
5564 self .to_delete .append (dataset )
56- other = self . client .dataset (DATASET_NAME )
65+ other = Config . CLIENT .dataset (DATASET_NAME )
5766 other .reload ()
5867 self .assertEqual (other .friendly_name , 'Friendly' )
5968 self .assertEqual (other .description , 'Description' )
6069
6170 def test_patch_dataset (self ):
62- dataset = self . client .dataset (DATASET_NAME )
71+ dataset = Config . CLIENT .dataset (DATASET_NAME )
6372 self .assertFalse (dataset .exists ())
6473 dataset .create ()
6574 self .to_delete .append (dataset )
@@ -71,7 +80,7 @@ def test_patch_dataset(self):
7180 self .assertEqual (dataset .description , 'Description' )
7281
7382 def test_update_dataset (self ):
74- dataset = self . client .dataset (DATASET_NAME )
83+ dataset = Config . CLIENT .dataset (DATASET_NAME )
7584 self .assertFalse (dataset .exists ())
7685 dataset .create ()
7786 self .to_delete .append (dataset )
@@ -93,20 +102,20 @@ def test_list_datasets(self):
93102 'newest%d' % (1000 * time .time (),),
94103 ]
95104 for dataset_name in datasets_to_create :
96- dataset = self . client .dataset (dataset_name )
105+ dataset = Config . CLIENT .dataset (dataset_name )
97106 dataset .create ()
98107 self .to_delete .append (dataset )
99108
100109 # Retrieve the datasets.
101- all_datasets , token = self . client .list_datasets ()
110+ all_datasets , token = Config . CLIENT .list_datasets ()
102111 self .assertTrue (token is None )
103112 created = [dataset for dataset in all_datasets
104113 if dataset .name in datasets_to_create and
105- dataset .project == self . client .project ]
114+ dataset .project == Config . CLIENT .project ]
106115 self .assertEqual (len (created ), len (datasets_to_create ))
107116
108117 def test_create_table (self ):
109- dataset = self . client .dataset (DATASET_NAME )
118+ dataset = Config . CLIENT .dataset (DATASET_NAME )
110119 self .assertFalse (dataset .exists ())
111120 dataset .create ()
112121 self .to_delete .append (dataset )
@@ -122,7 +131,7 @@ def test_create_table(self):
122131 self .assertEqual (table .name , TABLE_NAME )
123132
124133 def test_list_tables (self ):
125- dataset = self . client .dataset (DATASET_NAME )
134+ dataset = Config . CLIENT .dataset (DATASET_NAME )
126135 self .assertFalse (dataset .exists ())
127136 dataset .create ()
128137 self .to_delete .append (dataset )
@@ -148,7 +157,7 @@ def test_list_tables(self):
148157 self .assertEqual (len (created ), len (tables_to_create ))
149158
150159 def test_patch_table (self ):
151- dataset = self . client .dataset (DATASET_NAME )
160+ dataset = Config . CLIENT .dataset (DATASET_NAME )
152161 self .assertFalse (dataset .exists ())
153162 dataset .create ()
154163 self .to_delete .append (dataset )
@@ -168,7 +177,7 @@ def test_patch_table(self):
168177 self .assertEqual (table .description , 'Description' )
169178
170179 def test_update_table (self ):
171- dataset = self . client .dataset (DATASET_NAME )
180+ dataset = Config . CLIENT .dataset (DATASET_NAME )
172181 self .assertFalse (dataset .exists ())
173182 dataset .create ()
174183 self .to_delete .append (dataset )
@@ -206,7 +215,7 @@ def test_load_table_then_dump_table(self):
206215 ('Bhettye Rhubble' , 27 , None ),
207216 ]
208217 ROW_IDS = range (len (ROWS ))
209- dataset = self . client .dataset (DATASET_NAME )
218+ dataset = Config . CLIENT .dataset (DATASET_NAME )
210219 self .assertFalse (dataset .exists ())
211220 dataset .create ()
212221 self .to_delete .append (dataset )
@@ -273,7 +282,7 @@ def test_load_table_from_storage_then_dump_table(self):
273282
274283 self .to_delete .insert (0 , blob )
275284
276- dataset = self . client .dataset (DATASET_NAME )
285+ dataset = Config . CLIENT .dataset (DATASET_NAME )
277286 dataset .create ()
278287 self .to_delete .append (dataset )
279288
@@ -284,7 +293,7 @@ def test_load_table_from_storage_then_dump_table(self):
284293 table .create ()
285294 self .to_delete .insert (0 , table )
286295
287- job = self . client .load_table_from_storage (
296+ job = Config . CLIENT .load_table_from_storage (
288297 'bq_load_storage_test_%d' % (TIMESTAMP ,), table , GS_URL )
289298 job .create_disposition = 'CREATE_NEVER'
290299 job .skip_leading_rows = 1
0 commit comments