zf

zenflows testing
git clone https://s.sonu.ch/~srfsh/zf.git
Log | Files | Refs | Submodules | README | LICENSE

commit 1facaa5ef30ca15d94292a409eeb9314c4923870
parent 909eab4307773dc5c3a09065cd7fb66481f90d4f
Author: srfsh <dev@srf.sh>
Date:   Tue, 13 Sep 2022 20:31:51 +0300

Zenflows{,Test}.VF.Proposal: fix created

Let it use the extracted timestamp from its ID.

Diffstat:
Msrc/zenflows/vf/proposal/resolv.ex | 4++++
Msrc/zenflows/vf/proposal/type.ex | 2+-
Mtest/vf/proposal/type.test.exs | 5+++++
3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/zenflows/vf/proposal/resolv.ex b/src/zenflows/vf/proposal/resolv.ex @@ -66,6 +66,10 @@ def delete_proposal(%{id: id}, _) do end end +def created(%{id: id}, _, _) do + Zenflows.DB.ID.ts(id) +end + def eligible_location(prop, _, _) do prop = Domain.preload(prop, :eligible_location) {:ok, prop.eligible_location} diff --git a/src/zenflows/vf/proposal/type.ex b/src/zenflows/vf/proposal/type.ex @@ -59,7 +59,7 @@ object :proposal do field :unit_based, :boolean @desc @created - field :inserted_at, :datetime, name: "created" + field :created, non_null(:datetime), resolve: &Resolv.created/3 @desc @eligible_location field :eligible_location, :spatial_thing, resolve: &Resolv.eligible_location/3 diff --git a/test/vf/proposal/type.test.exs b/test/vf/proposal/type.test.exs @@ -40,6 +40,7 @@ fragment proposal on Proposal { hasBeginning hasEnd unitBased + created eligibleLocation {id} } """ @@ -59,6 +60,8 @@ describe "Query" do assert data["note"] == new.note assert data["unitBased"] == new.unit_based assert data["eligibleLocation"]["id"] == new.eligible_location_id + assert {:ok, created, 0} = DateTime.from_iso8601(data["created"]) + assert DateTime.compare(DateTime.utc_now(), created) != :lt assert {:ok, has_beginning, 0} = DateTime.from_iso8601(data["hasBeginning"]) assert DateTime.compare(DateTime.utc_now(), has_beginning) != :lt assert {:ok, has_end, 0} = DateTime.from_iso8601(data["hasEnd"]) @@ -150,6 +153,8 @@ describe "Mutation" do keys = ~w[name note unitBased hasBeginning hasEnd] assert Map.take(data, keys) == Map.take(params, keys) assert data["eligibleLocation"]["id"] == params["eligibleLocation"] + assert {:ok, created, 0} = DateTime.from_iso8601(data["created"]) + assert DateTime.compare(DateTime.utc_now(), created) != :lt end test "updateProposal", %{params: params, inserted: old} do