Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ran hatch fmt #40

Merged
merged 1 commit into from
Aug 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/pydantic_ome_ngff/base.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
from __future__ import annotations

from typing import Any, Callable
from typing_extensions import Self

import pydantic
from typing_extensions import Self


class FrozenBase(pydantic.BaseModel, frozen=True):
Expand Down
5 changes: 3 additions & 2 deletions src/pydantic_ome_ngff/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@

from collections import Counter
from typing import TYPE_CHECKING, Protocol, runtime_checkable
from zarr.storage import BaseStore

import numpy as np

if TYPE_CHECKING:
from typing import Any, Hashable, Iterable
from collections.abc import Hashable, Iterable
from typing import Any
from zarr.storage import BaseStore


def duplicates(values: Iterable[Hashable]) -> dict[Hashable, int]:
Expand Down
2 changes: 1 addition & 1 deletion src/pydantic_ome_ngff/v04/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
from pydantic_ome_ngff.v04.base import version
from pydantic_ome_ngff.v04.label import ImageLabel
from pydantic_ome_ngff.v04.multiscale import (
MultiscaleMetadata,
MultiscaleGroup,
MultiscaleGroupAttrs,
MultiscaleMetadata,
)
from pydantic_ome_ngff.v04.plate import PlateMetadata
from pydantic_ome_ngff.v04.transform import Transform
Expand Down
3 changes: 1 addition & 2 deletions src/pydantic_ome_ngff/v04/axis.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
from __future__ import annotations

from typing import Literal
import warnings
from enum import Enum

from typing import Literal

from pydantic_ome_ngff.base import FrozenBase, SkipNoneBase
from pydantic_ome_ngff.v04.base import version
Expand Down
3 changes: 2 additions & 1 deletion src/pydantic_ome_ngff/v04/multiscale.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@
from numcodecs.abc import Codec
from typing_extensions import Self

from typing import Annotated, Any, Sequence, cast
from collections.abc import Sequence
from typing import Annotated, Any, cast

import zarr
from numcodecs import Zstd
Expand Down
2 changes: 1 addition & 1 deletion src/pydantic_ome_ngff/v04/plate.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
from pydantic_zarr.v2 import ArraySpec, GroupSpec

from pydantic_ome_ngff.base import VersionedBase
from pydantic_ome_ngff.v04.well import WellGroup
from pydantic_ome_ngff.v04.base import version
from pydantic_ome_ngff.v04.well import WellGroup


class Acquisition(BaseModel):
Expand Down
7 changes: 4 additions & 3 deletions src/pydantic_ome_ngff/v04/transform.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
from __future__ import annotations

from typing import Annotated, Literal, Sequence

from pydantic_ome_ngff.base import FrozenBase
from collections.abc import Sequence
from typing import Annotated, Literal

from pydantic import BeforeValidator

from pydantic_ome_ngff.base import FrozenBase
from pydantic_ome_ngff.utils import ArrayLike, listify_numpy


Expand Down
3 changes: 2 additions & 1 deletion src/pydantic_ome_ngff/v04/utils.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from __future__ import annotations

from typing import Iterable, cast, overload
from collections.abc import Iterable
from typing import cast, overload

from pydantic_ome_ngff.v04.multiscale import Dataset, MultiscaleMetadata
from pydantic_ome_ngff.v04.transform import VectorScale, VectorTranslation
Expand Down
2 changes: 1 addition & 1 deletion src/pydantic_ome_ngff/v04/well.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
from pydantic_zarr.v2 import ArraySpec, GroupSpec

from pydantic_ome_ngff.base import VersionedBase
from pydantic_ome_ngff.v04.multiscale import MultiscaleGroup
from pydantic_ome_ngff.v04.base import version
from pydantic_ome_ngff.v04.multiscale import MultiscaleGroup


class Image(BaseModel):
Expand Down
5 changes: 3 additions & 2 deletions tests/conftest.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
from __future__ import annotations

from typing import TYPE_CHECKING

if TYPE_CHECKING:
from typing import Any

import py
import pytest
import requests
from zarr.storage import MemoryStore, FSStore, NestedDirectoryStore
import py
from zarr.storage import FSStore, MemoryStore, NestedDirectoryStore


def fetch_schemas(version: str, schema_name: str) -> tuple[Any, Any]:
Expand Down
16 changes: 8 additions & 8 deletions tests/latest/test_multiscales.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
from __future__ import annotations
from pydantic import ValidationError
import pytest

import jsonschema as jsc
import pytest
from pydantic import ValidationError
from pydantic_zarr.v2 import ArraySpec

from pydantic_ome_ngff.latest.axis import Axis
from pydantic_ome_ngff.latest.multiscale import (
MultiscaleMetadata,
GroupAttrs,
Dataset,
Group,
GroupAttrs,
MultiscaleMetadata,
)

