@@ -197,7 +197,7 @@ var _ = Describe("ocm share", func() {
197
197
},
198
198
},
199
199
AccessMethods : []* ocmv1beta1.AccessMethod {
200
- share .NewWebDavAccessMethod (conversions .NewViewerRole ().CS3ResourcePermissions ()),
200
+ share .NewWebDavAccessMethod (conversions .NewViewerRole ().CS3ResourcePermissions (), [] string {} ),
201
201
},
202
202
RecipientMeshProvider : cesnet .ProviderInfo ,
203
203
})
@@ -278,7 +278,7 @@ var _ = Describe("ocm share", func() {
278
278
},
279
279
},
280
280
AccessMethods : []* ocmv1beta1.AccessMethod {
281
- share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions ()),
281
+ share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions (), [] string {} ),
282
282
},
283
283
RecipientMeshProvider : cesnet .ProviderInfo ,
284
284
})
@@ -374,7 +374,7 @@ var _ = Describe("ocm share", func() {
374
374
},
375
375
},
376
376
AccessMethods : []* ocmv1beta1.AccessMethod {
377
- share .NewWebDavAccessMethod (conversions .NewViewerRole ().CS3ResourcePermissions ()),
377
+ share .NewWebDavAccessMethod (conversions .NewViewerRole ().CS3ResourcePermissions (), [] string {} ),
378
378
},
379
379
RecipientMeshProvider : cesnet .ProviderInfo ,
380
380
})
@@ -477,7 +477,7 @@ var _ = Describe("ocm share", func() {
477
477
},
478
478
},
479
479
AccessMethods : []* ocmv1beta1.AccessMethod {
480
- share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions ()),
480
+ share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions (), [] string {} ),
481
481
},
482
482
RecipientMeshProvider : cesnet .ProviderInfo ,
483
483
})
@@ -626,7 +626,7 @@ var _ = Describe("ocm share", func() {
626
626
},
627
627
},
628
628
AccessMethods : []* ocmv1beta1.AccessMethod {
629
- share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions ()),
629
+ share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions (), [] string {} ),
630
630
},
631
631
RecipientMeshProvider : cesnet .ProviderInfo ,
632
632
})
@@ -643,7 +643,7 @@ var _ = Describe("ocm share", func() {
643
643
},
644
644
},
645
645
AccessMethods : []* ocmv1beta1.AccessMethod {
646
- share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions ()),
646
+ share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions (), [] string {} ),
647
647
},
648
648
RecipientMeshProvider : cesnet .ProviderInfo ,
649
649
})
@@ -668,7 +668,7 @@ var _ = Describe("ocm share", func() {
668
668
},
669
669
},
670
670
AccessMethods : []* ocmv1beta1.AccessMethod {
671
- share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions ()),
671
+ share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions (), [] string {} ),
672
672
},
673
673
RecipientMeshProvider : cesnet .ProviderInfo ,
674
674
})
@@ -677,6 +677,40 @@ var _ = Describe("ocm share", func() {
677
677
})
678
678
})
679
679
680
+ Context ("einstein creates a share with a requirement that cannot be met" , func () {
681
+ It ("fail with bad request error" , func () {
682
+ fileToShare := & provider.Reference {
683
+ Path : "/home/file-with-req" ,
684
+ }
685
+ By ("creating a file" )
686
+ Expect (helpers .CreateFile (ctxEinstein , cernboxgw , fileToShare .Path , []byte ("test" ))).To (Succeed ())
687
+
688
+ By ("share the file with marie" )
689
+ info , err := stat (ctxEinstein , cernboxgw , fileToShare )
690
+ Expect (err ).ToNot (HaveOccurred ())
691
+
692
+ cesnet , err := cernboxgw .GetInfoByDomain (ctxEinstein , & ocmproviderpb.GetInfoByDomainRequest {
693
+ Domain : "cesnet.cz" ,
694
+ })
695
+ Expect (err ).ToNot (HaveOccurred ())
696
+ Expect (cesnet .Status .Code ).To (Equal (rpcv1beta1 .Code_CODE_OK ))
697
+
698
+ createShareRes , err := cernboxgw .CreateOCMShare (ctxEinstein , & ocmv1beta1.CreateOCMShareRequest {
699
+ ResourceId : info .Id ,
700
+ Grantee : & provider.Grantee {
701
+ Id : & provider.Grantee_UserId {
702
+ UserId : marie .Id ,
703
+ },
704
+ },
705
+ AccessMethods : []* ocmv1beta1.AccessMethod {
706
+ share .NewWebDavAccessMethod (conversions .NewEditorRole ().CS3ResourcePermissions (), []string {"unsupported-requirement" }),
707
+ },
708
+ RecipientMeshProvider : cesnet .ProviderInfo ,
709
+ })
710
+ Expect (err ).ToNot (HaveOccurred ())
711
+ Expect (createShareRes .Status .Code ).To (Equal (rpcv1beta1 .Code_CODE_INVALID_ARGUMENT ))
712
+ })
713
+ })
680
714
})
681
715
})
682
716
0 commit comments