-
Notifications
You must be signed in to change notification settings - Fork 97
fix: fetch-lib error message showing "Library None not found" #2505
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
Open
Copilot
wants to merge
7
commits into
main
Choose a base branch
from
copilot/fix-charmcraft-fetch-lib-error-again
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
21def3b
Initial plan
Copilot a5aeb03
Fix error message showing 'Library None not found' in fetch-lib
Copilot f29e750
Add integration test for fetch-lib error message with no args
Copilot f51a722
Merge branch 'main' into copilot/fix-charmcraft-fetch-lib-error-again
lengau f745da3
Merge branch 'main' into copilot/fix-charmcraft-fetch-lib-error-again
lengau f8eb585
Remove integration test that doesn't work properly
Copilot 026f5c1
Add tests for fetch-lib error message behavior
Copilot File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,46 @@ | ||
| --- | ||
| summary: test fetch-lib error message when library not found | ||
|
|
||
| environment: | ||
| CHARM_NAME: nonexistent-charm-$(uuidgen | sed -e 's/-//g') | ||
|
|
||
| include: | ||
| - tests/ | ||
|
|
||
| prepare: | | ||
| tests.pkgs install jq | ||
|
|
||
| # Create a temporary charm directory with a library that has a fake lib_id | ||
| mkdir -p charm/lib/charms/nonexistent_charm/v0 | ||
|
|
||
| # Create a library file with metadata that won't exist in Charmhub | ||
| cat > charm/lib/charms/nonexistent_charm/v0/fake_lib.py << 'EOF' | ||
| # Test library with fake ID | ||
| LIBID = "00000000000000000000000000000000" | ||
| LIBAPI = 0 | ||
| LIBPATCH = 1 | ||
|
|
||
| # Some library code | ||
| def test_function(): | ||
| pass | ||
| EOF | ||
|
|
||
| restore: | | ||
| rm -rf charm | ||
|
|
||
| execute: | | ||
| cd charm | ||
|
|
||
| # Try to fetch all libraries (without specifying a library name) | ||
| # This should fail with error showing library name, not "None" | ||
| output=$(charmcraft fetch-lib 2>&1) && exit 1 || true | ||
|
|
||
| # Verify the error message contains the library name | ||
| echo "$output" | MATCH "charms.nonexistent_charm.v0.fake_lib" | ||
|
|
||
| # Verify the error message does NOT contain "Library None" | ||
| echo "$output" | NOMATCH "Library None" | ||
|
|
||
| # Verify the full error message format | ||
| echo "$output" | \ | ||
| MATCH "Library charms.nonexistent_charm.v0.fake_lib not found" |
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot write tests for this behaviour. Including a spread test.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added tests in commit 026f5c1:
Integration test (
test_fetchlib_all_library_not_found):fetch-libwithout argumentscharms.nonexistent_charm.v0.nonexistent_libinstead ofNoneSpread test (
store/libraries-not-found):charmcraft fetch-libwithout arguments