mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-19 13:19:39 +02:00
Since the very first 0.1.0-alpha.1 release, we've been moving quickly to add new features to the Maybe app. In doing so, some parts of the codebase have become outdated, unnecessary, or overly-complex as a natural result of this feature prioritization. Now that "core" Maybe is complete, we're moving into a second phase of development where we'll be working hard to improve the accuracy of existing features and build additional features on top of "core". This PR is a quick overhaul of the existing codebase aimed to: - Establish the brand new and simplified dashboard view (pictured above) - Establish and move towards the conventions introduced in Cursor rules and project design overview #1788 - Consolidate layouts and improve the performance of layout queries - Organize the core models of the Maybe domain (i.e. Account::Entry, Account::Transaction, etc.) and break out specific traits of each model into dedicated concerns for better readability - Remove stale / dead code from codebase - Remove overly complex code paths in favor of simpler ones
31 lines
856 B
Ruby
31 lines
856 B
Ruby
require "test_helper"
|
|
|
|
class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
|
|
setup do
|
|
Capybara.default_max_wait_time = 5
|
|
end
|
|
|
|
driven_by :selenium, using: ENV["CI"].present? ? :headless_chrome : ENV.fetch("E2E_BROWSER", :chrome).to_sym, screen_size: [ 1400, 1400 ]
|
|
|
|
private
|
|
|
|
def sign_in(user)
|
|
visit new_session_path
|
|
within "form" do
|
|
fill_in "Email", with: user.email
|
|
fill_in "Password", with: "password"
|
|
click_on "Log in"
|
|
end
|
|
|
|
# Trigger Capybara's wait mechanism to avoid timing issues with logins
|
|
find("h1", text: "Welcome back, #{user.first_name}")
|
|
end
|
|
|
|
def sign_out
|
|
find("#user-menu").click
|
|
click_button "Logout"
|
|
|
|
# Trigger Capybara's wait mechanism to avoid timing issues with logout
|
|
find("h2", text: "Sign in to your account")
|
|
end
|
|
end
|