defmodule SilmataivasWeb.LocationJSONTest do use SilmataivasWeb.ConnCase, async: true import Silmataivas.LocationsFixtures import Silmataivas.UsersFixtures alias SilmataivasWeb.LocationJSON describe "location_json" do test "index/1 renders a list of locations" do user = user_fixture() location1 = location_fixture(%{user_id: user.id, latitude: 10.0, longitude: 20.0}) location2 = location_fixture(%{user_id: user.id, latitude: 30.0, longitude: 40.0}) json = LocationJSON.index(%{locations: [location1, location2]}) assert json == %{ data: [ %{ id: location1.id, latitude: location1.latitude, longitude: location1.longitude }, %{ id: location2.id, latitude: location2.latitude, longitude: location2.longitude } ] } end test "show/1 renders a single location with data wrapper" do user = user_fixture() location = location_fixture(%{user_id: user.id}) json = LocationJSON.show(%{location: location}) assert json == %{ data: %{ id: location.id, latitude: location.latitude, longitude: location.longitude } } end end end