mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-23 07:09:39 +02:00
Fix changelog page crash when GitHub release notes are unavailable (#2314)
* Fix changelog page crash when GitHub release notes are unavailable * Refactor changelog view to handle missing avatars gracefully and improve session sign-out logic in tests * Enhance changelog view to display fallback messages for unavailable release notes and publication dates * Update onboarding system tests to reflect UI changes and improve assertions - Changed button labels from "Get started" to "Continue" and "Complete" to align with updated UI. - Updated text assertions for clarity, changing "Set your preferences" to "Configure your preferences". - Adjusted locale selection options to include language codes. - Enhanced validation error handling in preferences form. - Improved navigation assertions to ensure accurate path checks.
This commit is contained in:
parent
6dae236fe0
commit
3cc88f3e98
6 changed files with 82 additions and 27 deletions
|
@ -16,4 +16,35 @@ class PagesControllerTest < ActionDispatch::IntegrationTest
|
|||
assert_response :ok
|
||||
end
|
||||
end
|
||||
|
||||
test "changelog with nil release notes" do
|
||||
# Mock the GitHub provider to return nil (simulating API failure or no releases)
|
||||
github_provider = mock
|
||||
github_provider.expects(:fetch_latest_release_notes).returns(nil)
|
||||
Provider::Registry.stubs(:get_provider).with(:github).returns(github_provider)
|
||||
|
||||
get changelog_path
|
||||
assert_response :ok
|
||||
assert_select "h2", text: "Release notes unavailable"
|
||||
assert_select "a[href='https://github.com/maybe-finance/maybe/releases']"
|
||||
end
|
||||
|
||||
test "changelog with incomplete release notes" do
|
||||
# Mock the GitHub provider to return incomplete data (missing some fields)
|
||||
github_provider = mock
|
||||
incomplete_data = {
|
||||
avatar: nil,
|
||||
username: "maybe-finance",
|
||||
name: "Test Release",
|
||||
published_at: nil,
|
||||
body: nil
|
||||
}
|
||||
github_provider.expects(:fetch_latest_release_notes).returns(incomplete_data)
|
||||
Provider::Registry.stubs(:get_provider).with(:github).returns(github_provider)
|
||||
|
||||
get changelog_path
|
||||
assert_response :ok
|
||||
assert_select "h2", text: "Test Release"
|
||||
# Should not crash even with nil values
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue