Conversation
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
) (#240) Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…es, and reorganize tests (#221) Remove v2-to-v3 platform mapping functions and constants. Rename load_hconfig_v2_options to load_driver_rules and load_hconfig_v2_tags to load_tag_rules, preserving dict-based driver extension for Nautobot Golden Config compatibility. Reorganize test suite into unit/, integration/, and benchmarks/ directories mirroring the source code structure. Split the 2079-line test_hier_config.py into focused files by module (test_root.py, test_child.py, test_children.py). Separate driver remediation scenario tests into integration/ and unit tests into unit/platforms/. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace inline match-rule collection with existing _collect_match_rules helper for consistency. Simplify return type from tuple[TagRule] | tuple[TagRule, ...] to tuple[TagRule, ...]. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Fix __hash__/__eq__ inconsistency in HConfigChild (#185) __hash__ included new_in_config and order_weight but __eq__ intentionally excluded them, violating the Python invariant that a == b implies hash(a) == hash(b). __eq__ also checked tags but __hash__ did not include them. Align __hash__ to use the same fields as __eq__: text, tags, and children. Add five tests covering each dimension of the inconsistency and its practical impact on set deduplication and dict key lookup. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Fix pre-existing lint errors in next branch - test_benchmarks.py: replace append loops with extend (PERF401), add @staticmethod to methods that don't use self (PLR6301), suppress intentional print calls with noqa: T201 - test_child.py: suppress pylint too-many-lines (C0302) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- tags_add()/tags_remove() → add_tags()/remove_tags() - cisco_style_text() → indented_text() - dump_simple() → to_lines() - config_to_get_to() → remediation() - depth() method → depth property - Rename private helpers _config_to_get_to/_left/_right accordingly Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add HierConfigError as the base exception with DriverNotFoundError, InvalidConfigError, IncompatibleDriverError, and reparent DuplicateChildError under it. Replace generic ValueError/TypeError raises in constructors and workflows with specific exception types. Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
#241) Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
nextbranch against the latestmasterto incorporate recent changes (Huawei VRP driver, CODEOWNERS, TextStyle Literal type)tests/unit/test_child.pyandhier_config/__init__.pyTest plan
🤖 Generated with Claude Code