aboutsummaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)AuthorFilesLines
2026-07-01fix(ci): skip debug=True regression test on PyPy (upstream IndexError bug)natsuoto1-0/+9
2026-07-01fix(ci): reorder edify re-exports; drop pypy-fragile capsys check on debug=Truenatsuoto1-4/+3
2026-07-01feat: terminal flag kwargs on .to_regex(ignore_case=..., multiline=..., ↵natsuoto1-0/+64
dotall=...)
2026-07-01feat!: to_regex() returns the Regex wrapper instead of raw re.Patternnatsuoto4-4/+4
2026-07-01feat: Regex result wrapper class composing over re.Patternnatsuoto1-0/+97
2026-07-01test: Hypothesis property assertion — no chain silently drops a quantifiernatsuoto1-0/+73
2026-07-01chore: consolidate quantifier error tests into tests/errors/quantifier.test.pynatsuoto2-46/+40
2026-07-01fix!: stacked quantifiers raise StackedQuantifierError at chain timenatsuoto1-0/+42
2026-07-01fix!: dangling quantifier raises DanglingQuantifierError at emitnatsuoto1-0/+52
2026-07-01test: cover the __repr__ fallback for BuilderCore subclasses without ↵natsuoto1-0/+9
TerminalsMixin
2026-07-01feat: .fork() and .copy() explicit aliases for branch constructionnatsuoto2-1/+48
2026-07-01feat!: __eq__ and __hash__ value equality on the buildernatsuoto1-0/+50
2026-07-01feat: __repr__ shows the pattern-so-far on the buildernatsuoto1-0/+31
2026-07-01feat: convenience char classes .letter() .uppercase() .lowercase() ↵natsuoto2-0/+54
.alphanumeric()
2026-07-01feat: varargs .one_of() and .any_of(*literals) chain-level shorthandnatsuoto2-0/+78
2026-07-01feat: .at_most(n) quantifier closes the symmetry gap with ↵natsuoto3-0/+25
at_least/exactly/between
2026-07-01feat: .test() boolean shortcut on Pattern and RegexBuildernatsuoto1-0/+33
2026-07-01feat: humre-style functional API — operators, constants, factories, matchernatsuoto12-4/+555
2026-07-01feat: add Pattern class and .use() composition (closes #125, #126)natsuoto2-0/+70
2026-06-30fix(ci): cover version-fallback branch deterministically via extracted helpernatsuoto1-7/+4
2026-06-26chore!: package reorg, toolchain migration to uv+ruff+pytest+hatchling, ↵natsuoto30-801/+1384
Python 3.11 floor Drops the `src/` layout. The package lives at `edify/` at repo root, split into single-purpose subpackages: `builder/` (mixins composing RegexBuilder), `elements/` (sealed dataclass AST), `compile/` (per-family render functions plus dispatch), `validate/`, `errors/` (typed exception hierarchy), and `library/` (per-validator files in family folders). Pattern, serialize, and result subpackages ship as skeletons. Replaces tox / virtualenv / flake8+isort+black / setup.py+setup.cfg / pytest.ini / .coveragerc / .bumpversion.cfg / MANIFEST.in / ci/ / tests.local.sh with a unified uv + ruff + pytest + hatchling + hatch-vcs stack driven entirely from pyproject.toml. CI workflow rewritten to `uv sync --frozen` + `uv run pytest` per matrix entry; required-status- check names preserved for `check`, `docs`, `py3X (ubuntu)`, and `pypy311 (ubuntu)`. `py39` / `py310` / `pypy310` dropped (3.11 floor). Pre-commit replaced with ruff hooks (lint + format), all hook repos SHA-pinned to commit SHAs. Tests reorganised under `tests/builder/` and `tests/library/<family>/` with the `*.test.py` naming shape. 173 tests pass, 100% line coverage. Behaviour changes versus 0.3 (each will get a documented upgrade-guide entry once #80 lands): - `to_regex_string()` returns the bare pattern (no `/.../` wrap) - `to_regex()` on `named_back_reference` compiles successfully via `(?P=name)` instead of raising - builder errors raise typed `EdifyError` subclasses instead of bare `Exception` (catch via `except EdifyError`) - internal helpers (`apply_quantifier`, `frame_creating_element`, `evaluate`, `state`, etc.) removed outright per the 0.3 → 1.0 stub-free policy Closes #68 Closes #69 Closes #253 Co-Authored-By: Claude Opus 4.7 <[email protected]>
2022-11-27fixing lintBobby7-25/+27
2022-11-27added ssn and mac validatorsBobby2-0/+22
2022-11-27added password validatorBobby1-0/+9
2022-11-27added guid validatorBobby1-0/+11
2022-11-27added zip code validatorBobby1-0/+42
2022-11-27added uuid validatorBobby1-0/+12
2022-11-27added url validatorBobby1-0/+57
2022-10-06Fixed validation for special phone numbersBobby1-1/+2
2022-09-10Fixed linting errors for date patternBobby1-1/+2
2022-09-10Added date patternBobby1-0/+56
2022-09-10Added ipv4 and ipv6 validationsBobby1-0/+35
2022-09-10Added email_rfc_5322 patternBobby2-5/+38
2022-09-03Fixed bugs and passing testsBobby1-15/+15
2022-09-02Refactoring, Fixing Tests and Coverage 💯Bobby1-230/+61
2022-09-02Added Extra TestsBobby1-0/+423
2022-09-01refactor code, fixed errors and added test casesBobby1-113/+228
2022-08-31refactor codeBobby1-2/+6
2022-08-31Added tests for builderBobby1-0/+145
2022-08-31Fixed Linting ErrorsBobby1-0/+1
2022-08-31Added Phone Number ValidationBobby1-0/+24
2022-08-30Added Tests for Validating EmailsBobby2-5/+56
2022-08-30Fixing ChecksBobby1-0/+1
2022-08-30Covering all codeBobby1-5/+2
2022-08-30Fix Linting ChecksBobby1-1/+2
2022-08-30Fixing TestsBobby1-2/+1
2022-08-30Change Main FunctionBobby1-2/+2
2022-08-30Fixing TestsBobby1-1/+2
2022-08-30Added Initial TestBobby1-2/+2
2022-08-30Add initial project skeleton.Bobby1-0/+6