public async Task CheckPermissions_NoPermissions_Succeed() { // arrange var context = CreateContext(); // act var result = await ServiceInvokerPermissionMiddleware.CheckPermissions(context, Array.Empty <PermissionDescriptor <bool> >()); // assert Assert.True(result.Success); }
public async Task CheckPermissions_HasOnePermission_Succeed() { // arrange var permission = new PermissionDescriptor <bool>("Test"); var participantPermissions = CreateParticipantPermissions(permission.Configure(true)); var context = CreateContext(builder => builder.RegisterInstance(participantPermissions).AsImplementedInterfaces()); // act var result = await ServiceInvokerPermissionMiddleware.CheckPermissions(context, permission); // assert Assert.True(result.Success); }
public async Task CheckPermissions_RequireMultiplePermissionsAndDoesntHaveAll_Fail() { // arrange var permission = new PermissionDescriptor <bool>("Test"); var permission2 = new PermissionDescriptor <bool>("Test2"); var participantPermissions = CreateParticipantPermissions(permission.Configure(true)); var context = CreateContext(builder => builder.RegisterInstance(participantPermissions).AsImplementedInterfaces()); // act var result = await ServiceInvokerPermissionMiddleware.CheckPermissions(context, permission, permission2); // assert Assert.False(result.Success); }
public async Task CheckPermissions_DoesntHavePermission_Fail() { // arrange var permission = new PermissionDescriptor <bool>("Test"); var participantPermissions = CreateParticipantPermissions(); var context = CreateContext(builder => builder.RegisterInstance(participantPermissions).AsImplementedInterfaces()); // act var result = await ServiceInvokerPermissionMiddleware.CheckPermissions(context, permission); // assert Assert.False(result.Success); Assert.Equal(result.Error?.Code, CommonError.PermissionDenied(permission).Code); }