From 6569ca13a080b7e00afe3f4585c5c853ca3d90ad Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Mon, 27 Jul 2026 18:55:04 +0200 Subject: [PATCH 1/8] init --- diffly/__init__.py | 4 +-- diffly/_exceptions.py | 40 +++++++++++++++++++++++++++ diffly/testing.py | 37 ++++++++++++++++++++++--- tests/test_assert_collection_equal.py | 36 ++++++++++++++++++++++++ tests/test_assert_frame_equal.py | 18 +++++++++++- 5 files changed, 128 insertions(+), 7 deletions(-) diff --git a/diffly/__init__.py b/diffly/__init__.py index 27b195b..28f894e 100644 --- a/diffly/__init__.py +++ b/diffly/__init__.py @@ -11,7 +11,7 @@ __version__ = "unknown" -from ._exceptions import PrimaryKeyError +from ._exceptions import ComparisonAssertionError, PrimaryKeyError from .comparison import compare_frames -__all__ = ["PrimaryKeyError", "compare_frames"] +__all__ = ["ComparisonAssertionError", "PrimaryKeyError", "compare_frames"] diff --git a/diffly/_exceptions.py b/diffly/_exceptions.py index 81ddff4..e2d2a3b 100644 --- a/diffly/_exceptions.py +++ b/diffly/_exceptions.py @@ -1,6 +1,46 @@ # Copyright (c) QuantCo 2025-2026 # SPDX-License-Identifier: BSD-3-Clause +from __future__ import annotations + +from typing import TYPE_CHECKING + +if TYPE_CHECKING: # pragma: no cover + from .comparison import DataFrameComparison + class PrimaryKeyError(ValueError): """Raised when there is an issue with the primary key.""" + + +class ComparisonAssertionError(AssertionError): + """Raised when a diffly assertion fails. + + In addition to the human-readable summary, this error carries the underlying + comparison object(s), making interactive debugging straightforward. When a test + fails and is run with ``--pdb`` (or another post-mortem debugger), the comparison + can be accessed from the debugger prompt via the ``$_exception`` convenience + variable:: + + (Pdb) cmp = $_exception.comparison + (Pdb) cmp.joined_unequal() + (Pdb) cmp.fraction_same() + + Attributes: + comparison: The comparison for :func:`~diffly.testing.assert_frame_equal`. + ``None`` for collection comparisons. + comparisons: A mapping from member name to comparison for the failing members + of :func:`~diffly.testing.assert_collection_equal`. Empty for frame + comparisons. + """ + + def __init__( + self, + message: str, + *, + comparison: DataFrameComparison | None = None, + comparisons: dict[str, DataFrameComparison] | None = None, + ) -> None: + super().__init__(message) + self.comparison = comparison + self.comparisons = comparisons or {} diff --git a/diffly/testing.py b/diffly/testing.py index 9a36458..2bfc8f4 100644 --- a/diffly/testing.py +++ b/diffly/testing.py @@ -18,9 +18,22 @@ from diffly.summary import WIDTH from ._compat import dy +from ._exceptions import ComparisonAssertionError from .comparison import DataFrameComparison, compare_frames from .metrics import Metric, MetricFn +_DEBUG_HINT_FRAME = ( + "To debug interactively (e.g. with `pytest --pdb`), access the comparison via " + "`$_exception.comparison` at the debugger prompt or via the `.comparison` " + "attribute of this error." +) +_DEBUG_HINT_COLLECTION = ( + "To debug interactively (e.g. with `pytest --pdb`), access the failing member " + "comparisons via `$_exception.comparisons` (a mapping from member name to " + "comparison) at the debugger prompt or via the `.comparisons` attribute of this " + "error." +) + def assert_collection_equal( left: dy.Collection, @@ -92,7 +105,12 @@ def assert_collection_equal( metrics are computed; presets are not applied automatically. Raises: - AssertionError: If the collections are not equal. + ComparisonAssertionError: If the collections are not equal. This is a subclass + of :class:`AssertionError` that additionally exposes the failing member + comparisons via its ``.comparisons`` attribute (a mapping from member name + to :class:`~diffly.comparison.DataFrameComparison`). When running with + ``pytest --pdb``, access them at the debugger prompt via + ``$_exception.comparisons``. Examples: >>> import dataframely as dy @@ -154,7 +172,10 @@ def assert_collection_equal( ), " " * 2, ) - raise AssertionError(f"The following members are not equal:\n\n{text}") + raise ComparisonAssertionError( + f"The following members are not equal:\n\n{text}\n\n{_DEBUG_HINT_COLLECTION}", + comparisons=failed_member_comparisons, + ) def assert_frame_equal( @@ -235,7 +256,12 @@ def assert_frame_equal( metrics are computed; presets are not applied automatically. Raises: - AssertionError: If the data frames are not equal. + ComparisonAssertionError: If the data frames are not equal. This is a subclass + of :class:`AssertionError` that additionally exposes the underlying + :class:`~diffly.comparison.DataFrameComparison` via its ``.comparison`` + attribute. When running with ``pytest --pdb``, access it at the debugger + prompt via ``$_exception.comparison`` to explore the differences + interactively. Note: Contrary to :meth:`polars.testing.assert_frame_equal`, the data frames ``left`` @@ -281,7 +307,10 @@ def assert_frame_equal( metrics=metrics, ) text = textwrap.indent(str(summary), " " * 2) - raise AssertionError(f"Data frames are not equal:\n\n{text}") + raise ComparisonAssertionError( + f"Data frames are not equal:\n\n{text}\n\n{_DEBUG_HINT_FRAME}", + comparison=comparison, + ) def _get_heading(title: str) -> str: diff --git a/tests/test_assert_collection_equal.py b/tests/test_assert_collection_equal.py index 6edc6fa..f1f5031 100644 --- a/tests/test_assert_collection_equal.py +++ b/tests/test_assert_collection_equal.py @@ -4,6 +4,8 @@ import polars as pl import pytest +from diffly import ComparisonAssertionError +from diffly.comparison import DataFrameComparison from diffly.testing import assert_collection_equal pytest.importorskip("dataframely", reason="requires dataframely") @@ -120,6 +122,40 @@ def test_unequal_members() -> None: assert_collection_equal(qux1, qux2) +def test_error_exposes_comparisons() -> None: + qux1 = Qux.validate( + { + "foo": Foo.validate( + pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True + ), + "bar": Bar.validate( + pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True + ), + } + ) + qux2 = Qux.validate( + { + "foo": Foo.validate( + pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 4.0]}), cast=True + ), + "bar": Bar.validate( + pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True + ), + } + ) + with pytest.raises(ComparisonAssertionError) as exc_info: + assert_collection_equal(qux1, qux2) + + # A subclass of `AssertionError` for backward compatibility. + assert isinstance(exc_info.value, AssertionError) + assert exc_info.value.comparison is None + # Only the failing member is exposed, and its comparison is usable. + comparisons = exc_info.value.comparisons + assert set(comparisons) == {"foo"} + assert isinstance(comparisons["foo"], DataFrameComparison) + assert comparisons["foo"].fraction_same("value") == pytest.approx(2 / 3) + + def test_no_primary_key() -> None: no_pk_schema = create_schema("NoPKSchema", {"a": dy.Integer(nullable=True)}) collection = create_collection("Test", {"first": Foo, "second": no_pk_schema}) diff --git a/tests/test_assert_frame_equal.py b/tests/test_assert_frame_equal.py index 3e59fc2..9faf1a2 100644 --- a/tests/test_assert_frame_equal.py +++ b/tests/test_assert_frame_equal.py @@ -6,7 +6,8 @@ import polars as pl import pytest -from diffly import compare_frames +from diffly import ComparisonAssertionError, compare_frames +from diffly.comparison import DataFrameComparison from diffly.testing import assert_frame_equal @@ -60,3 +61,18 @@ def test_success_with_nan() -> None: df = pl.DataFrame({"id": [1, 2], "value": [1.0, float("nan")]}) assert_frame_equal(df, df) assert_frame_equal(df, df, primary_key="id") + + +def test_error_exposes_comparison() -> None: + left = pl.DataFrame({"id": [1, 2], "value": [10.0, 20.0]}) + right = pl.DataFrame({"id": [1, 2], "value": [10.0, 25.0]}) + with pytest.raises(ComparisonAssertionError) as exc_info: + assert_frame_equal(left, right, primary_key="id") + + # A subclass of `AssertionError` for backward compatibility. + assert isinstance(exc_info.value, AssertionError) + comparison = exc_info.value.comparison + assert isinstance(comparison, DataFrameComparison) + # The comparison is fully initialized and usable for interactive debugging. + assert comparison.fraction_same("value") == 0.5 + assert exc_info.value.comparisons == {} From 811ea8f7223e15f14dab638d28823b4af21c4792 Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Tue, 28 Jul 2026 09:11:54 +0200 Subject: [PATCH 2/8] split --- diffly/__init__.py | 15 ++++++-- diffly/_exceptions.py | 51 +++++++++++++++++---------- diffly/testing.py | 21 ++++++----- tests/test_assert_collection_equal.py | 8 ++--- tests/test_assert_frame_equal.py | 12 ++++--- 5 files changed, 70 insertions(+), 37 deletions(-) diff --git a/diffly/__init__.py b/diffly/__init__.py index 28f894e..8af9855 100644 --- a/diffly/__init__.py +++ b/diffly/__init__.py @@ -11,7 +11,18 @@ __version__ = "unknown" -from ._exceptions import ComparisonAssertionError, PrimaryKeyError +from ._exceptions import ( + CollectionComparisonAssertionError, + ComparisonAssertionError, + FrameComparisonAssertionError, + PrimaryKeyError, +) from .comparison import compare_frames -__all__ = ["ComparisonAssertionError", "PrimaryKeyError", "compare_frames"] +__all__ = [ + "CollectionComparisonAssertionError", + "ComparisonAssertionError", + "FrameComparisonAssertionError", + "PrimaryKeyError", + "compare_frames", +] diff --git a/diffly/_exceptions.py b/diffly/_exceptions.py index e2d2a3b..e1620a9 100644 --- a/diffly/_exceptions.py +++ b/diffly/_exceptions.py @@ -14,33 +14,48 @@ class PrimaryKeyError(ValueError): class ComparisonAssertionError(AssertionError): - """Raised when a diffly assertion fails. + """Base class for diffly assertion failures. - In addition to the human-readable summary, this error carries the underlying - comparison object(s), making interactive debugging straightforward. When a test - fails and is run with ``--pdb`` (or another post-mortem debugger), the comparison - can be accessed from the debugger prompt via the ``$_exception`` convenience - variable:: + The concrete subclasses carry the underlying comparison object(s), making + interactive debugging straightforward. When a test fails and is run with ``--pdb`` + (or another post-mortem debugger), the comparison can be accessed from the debugger + prompt via the ``$_exception`` convenience variable. Catch this base class to handle + both frame and collection failures. + """ + + +class FrameComparisonAssertionError(ComparisonAssertionError): + """Raised when :func:`~diffly.testing.assert_frame_equal` fails. + + Access the underlying comparison from a post-mortem debugger via:: (Pdb) cmp = $_exception.comparison (Pdb) cmp.joined_unequal() (Pdb) cmp.fraction_same() Attributes: - comparison: The comparison for :func:`~diffly.testing.assert_frame_equal`. - ``None`` for collection comparisons. - comparisons: A mapping from member name to comparison for the failing members - of :func:`~diffly.testing.assert_collection_equal`. Empty for frame - comparisons. + comparison: The comparison between the two data frames. + """ + + def __init__(self, message: str, *, comparison: DataFrameComparison) -> None: + super().__init__(message) + self.comparison = comparison + + +class CollectionComparisonAssertionError(ComparisonAssertionError): + """Raised when :func:`~diffly.testing.assert_collection_equal` fails. + + Access the failing member comparisons from a post-mortem debugger via:: + + (Pdb) cmps = $_exception.comparisons + (Pdb) cmps["some_member"].joined_unequal() + + Attributes: + comparisons: A mapping from member name to comparison for the failing members. """ def __init__( - self, - message: str, - *, - comparison: DataFrameComparison | None = None, - comparisons: dict[str, DataFrameComparison] | None = None, + self, message: str, *, comparisons: dict[str, DataFrameComparison] ) -> None: super().__init__(message) - self.comparison = comparison - self.comparisons = comparisons or {} + self.comparisons = comparisons diff --git a/diffly/testing.py b/diffly/testing.py index 2bfc8f4..b67b9bd 100644 --- a/diffly/testing.py +++ b/diffly/testing.py @@ -18,7 +18,10 @@ from diffly.summary import WIDTH from ._compat import dy -from ._exceptions import ComparisonAssertionError +from ._exceptions import ( + CollectionComparisonAssertionError, + FrameComparisonAssertionError, +) from .comparison import DataFrameComparison, compare_frames from .metrics import Metric, MetricFn @@ -105,10 +108,10 @@ def assert_collection_equal( metrics are computed; presets are not applied automatically. Raises: - ComparisonAssertionError: If the collections are not equal. This is a subclass - of :class:`AssertionError` that additionally exposes the failing member - comparisons via its ``.comparisons`` attribute (a mapping from member name - to :class:`~diffly.comparison.DataFrameComparison`). When running with + CollectionComparisonAssertionError: If the collections are not equal. This is a + subclass of :class:`AssertionError` that additionally exposes the failing + member comparisons via its ``.comparisons`` attribute (a mapping from member + name to :class:`~diffly.comparison.DataFrameComparison`). When running with ``pytest --pdb``, access them at the debugger prompt via ``$_exception.comparisons``. @@ -172,7 +175,7 @@ def assert_collection_equal( ), " " * 2, ) - raise ComparisonAssertionError( + raise CollectionComparisonAssertionError( f"The following members are not equal:\n\n{text}\n\n{_DEBUG_HINT_COLLECTION}", comparisons=failed_member_comparisons, ) @@ -256,8 +259,8 @@ def assert_frame_equal( metrics are computed; presets are not applied automatically. Raises: - ComparisonAssertionError: If the data frames are not equal. This is a subclass - of :class:`AssertionError` that additionally exposes the underlying + FrameComparisonAssertionError: If the data frames are not equal. This is a + subclass of :class:`AssertionError` that additionally exposes the underlying :class:`~diffly.comparison.DataFrameComparison` via its ``.comparison`` attribute. When running with ``pytest --pdb``, access it at the debugger prompt via ``$_exception.comparison`` to explore the differences @@ -307,7 +310,7 @@ def assert_frame_equal( metrics=metrics, ) text = textwrap.indent(str(summary), " " * 2) - raise ComparisonAssertionError( + raise FrameComparisonAssertionError( f"Data frames are not equal:\n\n{text}\n\n{_DEBUG_HINT_FRAME}", comparison=comparison, ) diff --git a/tests/test_assert_collection_equal.py b/tests/test_assert_collection_equal.py index f1f5031..011e418 100644 --- a/tests/test_assert_collection_equal.py +++ b/tests/test_assert_collection_equal.py @@ -4,7 +4,7 @@ import polars as pl import pytest -from diffly import ComparisonAssertionError +from diffly import CollectionComparisonAssertionError, ComparisonAssertionError from diffly.comparison import DataFrameComparison from diffly.testing import assert_collection_equal @@ -143,12 +143,12 @@ def test_error_exposes_comparisons() -> None: ), } ) - with pytest.raises(ComparisonAssertionError) as exc_info: + with pytest.raises(CollectionComparisonAssertionError) as exc_info: assert_collection_equal(qux1, qux2) - # A subclass of `AssertionError` for backward compatibility. + # A subclass of the shared base and of `AssertionError` for backward compatibility. + assert isinstance(exc_info.value, ComparisonAssertionError) assert isinstance(exc_info.value, AssertionError) - assert exc_info.value.comparison is None # Only the failing member is exposed, and its comparison is usable. comparisons = exc_info.value.comparisons assert set(comparisons) == {"foo"} diff --git a/tests/test_assert_frame_equal.py b/tests/test_assert_frame_equal.py index 9faf1a2..576e098 100644 --- a/tests/test_assert_frame_equal.py +++ b/tests/test_assert_frame_equal.py @@ -6,7 +6,11 @@ import polars as pl import pytest -from diffly import ComparisonAssertionError, compare_frames +from diffly import ( + ComparisonAssertionError, + FrameComparisonAssertionError, + compare_frames, +) from diffly.comparison import DataFrameComparison from diffly.testing import assert_frame_equal @@ -66,13 +70,13 @@ def test_success_with_nan() -> None: def test_error_exposes_comparison() -> None: left = pl.DataFrame({"id": [1, 2], "value": [10.0, 20.0]}) right = pl.DataFrame({"id": [1, 2], "value": [10.0, 25.0]}) - with pytest.raises(ComparisonAssertionError) as exc_info: + with pytest.raises(FrameComparisonAssertionError) as exc_info: assert_frame_equal(left, right, primary_key="id") - # A subclass of `AssertionError` for backward compatibility. + # A subclass of the shared base and of `AssertionError` for backward compatibility. + assert isinstance(exc_info.value, ComparisonAssertionError) assert isinstance(exc_info.value, AssertionError) comparison = exc_info.value.comparison assert isinstance(comparison, DataFrameComparison) # The comparison is fully initialized and usable for interactive debugging. assert comparison.fraction_same("value") == 0.5 - assert exc_info.value.comparisons == {} From 45e82927078c1dc6d9d79c63c5d0c9d111210f23 Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Tue, 28 Jul 2026 09:28:16 +0200 Subject: [PATCH 3/8] refactor --- diffly/__init__.py | 15 +------- diffly/_exceptions.py | 55 --------------------------- diffly/testing.py | 51 +++++++++++++++++++++++-- tests/test_assert_collection_equal.py | 7 +++- tests/test_assert_frame_equal.py | 8 ++-- 5 files changed, 58 insertions(+), 78 deletions(-) diff --git a/diffly/__init__.py b/diffly/__init__.py index 8af9855..27b195b 100644 --- a/diffly/__init__.py +++ b/diffly/__init__.py @@ -11,18 +11,7 @@ __version__ = "unknown" -from ._exceptions import ( - CollectionComparisonAssertionError, - ComparisonAssertionError, - FrameComparisonAssertionError, - PrimaryKeyError, -) +from ._exceptions import PrimaryKeyError from .comparison import compare_frames -__all__ = [ - "CollectionComparisonAssertionError", - "ComparisonAssertionError", - "FrameComparisonAssertionError", - "PrimaryKeyError", - "compare_frames", -] +__all__ = ["PrimaryKeyError", "compare_frames"] diff --git a/diffly/_exceptions.py b/diffly/_exceptions.py index e1620a9..81ddff4 100644 --- a/diffly/_exceptions.py +++ b/diffly/_exceptions.py @@ -1,61 +1,6 @@ # Copyright (c) QuantCo 2025-2026 # SPDX-License-Identifier: BSD-3-Clause -from __future__ import annotations - -from typing import TYPE_CHECKING - -if TYPE_CHECKING: # pragma: no cover - from .comparison import DataFrameComparison - class PrimaryKeyError(ValueError): """Raised when there is an issue with the primary key.""" - - -class ComparisonAssertionError(AssertionError): - """Base class for diffly assertion failures. - - The concrete subclasses carry the underlying comparison object(s), making - interactive debugging straightforward. When a test fails and is run with ``--pdb`` - (or another post-mortem debugger), the comparison can be accessed from the debugger - prompt via the ``$_exception`` convenience variable. Catch this base class to handle - both frame and collection failures. - """ - - -class FrameComparisonAssertionError(ComparisonAssertionError): - """Raised when :func:`~diffly.testing.assert_frame_equal` fails. - - Access the underlying comparison from a post-mortem debugger via:: - - (Pdb) cmp = $_exception.comparison - (Pdb) cmp.joined_unequal() - (Pdb) cmp.fraction_same() - - Attributes: - comparison: The comparison between the two data frames. - """ - - def __init__(self, message: str, *, comparison: DataFrameComparison) -> None: - super().__init__(message) - self.comparison = comparison - - -class CollectionComparisonAssertionError(ComparisonAssertionError): - """Raised when :func:`~diffly.testing.assert_collection_equal` fails. - - Access the failing member comparisons from a post-mortem debugger via:: - - (Pdb) cmps = $_exception.comparisons - (Pdb) cmps["some_member"].joined_unequal() - - Attributes: - comparisons: A mapping from member name to comparison for the failing members. - """ - - def __init__( - self, message: str, *, comparisons: dict[str, DataFrameComparison] - ) -> None: - super().__init__(message) - self.comparisons = comparisons diff --git a/diffly/testing.py b/diffly/testing.py index b67b9bd..c1007b3 100644 --- a/diffly/testing.py +++ b/diffly/testing.py @@ -18,13 +18,56 @@ from diffly.summary import WIDTH from ._compat import dy -from ._exceptions import ( - CollectionComparisonAssertionError, - FrameComparisonAssertionError, -) from .comparison import DataFrameComparison, compare_frames from .metrics import Metric, MetricFn +# ------------------------------------ EXCEPTIONS ------------------------------------- # + + +class ComparisonAssertionError(AssertionError): + """Base class for diffly assertion failures.""" + + +class FrameComparisonAssertionError(ComparisonAssertionError): + """Raised when :func:`assert_frame_equal` fails. + + Access the underlying comparison from the exception using ``e.comparison`` + or in a post-mortem debugger via:: + + (Pdb) cmp = $_exception.comparison + (Pdb) cmp.joined_unequal() + + Attributes: + comparison: The comparison between the two data frames. + """ + + def __init__(self, message: str, *, comparison: DataFrameComparison) -> None: + super().__init__(message) + self.comparison = comparison + + +class CollectionComparisonAssertionError(ComparisonAssertionError): + """Raised when :func:`assert_collection_equal` fails. + + Access the failing member comparisons from the exception using ``e.comparisons`` + or from a post-mortem debugger via:: + + (Pdb) cmps = $_exception.comparisons + (Pdb) cmps["some_member"].joined_unequal() + + Attributes: + comparisons: A mapping from member name to comparison for the failing members. + """ + + def __init__( + self, message: str, *, comparisons: dict[str, DataFrameComparison] + ) -> None: + super().__init__(message) + self.comparisons = comparisons + + +# ------------------------------------ ASSERTIONS ------------------------------------- # + _DEBUG_HINT_FRAME = ( "To debug interactively (e.g. with `pytest --pdb`), access the comparison via " "`$_exception.comparison` at the debugger prompt or via the `.comparison` " diff --git a/tests/test_assert_collection_equal.py b/tests/test_assert_collection_equal.py index 011e418..2332040 100644 --- a/tests/test_assert_collection_equal.py +++ b/tests/test_assert_collection_equal.py @@ -4,9 +4,12 @@ import polars as pl import pytest -from diffly import CollectionComparisonAssertionError, ComparisonAssertionError from diffly.comparison import DataFrameComparison -from diffly.testing import assert_collection_equal +from diffly.testing import ( + CollectionComparisonAssertionError, + ComparisonAssertionError, + assert_collection_equal, +) pytest.importorskip("dataframely", reason="requires dataframely") import dataframely as dy diff --git a/tests/test_assert_frame_equal.py b/tests/test_assert_frame_equal.py index 576e098..ad8c6a9 100644 --- a/tests/test_assert_frame_equal.py +++ b/tests/test_assert_frame_equal.py @@ -6,13 +6,13 @@ import polars as pl import pytest -from diffly import ( +from diffly import compare_frames +from diffly.comparison import DataFrameComparison +from diffly.testing import ( ComparisonAssertionError, FrameComparisonAssertionError, - compare_frames, + assert_frame_equal, ) -from diffly.comparison import DataFrameComparison -from diffly.testing import assert_frame_equal def test_success_equal() -> None: From c7e1d5809586ed937434aa9cdd761f72630c503c Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Tue, 28 Jul 2026 09:33:16 +0200 Subject: [PATCH 4/8] cleanup --- diffly/testing.py | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/diffly/testing.py b/diffly/testing.py index c1007b3..18e4963 100644 --- a/diffly/testing.py +++ b/diffly/testing.py @@ -151,12 +151,7 @@ def assert_collection_equal( metrics are computed; presets are not applied automatically. Raises: - CollectionComparisonAssertionError: If the collections are not equal. This is a - subclass of :class:`AssertionError` that additionally exposes the failing - member comparisons via its ``.comparisons`` attribute (a mapping from member - name to :class:`~diffly.comparison.DataFrameComparison`). When running with - ``pytest --pdb``, access them at the debugger prompt via - ``$_exception.comparisons``. + CollectionComparisonAssertionError: If the collections are not equal. Examples: >>> import dataframely as dy @@ -302,12 +297,7 @@ def assert_frame_equal( metrics are computed; presets are not applied automatically. Raises: - FrameComparisonAssertionError: If the data frames are not equal. This is a - subclass of :class:`AssertionError` that additionally exposes the underlying - :class:`~diffly.comparison.DataFrameComparison` via its ``.comparison`` - attribute. When running with ``pytest --pdb``, access it at the debugger - prompt via ``$_exception.comparison`` to explore the differences - interactively. + FrameComparisonAssertionError: If the data frames are not equal. Note: Contrary to :meth:`polars.testing.assert_frame_equal`, the data frames ``left`` From 405a17d1a553da677574623dee0c748e27a8bfe2 Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Tue, 28 Jul 2026 09:41:22 +0200 Subject: [PATCH 5/8] improve --- tests/test_assert_collection_equal.py | 9 +++++---- tests/test_assert_frame_equal.py | 10 +++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/tests/test_assert_collection_equal.py b/tests/test_assert_collection_equal.py index 2332040..f05bf80 100644 --- a/tests/test_assert_collection_equal.py +++ b/tests/test_assert_collection_equal.py @@ -7,7 +7,6 @@ from diffly.comparison import DataFrameComparison from diffly.testing import ( CollectionComparisonAssertionError, - ComparisonAssertionError, assert_collection_equal, ) @@ -126,6 +125,7 @@ def test_unequal_members() -> None: def test_error_exposes_comparisons() -> None: + # Arrange qux1 = Qux.validate( { "foo": Foo.validate( @@ -146,12 +146,13 @@ def test_error_exposes_comparisons() -> None: ), } ) + + # Act with pytest.raises(CollectionComparisonAssertionError) as exc_info: assert_collection_equal(qux1, qux2) - # A subclass of the shared base and of `AssertionError` for backward compatibility. - assert isinstance(exc_info.value, ComparisonAssertionError) - assert isinstance(exc_info.value, AssertionError) + # Assert + assert isinstance(exc_info.value, CollectionComparisonAssertionError) # Only the failing member is exposed, and its comparison is usable. comparisons = exc_info.value.comparisons assert set(comparisons) == {"foo"} diff --git a/tests/test_assert_frame_equal.py b/tests/test_assert_frame_equal.py index ad8c6a9..a34e0d0 100644 --- a/tests/test_assert_frame_equal.py +++ b/tests/test_assert_frame_equal.py @@ -9,7 +9,6 @@ from diffly import compare_frames from diffly.comparison import DataFrameComparison from diffly.testing import ( - ComparisonAssertionError, FrameComparisonAssertionError, assert_frame_equal, ) @@ -68,15 +67,16 @@ def test_success_with_nan() -> None: def test_error_exposes_comparison() -> None: + # Arrange left = pl.DataFrame({"id": [1, 2], "value": [10.0, 20.0]}) right = pl.DataFrame({"id": [1, 2], "value": [10.0, 25.0]}) + + # Act with pytest.raises(FrameComparisonAssertionError) as exc_info: assert_frame_equal(left, right, primary_key="id") - # A subclass of the shared base and of `AssertionError` for backward compatibility. - assert isinstance(exc_info.value, ComparisonAssertionError) - assert isinstance(exc_info.value, AssertionError) + # Assert + assert isinstance(exc_info.value, FrameComparisonAssertionError) comparison = exc_info.value.comparison assert isinstance(comparison, DataFrameComparison) - # The comparison is fully initialized and usable for interactive debugging. assert comparison.fraction_same("value") == 0.5 From 820f9c20129ebeabca082107b60ed070b11e7335 Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Tue, 28 Jul 2026 09:52:24 +0200 Subject: [PATCH 6/8] review --- diffly/testing.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/diffly/testing.py b/diffly/testing.py index 18e4963..48530cd 100644 --- a/diffly/testing.py +++ b/diffly/testing.py @@ -32,7 +32,8 @@ class FrameComparisonAssertionError(ComparisonAssertionError): """Raised when :func:`assert_frame_equal` fails. Access the underlying comparison from the exception using ``e.comparison`` - or in a post-mortem debugger via:: + or in a post-mortem debugger via the ``$_exception`` convenience variable + (requires Python >= 3.12):: (Pdb) cmp = $_exception.comparison (Pdb) cmp.joined_unequal() @@ -50,7 +51,8 @@ class CollectionComparisonAssertionError(ComparisonAssertionError): """Raised when :func:`assert_collection_equal` fails. Access the failing member comparisons from the exception using ``e.comparisons`` - or from a post-mortem debugger via:: + or from a post-mortem debugger via the ``$_exception`` convenience variable + (requires Python >= 3.12):: (Pdb) cmps = $_exception.comparisons (Pdb) cmps["some_member"].joined_unequal() @@ -70,14 +72,14 @@ def __init__( _DEBUG_HINT_FRAME = ( "To debug interactively (e.g. with `pytest --pdb`), access the comparison via " - "`$_exception.comparison` at the debugger prompt or via the `.comparison` " - "attribute of this error." + "`$_exception.comparison` at the debugger prompt (requires Python >= 3.12) or via " + "the `.comparison` attribute of this error." ) _DEBUG_HINT_COLLECTION = ( "To debug interactively (e.g. with `pytest --pdb`), access the failing member " "comparisons via `$_exception.comparisons` (a mapping from member name to " - "comparison) at the debugger prompt or via the `.comparisons` attribute of this " - "error." + "comparison) at the debugger prompt (requires Python >= 3.12) or via the " + "`.comparisons` attribute of this error." ) From 8437c0d6d2bc66d0b7056cf3bb46369fc0b86382 Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Tue, 28 Jul 2026 10:06:24 +0200 Subject: [PATCH 7/8] refactor --- ...alse_sample_rows_False_sample_pk_False.txt | 23 ----- ...False_sample_rows_True_sample_pk_False.txt | 33 ------- ...True_sample_rows_False_sample_pk_False.txt | 10 --- ..._True_sample_rows_True_sample_pk_False.txt | 20 ----- ...alse_sample_rows_False_sample_pk_False.txt | 23 ----- ..._False_sample_rows_True_sample_pk_True.txt | 33 ------- ...True_sample_rows_False_sample_pk_False.txt | 10 --- ...m_True_sample_rows_True_sample_pk_True.txt | 20 ----- ...alse_sample_rows_False_sample_pk_False.txt | 23 ----- ...alse_sample_rows_False_sample_pk_False.txt | 39 -------- ...False_sample_rows_True_sample_pk_False.txt | 39 -------- ...True_sample_rows_False_sample_pk_False.txt | 31 ------- ..._True_sample_rows_True_sample_pk_False.txt | 31 ------- ...alse_sample_rows_False_sample_pk_False.txt | 40 --------- ..._False_sample_rows_True_sample_pk_True.txt | 40 --------- ...True_sample_rows_False_sample_pk_False.txt | 32 ------- ...m_True_sample_rows_True_sample_pk_True.txt | 32 ------- ...alse_sample_rows_False_sample_pk_False.txt | 47 ---------- ...False_sample_rows_True_sample_pk_False.txt | 47 ---------- ...True_sample_rows_False_sample_pk_False.txt | 39 -------- ..._True_sample_rows_True_sample_pk_False.txt | 39 -------- ...alse_sample_rows_False_sample_pk_False.txt | 48 ---------- ..._False_sample_rows_True_sample_pk_True.txt | 49 ---------- ...True_sample_rows_False_sample_pk_False.txt | 40 --------- ...m_True_sample_rows_True_sample_pk_True.txt | 41 --------- ...alse_sample_rows_False_sample_pk_False.txt | 39 -------- ...False_sample_rows_True_sample_pk_False.txt | 39 -------- ...True_sample_rows_False_sample_pk_False.txt | 31 ------- ..._True_sample_rows_True_sample_pk_False.txt | 31 ------- ...alse_sample_rows_False_sample_pk_False.txt | 40 --------- ..._False_sample_rows_True_sample_pk_True.txt | 40 --------- ...True_sample_rows_False_sample_pk_False.txt | 32 ------- tests/test_assert_collection_equal.py | 90 +++++++------------ 33 files changed, 34 insertions(+), 1137 deletions(-) delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt delete mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt delete mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 7acca0a..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,23 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: name - - Schemas - ▔▔▔▔▔▔▔ - Schemas match exactly (column count: 1). - - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - No common non-primary key columns to compare. diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index 344bf24..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,33 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: name - - Schemas - ▔▔▔▔▔▔▔ - Schemas match exactly (column count: 1). - - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - No common non-primary key columns to compare. - - Rows left only - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - ┏━━━━━━━━━━┓ - ┃ name ┃ - ┡━━━━━━━━━━┩ - │ sloth │ - │ elephant │ - │ ant │ - └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 920f49b..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,10 +0,0 @@ - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index 9b82b4f..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,20 +0,0 @@ - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Rows left only - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - ┏━━━━━━━━━━┓ - ┃ name ┃ - ┡━━━━━━━━━━┩ - │ sloth │ - │ elephant │ - │ ant │ - └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 7acca0a..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,23 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: name - - Schemas - ▔▔▔▔▔▔▔ - Schemas match exactly (column count: 1). - - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - No common non-primary key columns to compare. diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt deleted file mode 100644 index 344bf24..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt +++ /dev/null @@ -1,33 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: name - - Schemas - ▔▔▔▔▔▔▔ - Schemas match exactly (column count: 1). - - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - No common non-primary key columns to compare. - - Rows left only - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - ┏━━━━━━━━━━┓ - ┃ name ┃ - ┡━━━━━━━━━━┩ - │ sloth │ - │ elephant │ - │ ant │ - └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 920f49b..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,10 +0,0 @@ - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt deleted file mode 100644 index 9b82b4f..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt +++ /dev/null @@ -1,20 +0,0 @@ - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Rows left only - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - ┏━━━━━━━━━━┓ - ┃ name ┃ - ┡━━━━━━━━━━┩ - │ sloth │ - │ elephant │ - │ ant │ - └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 7acca0a..0000000 --- a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,23 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: name - - Schemas - ▔▔▔▔▔▔▔ - Schemas match exactly (column count: 1). - - Rows - ▔▔▔▔ - Left count Right count - 6 (-83.33%) 1 - - ┏━┯━┯━┯━┯━┓ - ┃-│-│-│-│-┃ 5 left only (83.33%) - ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - No common non-primary key columns to compare. diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 4eb58f5..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,39 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index 4eb58f5..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,39 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index e5b8ddf..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,31 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index e5b8ddf..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,31 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index d78419d..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,40 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┬─────────────────────┐ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ - ├───────┼────────┼─────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x) │ - └───────┴────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt deleted file mode 100644 index 1ee8f87..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt +++ /dev/null @@ -1,40 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┬─────────────────────────────┐ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ - ├───────┼────────┼─────────────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ - └───────┴────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 9a6c25d..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,32 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┬─────────────────────┐ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ - ├───────┼────────┼─────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x) │ - └───────┴────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt deleted file mode 100644 index 8ef5ff3..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt +++ /dev/null @@ -1,32 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┬─────────────────────────────┐ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ - ├───────┼────────┼─────────────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ - └───────┴────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 8d30649..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,47 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ - │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ - │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quuux │ 0.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ qux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ value │ 50.00% │ - └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index 8d30649..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,47 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ - │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ - │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quuux │ 0.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ qux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ value │ 50.00% │ - └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index fcfbc62..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,39 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ - │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ - │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quuux │ 0.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ qux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ value │ 50.00% │ - └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index fcfbc62..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,39 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ - │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ - │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quuux │ 0.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ quux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ qux │ 100.00% │ - ├─────────────────────────────────────────────────────────────────────────┼─────────┤ - │ value │ 50.00% │ - └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 19e963b..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,48 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────────────────────────────────────────────────┬─────────┬─────────────────────┐ - │ international_regulatory_compliance_documentation │ 100.00% │ │ - │ _submission_tracking_system_integration_connectio │ │ │ - │ n_parameter_configuration_setting_identifier │ │ │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ quux │ 100.00% │ │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ qux │ 100.00% │ │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x) │ - └───────────────────────────────────────────────────┴─────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt deleted file mode 100644 index 6656518..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt +++ /dev/null @@ -1,49 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃ Diffly Summary ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────────────────────────────────────────┬─────────┬─────────────────────────────┐ - │ international_regulatory_compliance_docum │ 100.00% │ │ - │ entation_submission_tracking_system_integ │ │ │ - │ ration_connection_parameter_configuration │ │ │ - │ _setting_identifier │ │ │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ quux │ 100.00% │ │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ qux │ 100.00% │ │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ - └───────────────────────────────────────────┴─────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 04ddac6..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,40 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────────────────────────────────────────────────┬─────────┬─────────────────────┐ - │ international_regulatory_compliance_documentation │ 100.00% │ │ - │ _submission_tracking_system_integration_connectio │ │ │ - │ n_parameter_configuration_setting_identifier │ │ │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ quux │ 100.00% │ │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ qux │ 100.00% │ │ - ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x) │ - └───────────────────────────────────────────────────┴─────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt deleted file mode 100644 index 28426a0..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt +++ /dev/null @@ -1,41 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃ Left only ┃ In common ┃ Right only ┃ - ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────────────────────────────────────────┬─────────┬─────────────────────────────┐ - │ international_regulatory_compliance_docum │ 100.00% │ │ - │ entation_submission_tracking_system_integ │ │ │ - │ ration_connection_parameter_configuration │ │ │ - │ _setting_identifier │ │ │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ quux │ 100.00% │ │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ qux │ 100.00% │ │ - ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ - └───────────────────────────────────────────┴─────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 13e19ce..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,39 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃  Diffly Summary  ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃  Left only  ┃  In common  ┃  Right only  ┃ - ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index 13e19ce..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,39 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃  Diffly Summary  ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃  Left only  ┃  In common  ┃  Right only  ┃ - ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 6e7308a..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,31 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃  Left only  ┃  In common  ┃  Right only  ┃ - ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt deleted file mode 100644 index 6e7308a..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt +++ /dev/null @@ -1,31 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃  Left only  ┃  In common  ┃  Right only  ┃ - ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┐ - │ quuux │ 0.00% │ - │ value │ 50.00% │ - └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 1bd9863..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,40 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃  Diffly Summary  ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃  Left only  ┃  In common  ┃  Right only  ┃ - ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┬─────────────────────┐ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ - ├───────┼────────┼─────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x) │ - └───────┴────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt deleted file mode 100644 index a6248ab..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt +++ /dev/null @@ -1,40 +0,0 @@ -┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -┃  Diffly Summary  ┃ -┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ - Primary key: key - - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃  Left only  ┃  In common  ┃  Right only  ┃ - ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - Left count Right count - 1,000,000 (no change) 1,000,000 - - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┬─────────────────────────────┐ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ - ├───────┼────────┼─────────────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ - └───────┴────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt deleted file mode 100644 index 5af59c3..0000000 --- a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt +++ /dev/null @@ -1,32 +0,0 @@ - Schemas - ▔▔▔▔▔▔▔ - ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ - ┃  Left only  ┃  In common  ┃  Right only  ┃ - ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ - ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ - │ buzz │ ... │ bing │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ fizz │ │ bong │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ waldo │ │ pharmacovigilance_adverse │ - │ │ │ _event_reporting_complian │ - │ │ │ ce_documentation_status │ - ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ - │ z_multidimensional_data_v │ │ zork │ - │ isualization_technique_op │ │ │ - │ timization_parameter │ │ │ - └───────────────────────────┴───────────────────────────┴───────────────────────────┘ - - Rows - ▔▔▔▔ - ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ - ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ - ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ - - Columns - ▔▔▔▔▔▔▔ - ┌───────┬────────┬─────────────────────┐ - │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ - ├───────┼────────┼─────────────────────┤ - │ value │ 50.00% │ 0 -> 1 (500,000x) │ - └───────┴────────┴─────────────────────┘ diff --git a/tests/test_assert_collection_equal.py b/tests/test_assert_collection_equal.py index f05bf80..9d8195e 100644 --- a/tests/test_assert_collection_equal.py +++ b/tests/test_assert_collection_equal.py @@ -41,29 +41,31 @@ class Quux(dy.Collection): bar: dy.LazyFrame[Bar] -def test_identical() -> None: +@pytest.fixture +def matching() -> pl.DataFrame: + return pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}) + + +@pytest.fixture +def mismatching() -> pl.DataFrame: + return pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 4.0]}) + + +def test_identical(matching: pl.DataFrame) -> None: qux = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), + "foo": Foo.validate(matching, cast=True), + "bar": Bar.validate(matching, cast=True), } ) assert_collection_equal(qux, qux) -def test_different_types() -> None: +def test_different_types(matching: pl.DataFrame) -> None: qux = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), + "foo": Foo.validate(matching, cast=True), + "bar": Bar.validate(matching, cast=True), } ) quux = Quux.validate(qux.to_dict()) @@ -71,79 +73,55 @@ def test_different_types() -> None: assert_collection_equal(qux, quux) -def test_missing_member() -> None: +def test_missing_member(matching: pl.DataFrame) -> None: qux1 = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), - "baz": Baz.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), + "foo": Foo.validate(matching, cast=True), + "bar": Bar.validate(matching, cast=True), + "baz": Baz.validate(matching, cast=True), } ) qux2 = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), + "foo": Foo.validate(matching, cast=True), + "bar": Bar.validate(matching, cast=True), } ) with pytest.raises(AssertionError, match="The collections have different members"): assert_collection_equal(qux1, qux2) -def test_unequal_members() -> None: +def test_unequal_members(matching: pl.DataFrame, mismatching: pl.DataFrame) -> None: qux1 = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), + "foo": Foo.validate(matching, cast=True), + "bar": Bar.validate(matching, cast=True), } ) qux2 = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 4.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 4.0]}), cast=True - ), + "foo": Foo.validate(mismatching, cast=True), + "bar": Bar.validate(mismatching, cast=True), } ) with pytest.raises(AssertionError, match="The following members are not equal"): assert_collection_equal(qux1, qux2) -def test_error_exposes_comparisons() -> None: +def test_error_exposes_comparisons( + matching: pl.DataFrame, mismatching: pl.DataFrame +) -> None: # Arrange qux1 = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), + "foo": Foo.validate(matching, cast=True), + "bar": Bar.validate(matching, cast=True), } ) qux2 = Qux.validate( { - "foo": Foo.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 4.0]}), cast=True - ), - "bar": Bar.validate( - pl.DataFrame({"index": [1, 2, 3], "value": [1.0, 2.0, 3.0]}), cast=True - ), + "foo": Foo.validate(mismatching, cast=True), + "bar": Bar.validate(matching, cast=True), } ) From c4e0264f1cab360b3be9ef3271236f46e08d55e8 Mon Sep 17 00:00:00 2001 From: Moritz Potthoff Date: Tue, 28 Jul 2026 10:07:52 +0200 Subject: [PATCH 8/8] fix --- ...alse_sample_rows_False_sample_pk_False.txt | 23 +++++++++ ...False_sample_rows_True_sample_pk_False.txt | 33 +++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 10 ++++ ..._True_sample_rows_True_sample_pk_False.txt | 20 ++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 23 +++++++++ ..._False_sample_rows_True_sample_pk_True.txt | 33 +++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 10 ++++ ...m_True_sample_rows_True_sample_pk_True.txt | 20 ++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 23 +++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 39 +++++++++++++++ ...False_sample_rows_True_sample_pk_False.txt | 39 +++++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 31 ++++++++++++ ..._True_sample_rows_True_sample_pk_False.txt | 31 ++++++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 40 +++++++++++++++ ..._False_sample_rows_True_sample_pk_True.txt | 40 +++++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 32 ++++++++++++ ...m_True_sample_rows_True_sample_pk_True.txt | 32 ++++++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 47 ++++++++++++++++++ ...False_sample_rows_True_sample_pk_False.txt | 47 ++++++++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 39 +++++++++++++++ ..._True_sample_rows_True_sample_pk_False.txt | 39 +++++++++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 48 ++++++++++++++++++ ..._False_sample_rows_True_sample_pk_True.txt | 49 +++++++++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 40 +++++++++++++++ ...m_True_sample_rows_True_sample_pk_True.txt | 41 ++++++++++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 39 +++++++++++++++ ...False_sample_rows_True_sample_pk_False.txt | 39 +++++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 31 ++++++++++++ ..._True_sample_rows_True_sample_pk_False.txt | 31 ++++++++++++ ...alse_sample_rows_False_sample_pk_False.txt | 40 +++++++++++++++ ..._False_sample_rows_True_sample_pk_True.txt | 40 +++++++++++++++ ...True_sample_rows_False_sample_pk_False.txt | 32 ++++++++++++ 32 files changed, 1081 insertions(+) create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt create mode 100644 tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt create mode 100644 tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..7acca0a --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,23 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: name + + Schemas + ▔▔▔▔▔▔▔ + Schemas match exactly (column count: 1). + + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + No common non-primary key columns to compare. diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..344bf24 --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,33 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: name + + Schemas + ▔▔▔▔▔▔▔ + Schemas match exactly (column count: 1). + + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + No common non-primary key columns to compare. + + Rows left only + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + ┏━━━━━━━━━━┓ + ┃ name ┃ + ┡━━━━━━━━━━┩ + │ sloth │ + │ elephant │ + │ ant │ + └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..920f49b --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,10 @@ + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..9b82b4f --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,20 @@ + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Rows left only + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + ┏━━━━━━━━━━┓ + ┃ name ┃ + ┡━━━━━━━━━━┩ + │ sloth │ + │ elephant │ + │ ant │ + └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..7acca0a --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,23 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: name + + Schemas + ▔▔▔▔▔▔▔ + Schemas match exactly (column count: 1). + + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + No common non-primary key columns to compare. diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt new file mode 100644 index 0000000..344bf24 --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt @@ -0,0 +1,33 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: name + + Schemas + ▔▔▔▔▔▔▔ + Schemas match exactly (column count: 1). + + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + No common non-primary key columns to compare. + + Rows left only + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + ┏━━━━━━━━━━┓ + ┃ name ┃ + ┡━━━━━━━━━━┩ + │ sloth │ + │ elephant │ + │ ant │ + └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..920f49b --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,10 @@ + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt new file mode 100644 index 0000000..9b82b4f --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt @@ -0,0 +1,20 @@ + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Rows left only + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + ┏━━━━━━━━━━┓ + ┃ name ┃ + ┡━━━━━━━━━━┩ + │ sloth │ + │ elephant │ + │ ant │ + └──────────┘ diff --git a/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..7acca0a --- /dev/null +++ b/tests/summary/fixtures/no_common_non_pk_columns/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,23 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: name + + Schemas + ▔▔▔▔▔▔▔ + Schemas match exactly (column count: 1). + + Rows + ▔▔▔▔ + Left count Right count + 6 (-83.33%) 1 + + ┏━┯━┯━┯━┯━┓ + ┃-│-│-│-│-┃ 5 left only (83.33%) + ┠─┼─┼─┼─┼─┨╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ = ┃ │ │ │ │ ┃ 1 equal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + No common non-primary key columns to compare. diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..4eb58f5 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,39 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..4eb58f5 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,39 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..e5b8ddf --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,31 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..e5b8ddf --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,31 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..d78419d --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,40 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┬─────────────────────┐ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ + ├───────┼────────┼─────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x) │ + └───────┴────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt new file mode 100644 index 0000000..1ee8f87 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt @@ -0,0 +1,40 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┬─────────────────────────────┐ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ + ├───────┼────────┼─────────────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ + └───────┴────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..9a6c25d --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,32 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┬─────────────────────┐ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ + ├───────┼────────┼─────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x) │ + └───────┴────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt new file mode 100644 index 0000000..8ef5ff3 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_False_top_True_slim_True_sample_rows_True_sample_pk_True.txt @@ -0,0 +1,32 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┬─────────────────────────────┐ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ + ├───────┼────────┼─────────────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ + └───────┴────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..8d30649 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,47 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ + │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ + │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quuux │ 0.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ qux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ value │ 50.00% │ + └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..8d30649 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_False_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,47 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ + │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ + │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quuux │ 0.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ qux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ value │ 50.00% │ + └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..fcfbc62 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,39 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ + │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ + │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quuux │ 0.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ qux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ value │ 50.00% │ + └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..fcfbc62 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_False_slim_True_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,39 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌─────────────────────────────────────────────────────────────────────────┬─────────┐ + │ international_regulatory_compliance_documentation_submission_tracking_s │ 100.00% │ + │ ystem_integration_connection_parameter_configuration_setting_identifier │ │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quuux │ 0.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ quux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ qux │ 100.00% │ + ├─────────────────────────────────────────────────────────────────────────┼─────────┤ + │ value │ 50.00% │ + └─────────────────────────────────────────────────────────────────────────┴─────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..19e963b --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,48 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────────────────────────────────────────────────┬─────────┬─────────────────────┐ + │ international_regulatory_compliance_documentation │ 100.00% │ │ + │ _submission_tracking_system_integration_connectio │ │ │ + │ n_parameter_configuration_setting_identifier │ │ │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ quux │ 100.00% │ │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ qux │ 100.00% │ │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x) │ + └───────────────────────────────────────────────────┴─────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt new file mode 100644 index 0000000..6656518 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_False_sample_rows_True_sample_pk_True.txt @@ -0,0 +1,49 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃ Diffly Summary ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────────────────────────────────────────┬─────────┬─────────────────────────────┐ + │ international_regulatory_compliance_docum │ 100.00% │ │ + │ entation_submission_tracking_system_integ │ │ │ + │ ration_connection_parameter_configuration │ │ │ + │ _setting_identifier │ │ │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ quux │ 100.00% │ │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ qux │ 100.00% │ │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ + └───────────────────────────────────────────┴─────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..04ddac6 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,40 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────────────────────────────────────────────────┬─────────┬─────────────────────┐ + │ international_regulatory_compliance_documentation │ 100.00% │ │ + │ _submission_tracking_system_integration_connectio │ │ │ + │ n_parameter_configuration_setting_identifier │ │ │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ quux │ 100.00% │ │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ qux │ 100.00% │ │ + ├───────────────────────────────────────────────────┼─────────┼─────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x) │ + └───────────────────────────────────────────────────┴─────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt new file mode 100644 index 0000000..28426a0 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_False_perfect_True_top_True_slim_True_sample_rows_True_sample_pk_True.txt @@ -0,0 +1,41 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃ Left only ┃ In common ┃ Right only ┃ + ┃ 4 columns ┃ 6 columns ┃ 4 columns ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────────────────────────────────────────┬─────────┬─────────────────────────────┐ + │ international_regulatory_compliance_docum │ 100.00% │ │ + │ entation_submission_tracking_system_integ │ │ │ + │ ration_connection_parameter_configuration │ │ │ + │ _setting_identifier │ │ │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ quux │ 100.00% │ │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ qux │ 100.00% │ │ + ├───────────────────────────────────────────┼─────────┼─────────────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ + └───────────────────────────────────────────┴─────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..13e19ce --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,39 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃  Diffly Summary  ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃  Left only  ┃  In common  ┃  Right only  ┃ + ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..13e19ce --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_False_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,39 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃  Diffly Summary  ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃  Left only  ┃  In common  ┃  Right only  ┃ + ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..6e7308a --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,31 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃  Left only  ┃  In common  ┃  Right only  ┃ + ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt new file mode 100644 index 0000000..6e7308a --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_False_slim_True_sample_rows_True_sample_pk_False.txt @@ -0,0 +1,31 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃  Left only  ┃  In common  ┃  Right only  ┃ + ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┐ + │ quuux │ 0.00% │ + │ value │ 50.00% │ + └───────┴────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..1bd9863 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,40 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃  Diffly Summary  ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃  Left only  ┃  In common  ┃  Right only  ┃ + ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┬─────────────────────┐ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ + ├───────┼────────┼─────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x) │ + └───────┴────────┴─────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt new file mode 100644 index 0000000..a6248ab --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_False_sample_rows_True_sample_pk_True.txt @@ -0,0 +1,40 @@ +┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ +┃  Diffly Summary  ┃ +┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ + Primary key: key + + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃  Left only  ┃  In common  ┃  Right only  ┃ + ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + Left count Right count + 1,000,000 (no change) 1,000,000 + + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┬─────────────────────────────┐ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x, e.g. 0) │ + ├───────┼────────┼─────────────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x, e.g. 0) │ + └───────┴────────┴─────────────────────────────┘ diff --git a/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt new file mode 100644 index 0000000..5af59c3 --- /dev/null +++ b/tests/summary/fixtures/summary_width/gen/pretty_True_perfect_False_top_True_slim_True_sample_rows_False_sample_pk_False.txt @@ -0,0 +1,32 @@ + Schemas + ▔▔▔▔▔▔▔ + ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ + ┃  Left only  ┃  In common  ┃  Right only  ┃ + ┃  4 columns  ┃  6 columns  ┃  4 columns  ┃ + ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ + │ buzz │ ... │ bing │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ fizz │ │ bong │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ waldo │ │ pharmacovigilance_adverse │ + │ │ │ _event_reporting_complian │ + │ │ │ ce_documentation_status │ + ├───────────────────────────┼───────────────────────────┼───────────────────────────┤ + │ z_multidimensional_data_v │ │ zork │ + │ isualization_technique_op │ │ │ + │ timization_parameter │ │ │ + └───────────────────────────┴───────────────────────────┴───────────────────────────┘ + + Rows + ▔▔▔▔ + ┏━┯━┯━┯━┯━┓╌╌╌┏━┯━┯━┯━┯━┓╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╮ + ┃ │ │ │ │ ┃ ≠ ┃ │ │ │ │ ┃ 1,000,000 unequal (100.00%) │ + ┗━┷━┷━┷━┷━┛╌╌╌┗━┷━┷━┷━┷━┛╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╯ + + Columns + ▔▔▔▔▔▔▔ + ┌───────┬────────┬─────────────────────┐ + │ quuux │ 0.00% │ 0 -> 1 (1,000,000x) │ + ├───────┼────────┼─────────────────────┤ + │ value │ 50.00% │ 0 -> 1 (500,000x) │ + └───────┴────────┴─────────────────────┘