File tree Expand file tree Collapse file tree 2 files changed +67
-0
lines changed
Expand file tree Collapse file tree 2 files changed +67
-0
lines changed Original file line number Diff line number Diff line change 1+ # Copyright 2025 Google LLC
2+ #
3+ # Licensed under the Apache License, Version 2.0 (the "License");
4+ # you may not use this file except in compliance with the License.
5+ # You may obtain a copy of the License at
6+ #
7+ # https://www.apache.org/licenses/LICENSE-2.0
8+ #
9+ # Unless required by applicable law or agreed to in writing, software
10+ # distributed under the License is distributed on an "AS IS" BASIS,
11+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+ # See the License for the specific language governing permissions and
13+ # limitations under the License.
14+
15+
16+ def label_job () -> None :
17+ # [START bigquery_label_job]
18+ from google .cloud import bigquery
19+
20+ client = bigquery .Client ()
21+
22+ sql = """
23+ SELECT corpus
24+ FROM `bigquery-public-data.samples.shakespeare`
25+ GROUP BY corpus;
26+ """
27+ labels = {"color" : "green" }
28+
29+ config = bigquery .QueryJobConfig ()
30+ config .labels = labels
31+ location = "us"
32+ job = client .query (sql , location = location , job_config = config )
33+ job_id = job .job_id
34+
35+ print (f"Added { job .labels } to { job_id } ." )
36+ # [END bigquery_label_job]
Original file line number Diff line number Diff line change 1+ # Copyright 2025 Google LLC
2+ #
3+ # Licensed under the Apache License, Version 2.0 (the "License");
4+ # you may not use this file except in compliance with the License.
5+ # You may obtain a copy of the License at
6+ #
7+ # https://www.apache.org/licenses/LICENSE-2.0
8+ #
9+ # Unless required by applicable law or agreed to in writing, software
10+ # distributed under the License is distributed on an "AS IS" BASIS,
11+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+ # See the License for the specific language governing permissions and
13+ # limitations under the License.
14+
15+ import typing
16+
17+ import label_job # type: ignore
18+
19+
20+ if typing .TYPE_CHECKING :
21+ import pytest
22+
23+
24+ def test_label_job (
25+ capsys : "pytest.CaptureFixture[str]" ,
26+ ) -> None :
27+ label_job .label_job ()
28+
29+ out , _ = capsys .readouterr ()
30+ assert "color" in out
31+ assert "green" in out
You can’t perform that action at this time.
0 commit comments