@@ -125,133 +125,6 @@ def test_create_client_default_credentials():
125
125
assert client is not None
126
126
127
127
128
- def test_list_datasets_by_label (client , to_delete ):
129
- dataset_id = "list_datasets_by_label_{}" .format (_millis ())
130
- dataset = bigquery .Dataset (client .dataset (dataset_id ))
131
- dataset .labels = {"color" : "green" }
132
- dataset = client .create_dataset (dataset ) # API request
133
- to_delete .append (dataset )
134
-
135
- # [START bigquery_list_datasets_by_label]
136
- # from google.cloud import bigquery
137
- # client = bigquery.Client()
138
-
139
- # The following label filter example will find datasets with an
140
- # arbitrary 'color' label set to 'green'
141
- label_filter = "labels.color:green"
142
- datasets = list (client .list_datasets (filter = label_filter ))
143
-
144
- if datasets :
145
- print ("Datasets filtered by {}:" .format (label_filter ))
146
- for dataset in datasets : # API request(s)
147
- print ("\t {}" .format (dataset .dataset_id ))
148
- else :
149
- print ("No datasets found with this filter." )
150
- # [END bigquery_list_datasets_by_label]
151
- found = set ([dataset .dataset_id for dataset in datasets ])
152
- assert dataset_id in found
153
-
154
-
155
- # [START bigquery_dataset_exists]
156
- def dataset_exists (client , dataset_reference ):
157
- """Return if a dataset exists.
158
-
159
- Args:
160
- client (google.cloud.bigquery.client.Client):
161
- A client to connect to the BigQuery API.
162
- dataset_reference (google.cloud.bigquery.dataset.DatasetReference):
163
- A reference to the dataset to look for.
164
-
165
- Returns:
166
- bool: ``True`` if the dataset exists, ``False`` otherwise.
167
- """
168
- from google .cloud .exceptions import NotFound
169
-
170
- try :
171
- client .get_dataset (dataset_reference )
172
- return True
173
- except NotFound :
174
- return False
175
-
176
-
177
- # [END bigquery_dataset_exists]
178
-
179
-
180
- def test_dataset_exists (client , to_delete ):
181
- """Determine if a dataset exists."""
182
- DATASET_ID = "get_table_dataset_{}" .format (_millis ())
183
- dataset_ref = client .dataset (DATASET_ID )
184
- dataset = bigquery .Dataset (dataset_ref )
185
- dataset = client .create_dataset (dataset )
186
- to_delete .append (dataset )
187
-
188
- assert dataset_exists (client , dataset_ref )
189
- assert not dataset_exists (client , client .dataset ("i_dont_exist" ))
190
-
191
-
192
- @pytest .mark .skip (
193
- reason = (
194
- "update_dataset() is flaky "
195
- "https://github.com/GoogleCloudPlatform/google-cloud-python/issues/5588"
196
- )
197
- )
198
- def test_manage_dataset_labels (client , to_delete ):
199
- dataset_id = "label_dataset_{}" .format (_millis ())
200
- dataset = bigquery .Dataset (client .dataset (dataset_id ))
201
- dataset = client .create_dataset (dataset )
202
- to_delete .append (dataset )
203
-
204
- # [START bigquery_label_dataset]
205
- # from google.cloud import bigquery
206
- # client = bigquery.Client()
207
- # dataset_ref = client.dataset('my_dataset')
208
- # dataset = client.get_dataset(dataset_ref) # API request
209
-
210
- assert dataset .labels == {}
211
- labels = {"color" : "green" }
212
- dataset .labels = labels
213
-
214
- dataset = client .update_dataset (dataset , ["labels" ]) # API request
215
-
216
- assert dataset .labels == labels
217
- # [END bigquery_label_dataset]
218
-
219
- # [START bigquery_get_dataset_labels]
220
- # from google.cloud import bigquery
221
- # client = bigquery.Client()
222
- # dataset_id = 'my_dataset'
223
-
224
- dataset_ref = client .dataset (dataset_id )
225
- dataset = client .get_dataset (dataset_ref ) # API request
226
-
227
- # View dataset labels
228
- print ("Dataset ID: {}" .format (dataset_id ))
229
- print ("Labels:" )
230
- if dataset .labels :
231
- for label , value in dataset .labels .items ():
232
- print ("\t {}: {}" .format (label , value ))
233
- else :
234
- print ("\t Dataset has no labels defined." )
235
- # [END bigquery_get_dataset_labels]
236
- assert dataset .labels == labels
237
-
238
- # [START bigquery_delete_label_dataset]
239
- # from google.cloud import bigquery
240
- # client = bigquery.Client()
241
- # dataset_ref = client.dataset('my_dataset')
242
- # dataset = client.get_dataset(dataset_ref) # API request
243
-
244
- # This example dataset starts with one label
245
- assert dataset .labels == {"color" : "green" }
246
- # To delete a label from a dataset, set its value to None
247
- dataset .labels ["color" ] = None
248
-
249
- dataset = client .update_dataset (dataset , ["labels" ]) # API request
250
-
251
- assert dataset .labels == {}
252
- # [END bigquery_delete_label_dataset]
253
-
254
-
255
128
def test_create_table_nested_repeated_schema (client , to_delete ):
256
129
dataset_id = "create_table_nested_repeated_{}" .format (_millis ())
257
130
dataset_ref = client .dataset (dataset_id )
@@ -612,43 +485,6 @@ def test_update_table_expiration(client, to_delete):
612
485
# [END bigquery_update_table_expiration]
613
486
614
487
615
- @pytest .mark .skip (
616
- reason = (
617
- "update_table() is flaky "
618
- "https://github.com/GoogleCloudPlatform/google-cloud-python/issues/5589"
619
- )
620
- )
621
- def test_add_empty_column (client , to_delete ):
622
- """Adds an empty column to an existing table."""
623
- dataset_id = "add_empty_column_dataset_{}" .format (_millis ())
624
- table_id = "add_empty_column_table_{}" .format (_millis ())
625
- dataset = bigquery .Dataset (client .dataset (dataset_id ))
626
- dataset = client .create_dataset (dataset )
627
- to_delete .append (dataset )
628
-
629
- table = bigquery .Table (dataset .table (table_id ), schema = SCHEMA )
630
- table = client .create_table (table )
631
-
632
- # [START bigquery_add_empty_column]
633
- # from google.cloud import bigquery
634
- # client = bigquery.Client()
635
- # dataset_id = 'my_dataset'
636
- # table_id = 'my_table'
637
-
638
- table_ref = client .dataset (dataset_id ).table (table_id )
639
- table = client .get_table (table_ref ) # API request
640
-
641
- original_schema = table .schema
642
- new_schema = original_schema [:] # creates a copy of the schema
643
- new_schema .append (bigquery .SchemaField ("phone" , "STRING" ))
644
-
645
- table .schema = new_schema
646
- table = client .update_table (table , ["schema" ]) # API request
647
-
648
- assert len (table .schema ) == len (original_schema ) + 1 == len (new_schema )
649
- # [END bigquery_add_empty_column]
650
-
651
-
652
488
@pytest .mark .skip (
653
489
reason = (
654
490
"update_table() is flaky "
@@ -737,47 +573,6 @@ def test_update_table_cmek(client, to_delete):
737
573
# [END bigquery_update_table_cmek]
738
574
739
575
740
- def test_browse_table_data (client , to_delete , capsys ):
741
- """Retreive selected row data from a table."""
742
-
743
- # [START bigquery_browse_table]
744
- # from google.cloud import bigquery
745
- # client = bigquery.Client()
746
-
747
- dataset_ref = client .dataset ("samples" , project = "bigquery-public-data" )
748
- table_ref = dataset_ref .table ("shakespeare" )
749
- table = client .get_table (table_ref ) # API call
750
-
751
- # Load all rows from a table
752
- rows = client .list_rows (table )
753
- assert len (list (rows )) == table .num_rows
754
-
755
- # Load the first 10 rows
756
- rows = client .list_rows (table , max_results = 10 )
757
- assert len (list (rows )) == 10
758
-
759
- # Specify selected fields to limit the results to certain columns
760
- fields = table .schema [:2 ] # first two columns
761
- rows = client .list_rows (table , selected_fields = fields , max_results = 10 )
762
- assert len (rows .schema ) == 2
763
- assert len (list (rows )) == 10
764
-
765
- # Use the start index to load an arbitrary portion of the table
766
- rows = client .list_rows (table , start_index = 10 , max_results = 10 )
767
-
768
- # Print row data in tabular format
769
- format_string = "{!s:<16} " * len (rows .schema )
770
- field_names = [field .name for field in rows .schema ]
771
- print (format_string .format (* field_names )) # prints column headers
772
- for row in rows :
773
- print (format_string .format (* row )) # prints row data
774
- # [END bigquery_browse_table]
775
-
776
- out , err = capsys .readouterr ()
777
- out = list (filter (bool , out .split ("\n " ))) # list of non-blank lines
778
- assert len (out ) == 11
779
-
780
-
781
576
@pytest .mark .skip (
782
577
reason = (
783
578
"update_table() is flaky "
0 commit comments