mirror of
https://github.com/we-promise/sure.git
synced 2026-04-07 14:31:25 +00:00
* First cut of smallest rebrand, pending icons * Leave SQL schema tokens/user names the same for now * First batch of logos * Release notes/what's new * /releases missing * redirect_uri for sureapp:// * Padded logo * Test the correct /releases URL * Missed a few mobile URIs * Some icons/asssets from /website/ repo * Seed/sample data user @sure.local now * New screenshot * Want to keep their legal "boilerplate" from the upstream repo
51 lines
1.5 KiB
Ruby
51 lines
1.5 KiB
Ruby
require "test_helper"
|
|
|
|
class PagesControllerTest < ActionDispatch::IntegrationTest
|
|
setup do
|
|
sign_in @user = users(:family_admin)
|
|
end
|
|
|
|
test "dashboard" do
|
|
get root_path
|
|
assert_response :ok
|
|
end
|
|
|
|
test "changelog" do
|
|
VCR.use_cassette("git_repository_provider/fetch_latest_release_notes") do
|
|
get changelog_path
|
|
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/we-promise/sure/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
|