from pydantic_ome_ngff.latest.transform import (
Transform,
VectorScale,
Expand Down Expand Up @@ -115,9 +115,9 @@ def test_multiscale_space_axes_last(axis_types: list[str | None]) -> None:
axes: list[Axis] = []
for idx, t in enumerate(axis_types):
if t is None or t == "channel":
ax = Axis(name=str(idx), type=t, unit=units_map.get(t, None))
ax = Axis(name=str(idx), type=t, unit=units_map.get(t))
else:
ax = Axis(name=str(idx), type=t, unit=units_map.get(t, None))
ax = Axis(name=str(idx), type=t, unit=units_map.get(t))
axes.append(ax)

rank = len(axes)
Expand Down Expand Up @@ -169,7 +169,7 @@ def test_coordinate_transforms_invalid_ndims() -> None:
]
with pytest.raises(
ValidationError,
match="The transforms have inconsistent dimensionality.", # noqa
match="The transforms have inconsistent dimensionality.",
):
Dataset(path="foo", coordinateTransformations=tforms)

Expand Down
5 changes: 3 additions & 2 deletions tests/test_base.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import pytest
import pydantic
from pydantic_ome_ngff.base import FrozenBase, VersionedBase, SkipNoneBase
import pytest

from pydantic_ome_ngff.base import FrozenBase, SkipNoneBase, VersionedBase


def test_frozen_base() -> None:
Expand Down
2 changes: 1 addition & 1 deletion tests/test_docs.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import pytest
from pytest_examples import find_examples, CodeExample, EvalExample
from pytest_examples import CodeExample, EvalExample, find_examples


@pytest.mark.parametrize("example", find_examples("docs"), ids=str)
Expand Down
4 changes: 3 additions & 1 deletion tests/test_utils.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
from __future__ import annotations

from typing import TYPE_CHECKING

import numpy as np

if TYPE_CHECKING:
from typing import Any, List

from pydantic_ome_ngff.utils import duplicates, listify_numpy
import pytest

from pydantic_ome_ngff.utils import duplicates, listify_numpy


@pytest.mark.parametrize(
"data", [[0], [0, 1, 1, 1, 2], ["a", "a", "b", "b", "c", "c", "d"]]
Expand Down
4 changes: 3 additions & 1 deletion tests/v04/test_label.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
from __future__ import annotations

from typing import Literal

import pytest
from pydantic import ValidationError
from pydantic_ome_ngff.v04 import version as NGFF_VERSION

from pydantic_ome_ngff.v04 import version as NGFF_VERSION
from pydantic_ome_ngff.v04.label import Color, ImageLabel, Property


Expand Down
27 changes: 15 additions & 12 deletions tests/v04/test_multiscales.py
Original file line number Diff line number Diff line change
@@ -1,32 +1,35 @@
from __future__ import annotations

from typing import TYPE_CHECKING

if TYPE_CHECKING:
from typing import Literal
from zarr.storage import MemoryStore, NestedDirectoryStore, FSStore

from pydantic import ValidationError
import pytest
from zarr.storage import FSStore, MemoryStore, NestedDirectoryStore

import operator
from itertools import accumulate

import jsonschema as jsc
from zarr.util import guess_chunks
import numpy as np
import pytest
from pydantic import ValidationError
from pydantic_zarr.v2 import ArraySpec, GroupSpec
from zarr.util import guess_chunks

from pydantic_ome_ngff.v04.axis import Axis
from pydantic_ome_ngff.v04.multiscale import (
MultiscaleMetadata,
MultiscaleGroupAttrs,
Dataset,
MultiscaleGroup,
MultiscaleGroupAttrs,
MultiscaleMetadata,
)

from pydantic_ome_ngff.v04.transform import (
Transform,
VectorScale,
VectorTranslation,
)
from pydantic_ome_ngff.v04.axis import Axis
from tests.conftest import fetch_schemas
import numpy as np
from itertools import accumulate
import operator


@pytest.fixture
Expand Down Expand Up @@ -125,7 +128,7 @@ def test_multiscale_unique_axis_names() -> None:
def test_multiscale_space_axes_last(axis_types: list[str | None]) -> None:
units_map = {"space": "meter", "time": "second"}
axes = tuple(
Axis(name=str(idx), type=t, unit=units_map.get(t, None))
Axis(name=str(idx), type=t, unit=units_map.get(t))
for idx, t in enumerate(axis_types)
)
rank = len(axes)
Expand Down
3 changes: 3 additions & 0 deletions tests/v04/test_transform.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
from __future__ import annotations

from typing import Tuple, Type

import pytest

from pydantic_ome_ngff.v04.transform import (
VectorScale,
VectorTranslation,
Expand Down
14 changes: 7 additions & 7 deletions tests/v04/test_utils.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from __future__ import annotations
from typing_extensions import Literal

import pytest
from typing_extensions import Literal

from pydantic_ome_ngff.v04.axis import Axis
from pydantic_ome_ngff.v04.multiscale import Dataset, MultiscaleMetadata
Expand Down Expand Up @@ -78,13 +79,12 @@ def test_transform_coordinate_transformations(
assert len(new_ctx) == 1
else:
assert len(new_ctx) == 2
elif in_trans is None:
assert new_ctx[1] == old_ctx[1]
else:
if in_trans is None:
assert new_ctx[1] == old_ctx[1]
else:
assert new_ctx[1] == VectorTranslation(
translation=tuple(a + b for a, b in zip(old_trans_norm, _new_trans))
)
assert new_ctx[1] == VectorTranslation(
translation=tuple(a + b for a, b in zip(old_trans_norm, _new_trans))
)
if _new_scale is None:
assert new_ctx[0] == old_ctx[0]
else:
Expand Down