From 188bef62c950f9a2f8411906197eac12c144b0d7 Mon Sep 17 00:00:00 2001 From: ko_oler <kooler89@gmail.com> Date: Fri, 2 Feb 2024 13:12:41 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20=D0=BF?= =?UTF-8?q?=D0=BE=20=D0=9F=D0=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- id/json.go | 53 ++----------------------------------------------- id/json_test.go | 2 +- 2 files changed, 3 insertions(+), 52 deletions(-) diff --git a/id/json.go b/id/json.go index 0a0a5789..34b87589 100644 --- a/id/json.go +++ b/id/json.go @@ -14,59 +14,10 @@ func (id *ID) UnmarshalJSON(b []byte) error { if err = jsoniter.Unmarshal(b, &s); err != nil { return err } - id.Descriptor, err = Parse(s) - switch id.Type() { - case Space: - m := id.ToMap() - id.Descriptor = new(SpaceID) - _ = id.FromMap(m) - case Environment: - m := id.ToMap() - id.Descriptor = new(EnvironmentID) - _ = id.FromMap(m) - case Collection: - m := id.ToMap() - id.Descriptor = new(CollectionID) - _ = id.FromMap(m) - case Schema: - m := id.ToMap() - id.Descriptor = new(SchemaID) - _ = id.FromMap(m) - case Item: - m := id.ToMap() - id.Descriptor = new(ItemID) - _ = id.FromMap(m) - case Revision: - m := id.ToMap() - id.Descriptor = new(RevisionID) - _ = id.FromMap(m) - case Field: - m := id.ToMap() - id.Descriptor = new(FieldID) - _ = id.FromMap(m) - case Client: - m := id.ToMap() - id.Descriptor = new(ClientID) - _ = id.FromMap(m) - case Role: - m := id.ToMap() - id.Descriptor = new(RoleID) - _ = id.FromMap(m) - case User: - m := id.ToMap() - id.Descriptor = new(UserID) - _ = id.FromMap(m) - case Organization: - m := id.ToMap() - id.Descriptor = new(OrganizationID) - _ = id.FromMap(m) - case Service: - m := id.ToMap() - id.Descriptor = new(ServiceID) - _ = id.FromMap(m) - } + t, err := Parse(s) if err != nil { return err } + *id = *t return nil } diff --git a/id/json_test.go b/id/json_test.go index 5c043314..501535fa 100644 --- a/id/json_test.go +++ b/id/json_test.go @@ -155,7 +155,7 @@ func TestID_UnmarshalJSON(t *testing.T) { t.Run(tt.id, func(t *testing.T) { var i ID require.NoError(t, i.UnmarshalJSON(tt.b)) - assert.Equal(t, i, tt.want) + assert.Equal(t, tt.want, i) }) } } -- GitLab