Пример #1
0
 def test_filter_clause_no_region_codes(self) -> None:
     """Given no region codes to include or exclude, it returns None."""
     query_builder = CloudSqlSchemaTableRegionFilteredQueryBuilder(StateBase, self.fake_state_table,
                                                                   self.mock_columns_to_include,
                                                                   region_codes_to_include=None,
                                                                   region_codes_to_exclude=None)
     self.assertEqual(None, query_builder.filter_clause())
Пример #2
0
 def test_filter_clause_region_codes_to_include_empty(self) -> None:
     """Given and empty list for region_codes_to_include, it returns a filter to exclude all rows."""
     query_builder = CloudSqlSchemaTableRegionFilteredQueryBuilder(StateBase, self.fake_state_table,
                                                                   self.mock_columns_to_include,
                                                                   region_codes_to_include=[],
                                                                   region_codes_to_exclude=None)
     expected_filter = "WHERE FALSE"
     self.assertEqual(expected_filter, query_builder.filter_clause())
Пример #3
0
 def test_filter_clause_region_codes_to_exclude(self) -> None:
     """Given a StateBase schema and excluded region codes, it returns a filter clause to exclude the region codes.
     """
     query_builder = CloudSqlSchemaTableRegionFilteredQueryBuilder(StateBase, self.fake_state_table,
                                                                   self.mock_columns_to_include,
                                                                   region_codes_to_exclude=['US_ND', 'US_ID'])
     expected_filter = "WHERE state_code NOT IN ('US_ND','US_ID')"
     self.assertEqual(expected_filter, query_builder.filter_clause())
Пример #4
0
 def test_filter_clause_region_codes_to_exclude_empty(self) -> None:
     """Given an empty list for excluded region codes, it returns None."""
     query_builder = CloudSqlSchemaTableRegionFilteredQueryBuilder(
         SchemaType.STATE,
         self.fake_state_table,
         self.mock_columns_to_include,
         region_codes_to_exclude=[],
     )
     self.assertEqual(None, query_builder.filter_clause())
Пример #5
0
 def test_filter_clause_region_codes_to_include(self) -> None:
     """Given a SchemaType.STATE schema and included region codes, it returns a filter clause to include
     the region codes.
     """
     query_builder = CloudSqlSchemaTableRegionFilteredQueryBuilder(
         SchemaType.STATE,
         self.fake_state_table,
         self.mock_columns_to_include,
         region_codes_to_include=["US_ND", "US_ID"],
     )
     expected_filter = "WHERE state_code IN ('US_ND','US_ID')"
     self.assertEqual(expected_filter, query_builder.filter_clause())