Implement libdnstest-based tests and fix related issues#289
Merged
AndrianBdn merged 1 commit intolibdns:masterfrom Sep 24, 2025
Merged
Implement libdnstest-based tests and fix related issues#289AndrianBdn merged 1 commit intolibdns:masterfrom
AndrianBdn merged 1 commit intolibdns:masterfrom
Conversation
Added libdnstest framework to Route53 provider and fixed multiple bugs discovered during testing. The main issue was Route53's ResourceRecordSet model - it groups records by name+type, while libdns treats each record individually. Fixed by rewriting AppendRecords and DeleteRecords to properly handle grouping. Other fixes: - deleteRecord wasn't populating resourceRecords for non-TXT types - parseRecordSet now returns typed records via libdns.Parse() - Record names converted to relative format (zone apex uses "@") - Added proper error returns instead of silent failures Testing now covers all DNS record types. Examples updated to use command-line arguments and show typed structs in output. Updated libdns to v1.1.1 throughout.
This was referenced Sep 21, 2025
|
This looks great, thank you! Could we make you a collaborator on the repository, and then you can merge and push at will? |
Collaborator
Author
|
@mholt thanks for taking a look! Yes, this repository is very quiet and I can find some time to work on it. |
|
Sounds good, thank you! I've added you as a collaborator. I don't use Route53 myself, so feel free to merge when you're ready. |
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.
This PR adds Route53-specific tests using the new libdnstest package, which is now part of libdns (alpha)
Additionally it fixes multiple bugs discovered during testing.
The main issue was Route53's ResourceRecordSet model - it groups records by name+type, while libdns treats each record individually. Fixed by rewriting AppendRecords and DeleteRecords to properly handle grouping.
Other fixes:
Testing now covers all DNS record types. Examples updated to use command-line arguments.
Updated libdns to v1.1.1 throughout. Tests currently rely on a custom go.mod in the libdnstest directory until the package is released in a stable version.