diff options
| author | natsuoto <[email protected]> | 2026-07-14 18:32:43 +0530 |
|---|---|---|
| committer | natsuoto <[email protected]> | 2026-07-14 18:32:43 +0530 |
| commit | f3efea9b9ec120c876e7b1b4e4b3e785e7c594d6 (patch) | |
| tree | a0ed5c7e8a09f2117e72f2dcc1151a2479ef0efc | |
| parent | 556c4c91a37db184345059dd08213121bf1d9c5a (diff) | |
| download | edify-f3efea9b9ec120c876e7b1b4e4b3e785e7c594d6.tar.xz edify-f3efea9b9ec120c876e7b1b4e4b3e785e7c594d6.zip | |
rename(atoms): single-word filenames (octet/port/label/uuid/hexcolor/nibble/isodate/clock/localpart)
| -rw-r--r-- | edify/atoms/__init__.py | 36 | ||||
| -rw-r--r-- | edify/atoms/clock.py (renamed from edify/atoms/time_24h.py) | 4 | ||||
| -rw-r--r-- | edify/atoms/date_iso8601.py | 10 | ||||
| -rw-r--r-- | edify/atoms/hex_nibble.py | 8 | ||||
| -rw-r--r-- | edify/atoms/hexcolor.py (renamed from edify/atoms/hex_color.py) | 14 | ||||
| -rw-r--r-- | edify/atoms/hostname.py | 4 | ||||
| -rw-r--r-- | edify/atoms/isodate.py | 8 | ||||
| -rw-r--r-- | edify/atoms/label.py (renamed from edify/atoms/domain_label.py) | 4 | ||||
| -rw-r--r-- | edify/atoms/localpart.py (renamed from edify/atoms/email_local.py) | 4 | ||||
| -rw-r--r-- | edify/atoms/nibble.py | 8 | ||||
| -rw-r--r-- | edify/atoms/octet.py (renamed from edify/atoms/ipv4_octet.py) | 4 | ||||
| -rw-r--r-- | edify/atoms/port.py (renamed from edify/atoms/port_number.py) | 4 | ||||
| -rw-r--r-- | edify/atoms/uuid.py (renamed from edify/atoms/uuid_v4.py) | 16 | ||||
| -rw-r--r-- | edify/library/address/ip.py | 12 | ||||
| -rw-r--r-- | edify/library/address/ptr.py | 4 | ||||
| -rw-r--r-- | edify/library/address/socket.py | 6 | ||||
| -rw-r--r-- | tests/atoms/clock.test.py (renamed from tests/atoms/time_24h.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/hexcolor.test.py (renamed from tests/atoms/hex_color.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/isodate.test.py (renamed from tests/atoms/date_iso8601.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/label.test.py (renamed from tests/atoms/domain_label.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/localpart.test.py (renamed from tests/atoms/email_local.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/nibble.test.py (renamed from tests/atoms/hex_nibble.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/octet.test.py (renamed from tests/atoms/ipv4_octet.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/port.test.py (renamed from tests/atoms/port_number.test.py) | 8 | ||||
| -rw-r--r-- | tests/atoms/uuid.test.py (renamed from tests/atoms/uuid_v4.test.py) | 8 |
25 files changed, 106 insertions, 112 deletions
diff --git a/edify/atoms/__init__.py b/edify/atoms/__init__.py index b30189c..17e1c67 100644 --- a/edify/atoms/__init__.py +++ b/edify/atoms/__init__.py @@ -5,32 +5,32 @@ Each atom is an unanchored fragment meant to be spliced into a builder via directly from ``edify.atoms``. """ -from edify.atoms.date_iso8601 import date_iso8601 -from edify.atoms.domain_label import domain_label -from edify.atoms.email_local import email_local -from edify.atoms.hex_color import hex_color -from edify.atoms.hex_nibble import hex_nibble +from edify.atoms.clock import clock +from edify.atoms.hexcolor import hexcolor from edify.atoms.hostname import hostname -from edify.atoms.ipv4_octet import ipv4_octet -from edify.atoms.port_number import port_number +from edify.atoms.isodate import isodate +from edify.atoms.label import label +from edify.atoms.localpart import localpart +from edify.atoms.nibble import nibble +from edify.atoms.octet import octet +from edify.atoms.port import port from edify.atoms.semver import semver from edify.atoms.slug import slug -from edify.atoms.time_24h import time_24h from edify.atoms.username import username -from edify.atoms.uuid_v4 import uuid_v4 +from edify.atoms.uuid import uuid __all__ = [ - "date_iso8601", - "domain_label", - "email_local", - "hex_color", - "hex_nibble", + "clock", + "hexcolor", "hostname", - "ipv4_octet", - "port_number", + "isodate", + "label", + "localpart", + "nibble", + "octet", + "port", "semver", "slug", - "time_24h", "username", - "uuid_v4", + "uuid", ] diff --git a/edify/atoms/time_24h.py b/edify/atoms/clock.py index a9302bb..9ad64d3 100644 --- a/edify/atoms/time_24h.py +++ b/edify/atoms/clock.py @@ -1,10 +1,10 @@ -"""``time_24h`` — 24-hour ``HH:MM[:SS]`` clock time.""" +"""``clock`` — 24-hour ``HH:MM[:SS]`` clock time.""" from __future__ import annotations from edify import Pattern -time_24h = ( +clock = ( Pattern() .any_of() .subexpression(Pattern().char("2").range("0", "3")) diff --git a/edify/atoms/date_iso8601.py b/edify/atoms/date_iso8601.py deleted file mode 100644 index 6ca34da..0000000 --- a/edify/atoms/date_iso8601.py +++ /dev/null @@ -1,10 +0,0 @@ -"""``date_iso8601`` — ISO 8601 calendar date ``YYYY-MM-DD``.""" - -from __future__ import annotations - -from edify import Pattern - -date_iso8601 = ( - Pattern().exactly(4).digit().char("-").exactly(2).digit().char("-").exactly(2).digit() -) -"""Composable :class:`Pattern` fragment for an ISO 8601 ``YYYY-MM-DD`` date.""" diff --git a/edify/atoms/hex_nibble.py b/edify/atoms/hex_nibble.py deleted file mode 100644 index 3c0dc02..0000000 --- a/edify/atoms/hex_nibble.py +++ /dev/null @@ -1,8 +0,0 @@ -"""``hex_nibble`` — one hexadecimal nibble ``[0-9a-fA-F]``.""" - -from __future__ import annotations - -from edify import Pattern - -hex_nibble = Pattern().any_of().range("0", "9").range("a", "f").range("A", "F").end() -"""Composable :class:`Pattern` fragment for one mixed-case hex nibble.""" diff --git a/edify/atoms/hex_color.py b/edify/atoms/hexcolor.py index df1f7ac..cdb162b 100644 --- a/edify/atoms/hex_color.py +++ b/edify/atoms/hexcolor.py @@ -1,22 +1,22 @@ -"""``hex_color`` — CSS hex-colour shape (``#RGB``, ``#RGBA``, ``#RRGGBB``, ``#RRGGBBAA``).""" +"""``hexcolor`` — CSS hex-colour shape (``#RGB``, ``#RGBA``, ``#RRGGBB``, ``#RRGGBBAA``).""" from __future__ import annotations from edify import Pattern -from edify.atoms.hex_nibble import hex_nibble +from edify.atoms.nibble import nibble -hex_color = ( +hexcolor = ( Pattern() .char("#") .any_of() .exactly(8) - .use(hex_nibble) + .use(nibble) .exactly(6) - .use(hex_nibble) + .use(nibble) .exactly(4) - .use(hex_nibble) + .use(nibble) .exactly(3) - .use(hex_nibble) + .use(nibble) .end() ) """Composable :class:`Pattern` fragment for a CSS hex colour.""" diff --git a/edify/atoms/hostname.py b/edify/atoms/hostname.py index ad04036..14feb0f 100644 --- a/edify/atoms/hostname.py +++ b/edify/atoms/hostname.py @@ -3,7 +3,7 @@ from __future__ import annotations from edify import Pattern -from edify.atoms.domain_label import domain_label +from edify.atoms.label import label -hostname = Pattern().use(domain_label).zero_or_more().group().char(".").use(domain_label).end() +hostname = Pattern().use(label).zero_or_more().group().char(".").use(label).end() """Composable :class:`Pattern` fragment for an RFC 1123 hostname.""" diff --git a/edify/atoms/isodate.py b/edify/atoms/isodate.py new file mode 100644 index 0000000..7408bba --- /dev/null +++ b/edify/atoms/isodate.py @@ -0,0 +1,8 @@ +"""``isodate`` — ISO 8601 calendar date ``YYYY-MM-DD``.""" + +from __future__ import annotations + +from edify import Pattern + +isodate = Pattern().exactly(4).digit().char("-").exactly(2).digit().char("-").exactly(2).digit() +"""Composable :class:`Pattern` fragment for an ISO 8601 ``YYYY-MM-DD`` date.""" diff --git a/edify/atoms/domain_label.py b/edify/atoms/label.py index cb13f7c..bad0ae4 100644 --- a/edify/atoms/domain_label.py +++ b/edify/atoms/label.py @@ -1,10 +1,10 @@ -"""``domain_label`` — one RFC 1123 DNS label.""" +"""``label`` — one RFC 1123 DNS label.""" from __future__ import annotations from edify import Pattern -domain_label = ( +label = ( Pattern() .any_of() .range("a", "z") diff --git a/edify/atoms/email_local.py b/edify/atoms/localpart.py index 9b95e89..92f9682 100644 --- a/edify/atoms/email_local.py +++ b/edify/atoms/localpart.py @@ -1,10 +1,10 @@ -"""``email_local`` — RFC 5322 email local-part shape (permissive).""" +"""``localpart`` — RFC 5322 email local-part shape (permissive).""" from __future__ import annotations from edify import Pattern -email_local = ( +localpart = ( Pattern() .between(1, 64) .any_of() diff --git a/edify/atoms/nibble.py b/edify/atoms/nibble.py new file mode 100644 index 0000000..7e7cd9e --- /dev/null +++ b/edify/atoms/nibble.py @@ -0,0 +1,8 @@ +"""``nibble`` — one hexadecimal nibble ``[0-9a-fA-F]``.""" + +from __future__ import annotations + +from edify import Pattern + +nibble = Pattern().any_of().range("0", "9").range("a", "f").range("A", "F").end() +"""Composable :class:`Pattern` fragment for one mixed-case hex nibble.""" diff --git a/edify/atoms/ipv4_octet.py b/edify/atoms/octet.py index 8ccc1bc..5911b47 100644 --- a/edify/atoms/ipv4_octet.py +++ b/edify/atoms/octet.py @@ -1,10 +1,10 @@ -"""``ipv4_octet`` — one IPv4 octet in the range ``0``-``255``.""" +"""``octet`` — one IPv4 octet in the range ``0``-``255``.""" from __future__ import annotations from edify import Pattern, any_of -ipv4_octet = any_of( +octet = any_of( Pattern().string("25").range("0", "5"), Pattern().char("2").range("0", "4").digit(), Pattern().char("1").digit().digit(), diff --git a/edify/atoms/port_number.py b/edify/atoms/port.py index 36a4214..1a52024 100644 --- a/edify/atoms/port_number.py +++ b/edify/atoms/port.py @@ -1,10 +1,10 @@ -"""``port_number`` — one TCP/UDP port in the range ``0``-``65535``.""" +"""``port`` — one TCP/UDP port in the range ``0``-``65535``.""" from __future__ import annotations from edify import Pattern, any_of -port_number = any_of( +port = any_of( Pattern().string("6553").range("0", "5"), Pattern().string("655").range("0", "2").digit(), Pattern().string("65").range("0", "4").digit().digit(), diff --git a/edify/atoms/uuid_v4.py b/edify/atoms/uuid.py index ea99660..cb5fe4f 100644 --- a/edify/atoms/uuid_v4.py +++ b/edify/atoms/uuid.py @@ -1,27 +1,27 @@ -"""``uuid_v4`` — version-4 UUID shape.""" +"""``uuid`` — version-4 UUID shape.""" from __future__ import annotations from edify import Pattern -from edify.atoms.hex_nibble import hex_nibble +from edify.atoms.nibble import nibble -uuid_v4 = ( +uuid = ( Pattern() .exactly(8) - .use(hex_nibble) + .use(nibble) .char("-") .exactly(4) - .use(hex_nibble) + .use(nibble) .char("-") .char("4") .exactly(3) - .use(hex_nibble) + .use(nibble) .char("-") .any_of_chars("89ab") .exactly(3) - .use(hex_nibble) + .use(nibble) .char("-") .exactly(12) - .use(hex_nibble) + .use(nibble) ) """Composable :class:`Pattern` fragment for a version-4 UUID.""" diff --git a/edify/library/address/ip.py b/edify/library/address/ip.py index 3665fd7..85945d7 100644 --- a/edify/library/address/ip.py +++ b/edify/library/address/ip.py @@ -3,17 +3,15 @@ from __future__ import annotations from edify import Pattern, any_of -from edify.atoms.hex_nibble import hex_nibble -from edify.atoms.ipv4_octet import ipv4_octet +from edify.atoms.nibble import nibble +from edify.atoms.octet import octet def _hex_group() -> Pattern: - return Pattern().between(1, 4).subexpression(hex_nibble) + return Pattern().between(1, 4).subexpression(nibble) -_ipv4 = ( - Pattern().subexpression(ipv4_octet).exactly(3).group().char(".").subexpression(ipv4_octet).end() -) +_ipv4 = Pattern().subexpression(octet).exactly(3).group().char(".").subexpression(octet).end() def _b1() -> Pattern: @@ -97,7 +95,7 @@ def _b_link_local() -> Pattern: .group() .char(":") .between(0, 4) - .subexpression(hex_nibble) + .subexpression(nibble) .end() .char("%") .one_or_more() diff --git a/edify/library/address/ptr.py b/edify/library/address/ptr.py index 17b4b68..87382f1 100644 --- a/edify/library/address/ptr.py +++ b/edify/library/address/ptr.py @@ -3,7 +3,7 @@ from __future__ import annotations from edify import Pattern, any_of -from edify.atoms.hex_nibble import hex_nibble +from edify.atoms.nibble import nibble _ipv4_ptr = ( Pattern() @@ -23,7 +23,7 @@ _ipv6_ptr = ( Pattern() .exactly(32) .group() - .subexpression(hex_nibble) + .subexpression(nibble) .char(".") .end() .string("ip6") diff --git a/edify/library/address/socket.py b/edify/library/address/socket.py index d65dedb..7231448 100644 --- a/edify/library/address/socket.py +++ b/edify/library/address/socket.py @@ -3,11 +3,9 @@ from __future__ import annotations from edify import Pattern, any_of -from edify.atoms.ipv4_octet import ipv4_octet +from edify.atoms.octet import octet -_ipv4 = ( - Pattern().subexpression(ipv4_octet).exactly(3).group().char(".").subexpression(ipv4_octet).end() -) +_ipv4 = Pattern().subexpression(octet).exactly(3).group().char(".").subexpression(octet).end() _ipv6_bracket = ( Pattern() .char("[") diff --git a/tests/atoms/time_24h.test.py b/tests/atoms/clock.test.py index a3865eb..2abe10a 100644 --- a/tests/atoms/time_24h.test.py +++ b/tests/atoms/clock.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import time_24h +from edify.atoms import clock def _anchored(): - return Pattern().start_of_input().use(time_24h).end_of_input() + return Pattern().start_of_input().use(clock).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(time_24h).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(clock).end_of_input() assert embedded("v=" + "23:59") assert not embedded("23:59") def test_atom_regex_string_is_non_empty(): - fragment = time_24h.to_regex_string() + fragment = clock.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/hex_color.test.py b/tests/atoms/hexcolor.test.py index 9e5b270..6dbd865 100644 --- a/tests/atoms/hex_color.test.py +++ b/tests/atoms/hexcolor.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import hex_color +from edify.atoms import hexcolor def _anchored(): - return Pattern().start_of_input().use(hex_color).end_of_input() + return Pattern().start_of_input().use(hexcolor).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(hex_color).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(hexcolor).end_of_input() assert embedded("v=" + "#abc") assert not embedded("#abc") def test_atom_regex_string_is_non_empty(): - fragment = hex_color.to_regex_string() + fragment = hexcolor.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/date_iso8601.test.py b/tests/atoms/isodate.test.py index 71b0af6..aefb79a 100644 --- a/tests/atoms/date_iso8601.test.py +++ b/tests/atoms/isodate.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import date_iso8601 +from edify.atoms import isodate def _anchored(): - return Pattern().start_of_input().use(date_iso8601).end_of_input() + return Pattern().start_of_input().use(isodate).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(date_iso8601).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(isodate).end_of_input() assert embedded("v=" + "2024-01-15") assert not embedded("2024-01-15") def test_atom_regex_string_is_non_empty(): - fragment = date_iso8601.to_regex_string() + fragment = isodate.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/domain_label.test.py b/tests/atoms/label.test.py index 58d02c1..ba16b34 100644 --- a/tests/atoms/domain_label.test.py +++ b/tests/atoms/label.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import domain_label +from edify.atoms import label def _anchored(): - return Pattern().start_of_input().use(domain_label).end_of_input() + return Pattern().start_of_input().use(label).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(domain_label).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(label).end_of_input() assert embedded("v=" + "example") assert not embedded("example") def test_atom_regex_string_is_non_empty(): - fragment = domain_label.to_regex_string() + fragment = label.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/email_local.test.py b/tests/atoms/localpart.test.py index 440f2ba..51003ca 100644 --- a/tests/atoms/email_local.test.py +++ b/tests/atoms/localpart.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import email_local +from edify.atoms import localpart def _anchored(): - return Pattern().start_of_input().use(email_local).end_of_input() + return Pattern().start_of_input().use(localpart).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(email_local).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(localpart).end_of_input() assert embedded("v=" + "user.name") assert not embedded("user.name") def test_atom_regex_string_is_non_empty(): - fragment = email_local.to_regex_string() + fragment = localpart.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/hex_nibble.test.py b/tests/atoms/nibble.test.py index 578a7a1..94f39c8 100644 --- a/tests/atoms/hex_nibble.test.py +++ b/tests/atoms/nibble.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import hex_nibble +from edify.atoms import nibble def _anchored(): - return Pattern().start_of_input().use(hex_nibble).end_of_input() + return Pattern().start_of_input().use(nibble).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(hex_nibble).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(nibble).end_of_input() assert embedded("v=" + "a") assert not embedded("a") def test_atom_regex_string_is_non_empty(): - fragment = hex_nibble.to_regex_string() + fragment = nibble.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/ipv4_octet.test.py b/tests/atoms/octet.test.py index 5b9631b..00985b2 100644 --- a/tests/atoms/ipv4_octet.test.py +++ b/tests/atoms/octet.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import ipv4_octet +from edify.atoms import octet def _anchored(): - return Pattern().start_of_input().use(ipv4_octet).end_of_input() + return Pattern().start_of_input().use(octet).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(ipv4_octet).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(octet).end_of_input() assert embedded("v=" + "192") assert not embedded("192") def test_atom_regex_string_is_non_empty(): - fragment = ipv4_octet.to_regex_string() + fragment = octet.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/port_number.test.py b/tests/atoms/port.test.py index 04bae73..3c3958b 100644 --- a/tests/atoms/port_number.test.py +++ b/tests/atoms/port.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import port_number +from edify.atoms import port def _anchored(): - return Pattern().start_of_input().use(port_number).end_of_input() + return Pattern().start_of_input().use(port).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(port_number).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(port).end_of_input() assert embedded("v=" + "65535") assert not embedded("65535") def test_atom_regex_string_is_non_empty(): - fragment = port_number.to_regex_string() + fragment = port.to_regex_string() assert fragment assert isinstance(fragment, str) diff --git a/tests/atoms/uuid_v4.test.py b/tests/atoms/uuid.test.py index d672aa5..b085719 100644 --- a/tests/atoms/uuid_v4.test.py +++ b/tests/atoms/uuid.test.py @@ -1,9 +1,9 @@ from edify import Pattern -from edify.atoms import uuid_v4 +from edify.atoms import uuid def _anchored(): - return Pattern().start_of_input().use(uuid_v4).end_of_input() + return Pattern().start_of_input().use(uuid).end_of_input() def test_accepts_sample_from_shape(): @@ -15,12 +15,12 @@ def test_rejects_off_shape_input(): def test_atom_composes_inside_a_larger_pattern(): - embedded = Pattern().start_of_input().string("v=").use(uuid_v4).end_of_input() + embedded = Pattern().start_of_input().string("v=").use(uuid).end_of_input() assert embedded("v=" + "550e8400-e29b-41d4-a716-446655440000") assert not embedded("550e8400-e29b-41d4-a716-446655440000") def test_atom_regex_string_is_non_empty(): - fragment = uuid_v4.to_regex_string() + fragment = uuid.to_regex_string() assert fragment assert isinstance(fragment, str) |
