diff --git a/id/bson_test.go b/id/bson_test.go index 112eab7239859d8108d5900cfe6230f96683ecdf..4a7ca5dedbf8842d02b80c035c638c8aa4babcff 100644 --- a/id/bson_test.go +++ b/id/bson_test.go @@ -8,159 +8,6 @@ import ( "go.mongodb.org/mongo-driver/bson" ) -func TestID_MarshalBSON(t *testing.T) { - tests := []struct { - name string - id ID - want string - }{ - { - name: "OrganizationID", - id: ID{Descriptor: &OrganizationID{OrganizationID: "1"}}, - want: `"/orgs/1"`, - }, - { - name: "UserID", - id: ID{Descriptor: &UserID{UserID: "1"}}, - want: `"/users/1"`, - }, - { - name: "ServiceID", - id: ID{Descriptor: &ServiceID{ServiceID: "1"}}, - want: `"/services/1"`, - }, - { - name: "SpaceID", - id: ID{Descriptor: &SpaceID{SpaceID: "1"}}, - want: `"/spaces/1"`, - }, - { - name: "EnvironmentID", - id: ID{Descriptor: &EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}, - want: `"/spaces/1/envs/1"`, - }, - { - name: "ClientID", - id: ID{Descriptor: &ClientID{ClientID: "1", SpaceID: SpaceID{SpaceID: "1"}}}, - want: `"/spaces/1/clients/1"`, - }, - { - name: "RoleID", - id: ID{Descriptor: &RoleID{RoleID: "1", SpaceID: SpaceID{SpaceID: "1"}}}, - want: `"/spaces/1/roles/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: "SchemaID", - id: ID{Descriptor: &SchemaID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}, - want: `"/spaces/1/envs/1/schema/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: "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: "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 := bson.Marshal(tt.id) - require.NoError(t, err) - assert.Equal(t, tt.want, string(got)) - }) - } -} - -func TestID_UnmarshalBSON(t *testing.T) { - tests := []struct { - id string - want ID - b []byte - }{ - { - id: "OrganizationID", - want: ID{Descriptor: &OrganizationID{OrganizationID: "1"}}, - b: []byte(`"/orgs/1"`), - }, - { - id: "UserID", - want: ID{Descriptor: &UserID{UserID: "1"}}, - b: []byte(`"/users/1"`), - }, - { - id: "ServiceID", - want: ID{Descriptor: &ServiceID{ServiceID: "1"}}, - b: []byte(`"/services/1"`), - }, - { - id: "SpaceID", - want: ID{Descriptor: &SpaceID{SpaceID: "1"}}, - b: []byte(`"/spaces/1"`), - }, - { - id: "EnvironmentID", - want: ID{Descriptor: &EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}, - b: []byte(`"/spaces/1/envs/1"`), - }, - { - id: "ClientID", - want: ID{Descriptor: &ClientID{ClientID: "1", SpaceID: SpaceID{SpaceID: "1"}}}, - b: []byte(`"/spaces/1/clients/1"`), - }, - { - id: "RoleID", - want: ID{Descriptor: &RoleID{RoleID: "1", SpaceID: SpaceID{SpaceID: "1"}}}, - b: []byte(`"/spaces/1/roles/1"`), - }, - { - 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: "SchemaID", - want: ID{Descriptor: &SchemaID{CollectionID: "1", EnvironmentID: EnvironmentID{EnvironmentID: "1", SpaceID: SpaceID{SpaceID: "1"}}}}, - b: []byte(`"/spaces/1/envs/1/schema/1"`), - }, - { - 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: "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: "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"`), - }, - } - for _, tt := range tests { - t.Run(tt.id, func(t *testing.T) { - var i ID - - //require.NoError(t, i.UnmarshalBSON(tt.b)) - assert.Equal(t, tt.want, i) - }) - } -} - func TestID_BSON(t *testing.T) { type data struct { ID *ID