diff --git a/test/plug/router_test.exs b/test/plug/router_test.exs index 4a16734d..3c5a4c6f 100644 --- a/test/plug/router_test.exs +++ b/test/plug/router_test.exs @@ -614,6 +614,32 @@ defmodule Plug.RouterTest do %{route: "/", conn: %Plug.Conn{}, router: Sample}} end + test "error is raised with expected message when match/3 is not given :to or :do option" do + assert %{message: "expected one of :to or :do to be given as option"} = + catch_error( + defmodule NoExpectedMatchOptions do + use Plug.Router + + plug :match + plug :dispatch + + match "/", foo: :bar + end + ) + end + + test "error is raised with expected message when no routes are defined" do + assert %{message: "no routes defined in module Plug.RouterTest.NoRoutes using Plug.Router"} = + catch_error( + defmodule NoRoutes do + use Plug.Router + + plug :match + plug :dispatch + end + ) + end + defp attach(handler_id, event) do :telemetry.attach( handler_id,