def test_visit_table_ref_populates_column_mapping(self, mock, mock_lget): converter = StatementToPlanConvertor() converter._populate_column_map = MagicMock() table_ref = TableRef(TableInfo("test")) converter.visit_table_ref(table_ref) converter._populate_column_map.assert_called_with(mock.return_value)
def test_visit_table_ref_should_create_logical_get_opr( self, mock, mock_lget): converter = StatementToPlanConvertor() table_ref = TableRef(TableInfo("test")) converter.visit_table_ref(table_ref) mock.assert_called_with(table_ref.table_info) mock_lget.assert_called_with(table_ref, mock.return_value) self.assertEqual(mock_lget.return_value, converter._plan)
def test_visit_select_should_not_call_visits_for_null_values(self): converter = StatementToPlanConvertor() converter.visit_table_ref = MagicMock() converter._visit_projection = MagicMock() converter._visit_select_predicate = MagicMock() statement = SelectStatement() converter.visit_select(statement) converter.visit_table_ref.assert_not_called() converter._visit_projection.assert_not_called() converter._visit_select_predicate.assert_not_called()
def test_visit_select_should_call_appropriate_visit_methods(self): converter = StatementToPlanConvertor() converter.visit_table_ref = MagicMock() converter._visit_projection = MagicMock() converter._visit_select_predicate = MagicMock() statement = MagicMock() converter.visit_select(statement) converter.visit_table_ref.assert_called_with(statement.from_table) converter._visit_projection.assert_called_with(statement.target_list) converter._visit_select_predicate.assert_called_with( statement.where_clause)