Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion doc/changes/unreleased.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,5 @@

## Refactoring

- #52: Enabled Type Checking for the Project
- #52: Enabled Type Checking for the Project
- #63: Removed legacy module
16 changes: 6 additions & 10 deletions exasol/error/_error.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import warnings
from dataclasses import dataclass
from typing import (
Any,
Expand All @@ -9,20 +8,17 @@
Union,
)

from exasol.error import _exa_error
from exasol.error._error_message_builder import (
ErrorMessageBuilder,
InvalidErrorCode,
)
from exasol.error._internal_errors import (
INVALID_ERROR_CODE,
LIBRARY_ERRORS,
UNKNOWN_EXCEPTION_OCCURED,
)

with warnings.catch_warnings():
warnings.simplefilter("ignore")
from exasol_error_reporting_python import exa_error
from exasol_error_reporting_python.error_message_builder import (
ErrorMessageBuilder,
InvalidErrorCode,
)


@dataclass(frozen=True)
class Parameter:
Expand All @@ -40,7 +36,7 @@ def __init__(
) -> None:
# This function maybe flattened into or moved out of the constructor in the future.
def build_error(code, msg, mitigations, params) -> ErrorMessageBuilder:
builder = exa_error.ExaError.message_builder(code)
builder = _exa_error.ExaError.message_builder(code)
builder.message(msg)

for mitigation in mitigations:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
Optional,
)

from exasol_error_reporting_python.parameters_mapper import ParametersMapper
from exasol_error_reporting_python.placeholder_handler import PlaceholderHandler
from exasol.error._parameters_mapper import ParametersMapper
from exasol.error._placeholder_handler import PlaceholderHandler

ERROR_CODE_FORMAT = "^[FEW]-[A-Z][A-Z0-9]+(-[A-Z][A-Z0-9]+)*-[0-9]+$"

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from exasol_error_reporting_python.error_message_builder import ErrorMessageBuilder
from exasol.error._error_message_builder import ErrorMessageBuilder


class ExaError:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
Optional,
)

from exasol_error_reporting_python.placeholder_handler import PlaceholderHandler
from exasol.error._placeholder_handler import PlaceholderHandler


class ParametersMapper:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
Iterable,
)

from exasol_error_reporting_python.placeholder import Placeholder
from exasol.error._placeholder import Placeholder


class PlaceholderHandler:
Expand Down
17 changes: 0 additions & 17 deletions exasol_error_reporting_python/__init__.py

This file was deleted.

447 changes: 250 additions & 197 deletions poetry.lock

Large diffs are not rendered by default.

6 changes: 2 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
[tool.poetry]
name = "exasol-error-reporting"
packages = [
{include = "exasol"},
{include = "exasol_error_reporting_python"}
{include = "exasol"}
]
version = "0.5.0"
description = "Exasol Python Error Reporting"
Expand Down Expand Up @@ -42,8 +41,7 @@ ec = 'exasol.error._cli:main'
[tool.coverage.run]
relative_files = true
source = [
"exasol",
"exasol_error_reporting_python",
"exasol"
]

[tool.coverage.report]
Expand Down
13 changes: 2 additions & 11 deletions test/unit/error_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ def test_exa_error_does_not_throw_error_on_invalid(data):
def test_raising_message_builder(data):
from unittest.mock import patch

from exasol_error_reporting_python.exa_error import ExaError as Error
from exasol.error._exa_error import ExaError as Error

actual_impl = Error.message_builder

Expand All @@ -123,7 +123,7 @@ def builder(error_code):
return actual_impl(error_code)
raise Exception(f"{error_code}")

with patch("exasol_error_reporting_python.exa_error.ExaError") as mock:
with patch("exasol.error._exa_error.ExaError") as mock:
mock.message_builder = builder
error = ExaError(data.code, data.message, data.mitigations, data.parameters)
actual = str(error)
Expand All @@ -135,12 +135,3 @@ def builder(error_code):
"""
)
assert expected in actual


def test_using_the_old_api_produces_deprecation_warning():
with pytest.warns(DeprecationWarning):
# due to the fact that the exasol.error package already imports the package at an earlier stage
# we need to ensure the module is imported during the test itself.
import exasol_error_reporting_python

importlib.reload(exasol_error_reporting_python)
2 changes: 1 addition & 1 deletion test/unit/legacy/test_error_code_format.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import pytest

from exasol_error_reporting_python.error_message_builder import (
from exasol.error._error_message_builder import (
ErrorMessageBuilder,
InvalidErrorCode,
)
Expand Down
2 changes: 1 addition & 1 deletion test/unit/legacy/test_error_message_builder.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from exasol_error_reporting_python.error_message_builder import ErrorMessageBuilder
from exasol.error._error_message_builder import ErrorMessageBuilder


def test_message():
Expand Down
2 changes: 1 addition & 1 deletion test/unit/legacy/test_exa_error.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from exasol_error_reporting_python.exa_error import ExaError
from exasol.error._exa_error import ExaError


def test_message_builder():
Expand Down