     Repo
   }
 
-  @assets [Point, FbosConfig, FirmwareConfig]
+  @assets %{
+    Point => %Point{gantry_mounted: false, pullout_direction: 0},
+    FbosConfig => %FbosConfig{},
+    FirmwareConfig => %FirmwareConfig{}
+  }
 
   def destroy_assets() do
-    Enum.map(@assets, &Repo.delete_all/1)
+    Map.keys(@assets) |> Enum.map(&Repo.delete_all/1)
   end
 
   def create_assets() do
     %{
-      point: Repo.insert!(%Point{gantry_mounted: false, pullout_direction: 0}),
-      fbos_config: Repo.insert!(%FbosConfig{}),
-      firmware_config: Repo.insert!(%FirmwareConfig{})
+      Point => Repo.insert!(@assets[Point]),
+      FbosConfig => Repo.insert!(@assets[FbosConfig]),
+      FirmwareConfig => Repo.insert!(@assets[FirmwareConfig])
     }
+  end
+
+  def reset_assets() do
+    destroy_assets()
+    create_assets()
   end
 
   test "list_local" do

    old_results = Private.list_local(Point)
    assert Enum.count(old_results) == 0

    %{point: created_point} = create_assets()
    new_results = Private.list_local(Point)
    assert Enum.count(new_results) == 1
    local_point = Enum.at(new_results, 0)
    assert local_point == created_point
  end

  test "mark_stale!" do
    destroy_assets()
    %{firmware_config: firmware_config} = create_assets()
    refute Private.any_stale?()
    Private.mark_stale!(firmware_config)
    assert Private.any_stale?()
  end
end

defmodule FarmbotCore.Asset.PrivateTest do
  use ExUnit.Case, async: false

  alias FarmbotCore.Asset.{
    FbosConfig,
