|
15 | 15 | import unittest |
16 | 16 |
|
17 | 17 |
|
18 | | -class Test_UDFResourcesProperty(unittest.TestCase): |
19 | | - |
20 | | - def _getTargetClass(self): |
21 | | - from google.cloud.bigquery.job import UDFResourcesProperty |
22 | | - return UDFResourcesProperty |
23 | | - |
24 | | - def _makeOne(self, *args, **kw): |
25 | | - return self._getTargetClass()(*args, **kw) |
26 | | - |
27 | | - def _descriptor_and_klass(self): |
28 | | - descriptor = self._makeOne() |
29 | | - |
30 | | - class _Test(object): |
31 | | - _udf_resources = () |
32 | | - udf_resources = descriptor |
33 | | - |
34 | | - return descriptor, _Test |
35 | | - |
36 | | - def test_class_getter(self): |
37 | | - descriptor, klass = self._descriptor_and_klass() |
38 | | - self.assertTrue(klass.udf_resources is descriptor) |
39 | | - |
40 | | - def test_instance_getter_empty(self): |
41 | | - _, klass = self._descriptor_and_klass() |
42 | | - instance = klass() |
43 | | - self.assertEqual(instance.udf_resources, []) |
44 | | - |
45 | | - def test_instance_getter_w_non_empty_list(self): |
46 | | - from google.cloud.bigquery.job import UDFResource |
47 | | - RESOURCE_URI = 'gs://some-bucket/js/lib.js' |
48 | | - udf_resources = [UDFResource("resourceUri", RESOURCE_URI)] |
49 | | - _, klass = self._descriptor_and_klass() |
50 | | - instance = klass() |
51 | | - instance._udf_resources = tuple(udf_resources) |
52 | | - |
53 | | - self.assertEqual(instance.udf_resources, udf_resources) |
54 | | - |
55 | | - def test_instance_setter_w_empty_list(self): |
56 | | - from google.cloud.bigquery.job import UDFResource |
57 | | - RESOURCE_URI = 'gs://some-bucket/js/lib.js' |
58 | | - udf_resources = [UDFResource("resourceUri", RESOURCE_URI)] |
59 | | - _, klass = self._descriptor_and_klass() |
60 | | - instance = klass() |
61 | | - instance._udf_resources = udf_resources |
62 | | - |
63 | | - instance.udf_resources = [] |
64 | | - |
65 | | - self.assertEqual(instance.udf_resources, []) |
66 | | - |
67 | | - def test_instance_setter_w_valid_udf(self): |
68 | | - from google.cloud.bigquery.job import UDFResource |
69 | | - RESOURCE_URI = 'gs://some-bucket/js/lib.js' |
70 | | - udf_resources = [UDFResource("resourceUri", RESOURCE_URI)] |
71 | | - _, klass = self._descriptor_and_klass() |
72 | | - instance = klass() |
73 | | - |
74 | | - instance.udf_resources = udf_resources |
75 | | - |
76 | | - self.assertEqual(instance.udf_resources, udf_resources) |
77 | | - |
78 | | - def test_instance_setter_w_bad_udfs(self): |
79 | | - _, klass = self._descriptor_and_klass() |
80 | | - instance = klass() |
81 | | - |
82 | | - with self.assertRaises(ValueError): |
83 | | - instance.udf_resources = ["foo"] |
84 | | - |
85 | | - self.assertEqual(instance.udf_resources, []) |
86 | | - |
87 | | - |
88 | 18 | class _Base(object): |
89 | 19 | PROJECT = 'project' |
90 | 20 | SOURCE1 = 'http://example.com/source1.csv' |
@@ -1466,6 +1396,14 @@ def test_from_api_repr_w_properties(self): |
1466 | 1396 | self.assertTrue(dataset._client is client) |
1467 | 1397 | self._verifyResourceProperties(dataset, RESOURCE) |
1468 | 1398 |
|
| 1399 | + def test_results(self): |
| 1400 | + from google.cloud.bigquery.query import QueryResults |
| 1401 | + client = _Client(self.PROJECT) |
| 1402 | + job = self._makeOne(self.JOB_NAME, self.QUERY, client) |
| 1403 | + results = job.results() |
| 1404 | + self.assertIsInstance(results, QueryResults) |
| 1405 | + self.assertTrue(results._job is job) |
| 1406 | + |
1469 | 1407 | def test_begin_w_bound_client(self): |
1470 | 1408 | PATH = 'projects/%s/jobs' % self.PROJECT |
1471 | 1409 | RESOURCE = self._makeResource() |
@@ -1568,7 +1506,7 @@ def test_begin_w_alternate_client(self): |
1568 | 1506 | self._verifyResourceProperties(job, RESOURCE) |
1569 | 1507 |
|
1570 | 1508 | def test_begin_w_bound_client_and_udf(self): |
1571 | | - from google.cloud.bigquery.job import UDFResource |
| 1509 | + from google.cloud.bigquery._helpers import UDFResource |
1572 | 1510 | RESOURCE_URI = 'gs://some-bucket/js/lib.js' |
1573 | 1511 | PATH = 'projects/%s/jobs' % self.PROJECT |
1574 | 1512 | RESOURCE = self._makeResource() |
|
0 commit comments