Skip to content

Commit

Permalink
Disable remaing failing SQLA compliance tests
Browse files Browse the repository at this point in the history
See also:

* #341
* #342
  • Loading branch information
Nicoretti committed May 23, 2023
1 parent dcff405 commit 89388e8
Showing 1 changed file with 75 additions and 1 deletion.
76 changes: 75 additions & 1 deletion test/integration/sqlalchemy/test_suite.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@
create_engine,
testing,
)
from sqlalchemy.testing.suite import CastTypeDecoratorTest as _CastTypeDecoratorTest
from sqlalchemy.testing.suite import ComponentReflectionTest as _ComponentReflectionTest
from sqlalchemy.testing.suite import CompoundSelectTest as _CompoundSelectTest
from sqlalchemy.testing.suite import DifficultParametersTest as _DifficultParametersTest
from sqlalchemy.testing.suite import ExceptionTest as _ExceptionTest
from sqlalchemy.testing.suite import ExistsTest as _ExistsTest
from sqlalchemy.testing.suite import ExpandingBoundInTest as _ExpandingBoundInTest
from sqlalchemy.testing.suite import HasIndexTest as _HasIndexTest
from sqlalchemy.testing.suite import HasTableTest as _HasTableTest
Expand All @@ -23,6 +25,34 @@
LongNameBlowoutTest as _LongNameBlowoutTest,
)

# Please remove override(s) once https://github.com/exasol/sqlalchemy-exasol/issues/341 is fixed.
ISSUE_341 = pytest.mark.xfail(
"websocket" in testing.db.dialect.driver,
reason="Not implemented yet see also https://github.com/exasol/sqlalchemy-exasol/issues/341",
)

# Please remove override(s) once https://github.com/exasol/sqlalchemy-exasol/issues/342 is fixed.
ISSUE_342 = pytest.mark.xfail(
"websocket" in testing.db.dialect.driver,
reason="Not implemented yet see also https://github.com/exasol/sqlalchemy-exasol/issues/342",
)


class CastTypeDecoratorTest(_CastTypeDecoratorTest):
@ISSUE_341
def test_special_type(self, metadata, connection, string_as_int):
super().test_special_type(metadata, connection, string_as_int)


class ExistsTest(_ExistsTest):
@ISSUE_341
def test_select_exists(self, connection):
super().test_select_exists(connection)

@ISSUE_341
def test_select_exists_false(self, connection):
super().test_select_exists_false(connection)


class RowFetchTest(_RowFetchTest):
RATIONAL = cleandoc(
Expand Down Expand Up @@ -66,6 +96,7 @@ def test_has_table_view_schema(self, connection):


class InsertBehaviorTest(_InsertBehaviorTest):
@ISSUE_342
@pytest.mark.xfail(
"turbodbc" in testing.db.dialect.driver,
reason=cleandoc(
Expand All @@ -81,6 +112,16 @@ class InsertBehaviorTest(_InsertBehaviorTest):
def test_empty_insert_multiple(self, connection):
super().test_empty_insert_multiple(connection)

@ISSUE_341
@requirements.insert_from_select
def test_insert_from_select(self, connection):
super().test_insert_from_select(connection)

@ISSUE_341
@requirements.insert_from_select
def test_insert_from_select_with_defaults(self, connection):
super().test_insert_from_select_with_defaults(connection)


class RowCountTest(_RowCountTest):
PYODBC_RATIONALE = cleandoc(
Expand Down Expand Up @@ -279,7 +320,40 @@ class NumericTest(_NumericTest):
)
)
def test_decimal_coerce_round_trip(self):
return
super().test_decimal_coerce_round_trip()

@ISSUE_342
@testing.emits_warning(r".*does \*not\* support Decimal objects natively")
def test_render_literal_numeric_asfloat(self, literal_round_trip):
super().test_render_literal_numeric_asfloat(literal_round_trip)

@ISSUE_342
def test_numeric_as_float(self, do_numeric_test):
super().test_numeric_as_float(do_numeric_test)

@ISSUE_341
@testing.requires.precision_generic_float_type
def test_float_custom_scale(self, do_numeric_test):
super().test_float_custom_scale(do_numeric_test)

@ISSUE_342
@testing.requires.implicit_decimal_binds
@testing.emits_warning(r".*does \*not\* support Decimal objects natively")
def test_decimal_coerce_round_trip(self, connection):
super().test_decimal_coerce_round_trip(connection)

@ISSUE_341
def test_float_as_float(self, do_numeric_test):
super().test_float_as_float(do_numeric_test)

@ISSUE_341
@testing.requires.floats_to_four_decimals
def test_float_as_decimal(self, do_numeric_test):
super().test_float_as_decimal(do_numeric_test)

@ISSUE_342
def test_float_coerce_round_trip(self, connection):
super().test_float_coerce_round_trip(connection)


class QuotedNameArgumentTest(_QuotedNameArgumentTest):
Expand Down

0 comments on commit 89388e8

Please sign in to comment.