diff --git a/apps/api_web/lib/api_web/views/schedule_view.ex b/apps/api_web/lib/api_web/views/schedule_view.ex index 4d908250..ddb1607c 100644 --- a/apps/api_web/lib/api_web/views/schedule_view.ex +++ b/apps/api_web/lib/api_web/views/schedule_view.ex @@ -21,6 +21,7 @@ defmodule ApiWeb.ScheduleView do name: :added_routes, data: :added_routes, serializer: ApiWeb.RouteView, + identifiers: :always, include: true } } diff --git a/apps/api_web/test/api_web/views/schedule_view_test.exs b/apps/api_web/test/api_web/views/schedule_view_test.exs index 1a78e19d..22a54ed5 100644 --- a/apps/api_web/test/api_web/views/schedule_view_test.exs +++ b/apps/api_web/test/api_web/views/schedule_view_test.exs @@ -182,5 +182,25 @@ defmodule ApiWeb.ScheduleViewTest do } } = rendered["data"]["relationships"] end + + test "does not disappear if other relationships included", %{conn: conn} do + conn = assign(conn, :date, ~D[2026-03-31]) + + rendered = + render(ApiWeb.ScheduleView, "index.json-api", + data: %{@schedule | added_route_ids: ["route1", "route2"]}, + conn: conn, + opts: %{include: "trip"} + ) + + assert %{ + "added_routes" => %{ + "data" => [ + %{"type" => "route", "id" => "route1"}, + %{"type" => "route", "id" => "route2"} + ] + } + } = rendered["data"]["relationships"] + end end end