# frozen_string_literal: true require 'minitest/autorun' require 'capybara/minitest' require_relative 'app' # make test report prettier require 'minitest/reporters' Minitest::Reporters.use! Capybara.app = App # Run tests for my simple Roda app. class AppTest < Minitest::Test include Capybara::DSL include Capybara::Minitest::Assertions def teardown Capybara.reset_sessions! Capybara.use_default_driver end # always passes, just to make sure tests are running def test_the_truth assert true end # Make sure not just responding to every path def test_random_page_does_not__exist visit '/skdjflksjdflkzxbjslkdjqweooiumnbvjslkdjflk' refute_equal 200, page.status_code end def test_home_page_exists visit '/' assert_equal 200, page.status_code end # Can change the checked content as your site evolves: def test_home_page_has_content visit '/' assert_content 'My Homepage' end def test_about_page_exists_and_has_content visit '/about' assert_equal 200, page.status_code assert_content 'About This Site' end end