示例#1
0
 def testMockFusionTooFew(self):
     with self.assertRaises(mock.ExpectedRequestsException):
         with mock.Client(fusiontables.FusiontablesV1) as client_class:
             client_class.column.List.Expect(request=1, response=2)
             client_class.column.List.Expect(request=2, response=1)
             client = fusiontables.FusiontablesV1(get_credentials=False)
             self.assertEqual(client.column.List(1), 2)
示例#2
0
    def testYieldFromListPartial(self):
        self.mocked_client.column.List.Expect(
            fusiontables.FusiontablesColumnListRequest(
                maxResults=100,
                pageToken=None,
                tableId='mytable',
            ),
            fusiontables.ColumnList(
                items=[
                    fusiontables.Column(name='c0'),
                    fusiontables.Column(name='c1'),
                    fusiontables.Column(name='c2'),
                    fusiontables.Column(name='c3'),
                ],
                nextPageToken='x',
            ))
        self.mocked_client.column.List.Expect(
            fusiontables.FusiontablesColumnListRequest(
                maxResults=100,
                pageToken='x',
                tableId='mytable',
            ),
            fusiontables.ColumnList(items=[
                fusiontables.Column(name='c4'),
                fusiontables.Column(name='c5'),
                fusiontables.Column(name='c6'),
                fusiontables.Column(name='c7'),
            ], ))

        client = fusiontables.FusiontablesV1(get_credentials=False)
        request = fusiontables.FusiontablesColumnListRequest(tableId='mytable')
        results = list_pager.YieldFromList(client.column, request, limit=6)

        self._AssertInstanceSequence(results, 6)
示例#3
0
 def testMockFusionOrder(self):
     with mock.Client(fusiontables.FusiontablesV1) as client_class:
         client_class.column.List.Expect(request=1, response=2)
         client_class.column.List.Expect(request=2, response=1)
         client = fusiontables.FusiontablesV1(get_credentials=False)
         self.assertEqual(client.column.List(1), 2)
         self.assertEqual(client.column.List(2), 1)
示例#4
0
    def testYieldFromListWithAttributes(self):
        self.mocked_client.columnalternate.List.Expect(
            fusiontables.FusiontablesColumnListAlternateRequest(
                pageSize=100,
                pageToken=None,
                tableId='mytable',
            ),
            fusiontables.ColumnListAlternate(
                columns=[
                    fusiontables.Column(name='c0'),
                    fusiontables.Column(name='c1'),
                ],
                nextPageToken='x',
            ))
        self.mocked_client.columnalternate.List.Expect(
            fusiontables.FusiontablesColumnListAlternateRequest(
                pageSize=100,
                pageToken='x',
                tableId='mytable',
            ),
            fusiontables.ColumnListAlternate(columns=[
                fusiontables.Column(name='c2'),
            ], ))

        client = fusiontables.FusiontablesV1(get_credentials=False)
        request = fusiontables.FusiontablesColumnListAlternateRequest(
            tableId='mytable')
        results = list_pager.YieldFromList(client.columnalternate,
                                           request,
                                           batch_size_attribute='pageSize',
                                           field='columns')

        self._AssertInstanceSequence(results, 3)
示例#5
0
    def testYieldFromListWithPredicate(self):
        self.mocked_client.column.List.Expect(
            fusiontables.FusiontablesColumnListRequest(
                maxResults=100,
                pageToken=None,
                tableId='mytable',
            ),
            fusiontables.ColumnList(
                items=[
                    fusiontables.Column(name='c0'),
                    fusiontables.Column(name='bad0'),
                    fusiontables.Column(name='c1'),
                    fusiontables.Column(name='bad1'),
                ],
                nextPageToken='x',
            ))
        self.mocked_client.column.List.Expect(
            fusiontables.FusiontablesColumnListRequest(
                maxResults=100,
                pageToken='x',
                tableId='mytable',
            ),
            fusiontables.ColumnList(items=[
                fusiontables.Column(name='c2'),
            ], ))

        client = fusiontables.FusiontablesV1(get_credentials=False)
        request = fusiontables.FusiontablesColumnListRequest(tableId='mytable')
        results = list_pager.YieldFromList(client.column,
                                           request,
                                           predicate=lambda x: 'c' in x.name)

        self._AssertInstanceSequence(results, 3)
示例#6
0
 def testMockFusionException(self):
     with mock.Client(fusiontables.FusiontablesV1) as client_class:
         client_class.column.List.Expect(request=1,
                                         exception=apitools_base.HttpError(
                                             {'status': 404}, '', ''))
         client = fusiontables.FusiontablesV1(get_credentials=False)
         with self.assertRaises(apitools_base.HttpError):
             client.column.List(1)
示例#7
0
    def testYieldFromListEmpty(self):
        self.mocked_client.column.List.Expect(
            fusiontables.FusiontablesColumnListRequest(
                maxResults=100,
                pageToken=None,
                tableId='mytable',
            ), fusiontables.ColumnList())

        client = fusiontables.FusiontablesV1(get_credentials=False)
        request = fusiontables.FusiontablesColumnListRequest(tableId='mytable')
        results = list_pager.YieldFromList(client.column, request, limit=6)

        self._AssertInstanceSequence(results, 0)
示例#8
0
 def testFusionUnmock(self):
     with mock.Client(fusiontables.FusiontablesV1):
         client = fusiontables.FusiontablesV1(get_credentials=False)
         mocked_service_type = type(client.column)
     client = fusiontables.FusiontablesV1(get_credentials=False)
     self.assertNotEqual(type(client.column), mocked_service_type)
示例#9
0
 def testYieldNoRecords(self):
     client = fusiontables.FusiontablesV1(get_credentials=False)
     request = fusiontables.FusiontablesColumnListRequest(tableId='mytable')
     results = list_pager.YieldFromList(client.column, request, limit=False)
     self.assertEqual(0, len(list(results)))