Skip to content
Snippets Groups Projects
Commit 82a75787 authored by ko_oler's avatar ko_oler
Browse files

правки по ПР

parent 6e4c58c3
No related branches found
No related tags found
No related merge requests found
......@@ -14,27 +14,27 @@ func Test_ParseID(t *testing.T) {
wantError bool
}{
{
name: Service,
name: "ServiceID",
id: "/services/<service_id>",
result: &ID{Descriptor: &ServiceID{ServiceID: "<service_id>"}},
},
{
name: User,
name: "UserID",
id: "/users/<user_id>",
result: &ID{Descriptor: &UserID{UserID: "<user_id>"}},
},
{
name: Organization,
name: "OrganizationID",
id: "/orgs/<org_id>",
result: &ID{Descriptor: &OrganizationID{OrganizationID: "<org_id>"}},
},
{
name: Space,
name: "SpaceID",
id: "/spaces/<space_id>",
result: &ID{Descriptor: &SpaceID{SpaceID: "<space_id>"}},
},
{
name: Client,
name: "ClientID",
id: "/spaces/<space_id>/clients/<client_id>",
result: &ID{Descriptor: &ClientID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
......@@ -42,7 +42,7 @@ func Test_ParseID(t *testing.T) {
}},
},
{
name: Role,
name: "RoleID",
id: "/spaces/<space_id>/roles/<role_id>",
result: &ID{Descriptor: &RoleID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
......@@ -50,7 +50,7 @@ func Test_ParseID(t *testing.T) {
}},
},
{
name: Environment,
name: "EnvironmentID",
id: "/spaces/<space_id>/envs/<env_id>",
result: &ID{Descriptor: &EnvironmentID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
......@@ -58,7 +58,7 @@ func Test_ParseID(t *testing.T) {
}},
},
{
name: Collection,
name: "CollectionID",
id: "/spaces/<space_id>/envs/<env_id>/cols/<collection_id>",
result: &ID{Descriptor: &CollectionID{
EnvironmentID: EnvironmentID{
......@@ -69,7 +69,7 @@ func Test_ParseID(t *testing.T) {
}},
},
{
name: Schema,
name: "SchemaID",
id: "/spaces/<space_id>/envs/<env_id>/schema/<collection_id>",
result: &ID{Descriptor: &SchemaID{
EnvironmentID: EnvironmentID{
......@@ -80,7 +80,7 @@ func Test_ParseID(t *testing.T) {
}},
},
{
name: Item,
name: "ItemID",
id: "/spaces/<space_id>/envs/<env_id>/cols/<collection_id>/items/<item_id>",
result: &ID{Descriptor: &ItemID{
CollectionID: CollectionID{
......@@ -94,7 +94,7 @@ func Test_ParseID(t *testing.T) {
}},
},
{
name: Revision,
name: "RevisionID",
id: "/spaces/<space_id>/envs/<env_id>/cols/<collection_id>/items/<item_id>/revs/<rev_id>",
result: &ID{Descriptor: &RevisionID{
ItemID: ItemID{
......@@ -111,7 +111,7 @@ func Test_ParseID(t *testing.T) {
}},
},
{
name: Field,
name: "FieldID",
id: "/spaces/<space_id>/envs/<env_id>/cols/<collection_id>/items/<item_id>/fields/<field_name>",
result: &ID{Descriptor: &FieldID{
ItemID: ItemID{
......@@ -175,66 +175,48 @@ func Test_ParseID(t *testing.T) {
func Test_Map(t *testing.T) {
tests := []struct {
name string
id ID
from map[string]any
to ID
id *ID
}{
{
name: Service,
id: ID{Descriptor: &ServiceID{}},
from: map[string]any{"service_id": "<service_id>"},
to: ID{Descriptor: &ServiceID{ServiceID: "<service_id>"}},
name: "ServiceID",
id: &ID{Descriptor: &ServiceID{ServiceID: "<service_id>"}},
},
{
name: User,
id: ID{Descriptor: &UserID{}},
from: map[string]any{"user_id": "<user_id>"},
to: ID{Descriptor: &UserID{UserID: "<user_id>"}},
name: "UserID",
id: &ID{Descriptor: &UserID{UserID: "<user_id>"}},
},
{
name: Organization,
id: ID{Descriptor: &OrganizationID{}},
from: map[string]any{"organization_id": "<org_id>"},
to: ID{Descriptor: &OrganizationID{OrganizationID: "<org_id>"}},
name: "OrganizationID",
id: &ID{Descriptor: &OrganizationID{OrganizationID: "<org_id>"}},
},
{
name: Space,
id: ID{Descriptor: &SpaceID{}},
from: map[string]any{"space_id": "<space_id>"},
to: ID{Descriptor: &SpaceID{SpaceID: "<space_id>"}},
name: "SpaceID",
id: &ID{Descriptor: &SpaceID{SpaceID: "<space_id>"}},
},
{
name: Client,
id: ID{Descriptor: &ClientID{}},
from: map[string]any{"space_id": "<space_id>", "client_id": "<client_id>"},
to: ID{Descriptor: &ClientID{
name: "ClientID",
id: &ID{Descriptor: &ClientID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
ClientID: "<client_id>",
}},
},
{
name: Role,
id: ID{Descriptor: &RoleID{}},
from: map[string]any{"space_id": "<space_id>", "role_id": "<role_id>"},
to: ID{Descriptor: &RoleID{
name: "RoleID",
id: &ID{Descriptor: &RoleID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
RoleID: "<role_id>",
}},
},
{
name: Environment,
id: ID{Descriptor: &EnvironmentID{}},
from: map[string]any{"space_id": "<space_id>", "env_id": "<env_id>"},
to: ID{Descriptor: &EnvironmentID{
name: "EnvironmentID",
id: &ID{Descriptor: &EnvironmentID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
EnvironmentID: "<env_id>",
}},
},
{
name: Collection,
id: ID{Descriptor: &CollectionID{}},
from: map[string]any{"space_id": "<space_id>", "env_id": "<env_id>", "col_id": "<collection_id>"},
to: ID{Descriptor: &CollectionID{
name: "CollectionID",
id: &ID{Descriptor: &CollectionID{
EnvironmentID: EnvironmentID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
EnvironmentID: "<env_id>",
......@@ -243,10 +225,8 @@ func Test_Map(t *testing.T) {
}},
},
{
name: Schema,
id: ID{Descriptor: &SchemaID{}},
from: map[string]any{"space_id": "<space_id>", "env_id": "<env_id>", "collection_id": "<collection_id>"},
to: ID{Descriptor: &SchemaID{
name: "Schema ID",
id: &ID{Descriptor: &SchemaID{
EnvironmentID: EnvironmentID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
EnvironmentID: "<env_id>",
......@@ -255,10 +235,8 @@ func Test_Map(t *testing.T) {
}},
},
{
name: Item,
id: ID{Descriptor: &ItemID{}},
from: map[string]any{"space_id": "<space_id>", "env_id": "<env_id>", "col_id": "<collection_id>", "item_id": "<item_id>"},
to: ID{Descriptor: &ItemID{
name: "ItemID",
id: &ID{Descriptor: &ItemID{
CollectionID: CollectionID{
EnvironmentID: EnvironmentID{
SpaceID: SpaceID{SpaceID: "<space_id>"},
......@@ -270,10 +248,8 @@ func Test_Map(t *testing.T) {
}},
},
{
name: Revision,
id: ID{Descriptor: &RevisionID{}},
from: map[string]any{"space_id": "<space_id>", "env_id": "<env_id>", "col_id": "<collection_id>", "item_id": "<item_id>", "rev_id": "<rev_id>"},
to: ID{Descriptor: &RevisionID{
name: "RevisionID",
id: &ID{Descriptor: &RevisionID{
ItemID: ItemID{
CollectionID: CollectionID{
EnvironmentID: EnvironmentID{
......@@ -288,10 +264,8 @@ func Test_Map(t *testing.T) {
}},
},
{
name: Field,
id: ID{Descriptor: &FieldID{}},
from: map[string]any{"space_id": "<space_id>", "env_id": "<env_id>", "col_id": "<collection_id>", "item_id": "<item_id>", "field_name": "<field_name>"},
to: ID{Descriptor: &FieldID{
name: "FieldID",
id: &ID{Descriptor: &FieldID{
ItemID: ItemID{
CollectionID: CollectionID{
EnvironmentID: EnvironmentID{
......@@ -309,9 +283,9 @@ func Test_Map(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
v := tt.id
require.NoError(t, v.FromMap(tt.from))
require.Equal(t, tt.to, v)
require.Equal(t, v.ToMap(), tt.from)
_ = v.FromMap(tt.id.ToMap())
require.Equal(t, tt.id, v)
require.Equal(t, v.ToMap(), tt.id.ToMap())
})
}
}
......@@ -11,73 +11,73 @@ import (
func TestID_MarshalJSON(t *testing.T) {
tests := []struct {
name string
ID ID
id ID
want string
}{
{
name: Organization,
ID: ID{Descriptor: &OrganizationID{OrganizationID: "1"}},
name: "OrganizationID",
id: ID{Descriptor: &OrganizationID{OrganizationID: "1"}},
want: `"/orgs/1"`,
},
{
name: User,
ID: ID{Descriptor: &UserID{UserID: "1"}},
name: "UserID",
id: ID{Descriptor: &UserID{UserID: "1"}},
want: `"/users/1"`,
},
{
name: Service,
ID: ID{Descriptor: &ServiceID{ServiceID: "1"}},
name: "ServiceID",
id: ID{Descriptor: &ServiceID{ServiceID: "1"}},
want: `"/services/1"`,
},
{
name: Space,
ID: ID{Descriptor: &SpaceID{SpaceID: "1"}},
name: "SpaceID",
id: ID{Descriptor: &SpaceID{SpaceID: "1"}},
want: `"/spaces/1"`,
},
{
name: Environment,
ID: ID{Descriptor: &EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
name: "EnvironmentID",
id: ID{Descriptor: &EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
want: `"/spaces/1/envs/1"`,
},
{
name: Client,
ID: ID{Descriptor: &ClientID{ClientID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
name: "ClientID",
id: ID{Descriptor: &ClientID{ClientID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
want: `"/spaces/1/clients/1"`,
},
{
name: Role,
ID: ID{Descriptor: &RoleID{RoleID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
name: "RoleID",
id: ID{Descriptor: &RoleID{RoleID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
want: `"/spaces/1/roles/1"`,
},
{
name: Collection,
ID: ID{Descriptor: &CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}},
name: "CollectionID",
id: ID{Descriptor: &CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}},
want: `"/spaces/1/envs/1/cols/1"`,
},
{
name: Schema,
ID: ID{Descriptor: &SchemaID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}},
name: "SchemaID",
id: ID{Descriptor: &SchemaID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}},
want: `"/spaces/1/envs/1/schema/1"`,
},
{
name: Item,
ID: ID{Descriptor: &ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}},
name: "ItemID",
id: ID{Descriptor: &ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}},
want: `"/spaces/1/envs/1/cols/1/items/1"`,
},
{
name: Revision,
ID: ID{Descriptor: &RevisionID{RevisionID: "1", ItemID: ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}}},
name: "RevisionID",
id: ID{Descriptor: &RevisionID{RevisionID: "1", ItemID: ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}}},
want: `"/spaces/1/envs/1/cols/1/items/1/revs/1"`,
},
{
name: Field,
ID: ID{Descriptor: &FieldID{FieldName: "1", ItemID: ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}}},
name: "FieldID",
id: ID{Descriptor: &FieldID{FieldName: "1", ItemID: ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}}},
want: `"/spaces/1/envs/1/cols/1/items/1/fields/1"`,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
got, err := jsoniter.Marshal(&tt.ID)
got, err := jsoniter.Marshal(&tt.id)
require.NoError(t, err)
assert.Equal(t, tt.want, string(got))
})
......@@ -91,62 +91,62 @@ func TestID_UnmarshalJSON(t *testing.T) {
b []byte
}{
{
id: Organization,
id: "OrganizationID",
want: ID{Descriptor: &OrganizationID{OrganizationID: "1"}},
b: []byte(`"/orgs/1"`),
},
{
id: User,
id: "UserID",
want: ID{Descriptor: &UserID{UserID: "1"}},
b: []byte(`"/users/1"`),
},
{
id: Service,
id: "ServiceID",
want: ID{Descriptor: &ServiceID{ServiceID: "1"}},
b: []byte(`"/services/1"`),
},
{
id: Space,
id: "SpaceID",
want: ID{Descriptor: &SpaceID{SpaceID: "1"}},
b: []byte(`"/spaces/1"`),
},
{
id: Environment,
id: "EnvironmentID",
want: ID{Descriptor: &EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
b: []byte(`"/spaces/1/envs/1"`),
},
{
id: Client,
id: "ClientID",
want: ID{Descriptor: &ClientID{ClientID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
b: []byte(`"/spaces/1/clients/1"`),
},
{
id: Role,
id: "RoleID",
want: ID{Descriptor: &RoleID{RoleID: "1", SpaceID: SpaceID{SpaceID: "1"}}},
b: []byte(`"/spaces/1/roles/1"`),
},
{
id: Collection,
id: "CollectionID",
want: ID{Descriptor: &CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}},
b: []byte(`"/spaces/1/envs/1/cols/1"`),
},
{
id: Schema,
id: "SchemaID",
want: ID{Descriptor: &SchemaID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}},
b: []byte(`"/spaces/1/envs/1/schema/1"`),
},
{
id: Item,
id: "ItemID",
want: ID{Descriptor: &ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}},
b: []byte(`"/spaces/1/envs/1/cols/1/items/1"`),
},
{
id: Revision,
id: "RevisionID",
want: ID{Descriptor: &RevisionID{RevisionID: "1", ItemID: ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}}},
b: []byte(`"/spaces/1/envs/1/cols/1/items/1/revs/1"`),
},
{
id: Field,
id: "FieldID",
want: ID{Descriptor: &FieldID{FieldName: "1", ItemID: ItemID{ItemID: "1", CollectionID: CollectionID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}}},
b: []byte(`"/spaces/1/envs/1/cols/1/items/1/fields/1"`),
},
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment