示例#1
0
        internal override void OnUpdateData(PluginData pluginData)
        {
            //TODO fix permissions, now it doesn't use permissions at all
            var clients = _hubContext.Clients.Clients(_permissionMemoryCache.GetClients(null).ToList());

            clients.SendAsync("UpdatePageData", PluginKey, RazorComponentType.FullName, pluginData).Wait();
        }
        public void GetClientsTest(Permissions?permissions, string[] expectedClients)
        {
            //Arrange
            PermissionMemoryCache permissionMemoryCache = new PermissionMemoryCache();

            permissionMemoryCache.AddClient("client1", null);
            permissionMemoryCache.AddClient("client2", null);
            permissionMemoryCache.AddClient("client3", Permissions.ALL);
            permissionMemoryCache.AddClient("client4", Permissions.CREATE_PROJECTS | Permissions.DELETE_PROJECTS);

            //Act
            var clients = permissionMemoryCache.GetClients(permissions);

            //Assert
            //we expect these clients
            Assert.Equal(expectedClients, clients);
        }
        public void RemoveClientTest(string client)
        {
            //Arrange
            PermissionMemoryCache permissionMemoryCache = new PermissionMemoryCache();

            permissionMemoryCache.AddClient("client1", null);
            permissionMemoryCache.AddClient("client2", null);
            permissionMemoryCache.AddClient("client3", Permissions.ALL);
            permissionMemoryCache.AddClient("client4", Permissions.CREATE_PROJECTS | Permissions.DELETE_PROJECTS);

            //Act
            permissionMemoryCache.RemoveClient(client);

            //get all clients
            var clients = permissionMemoryCache.GetClients(null).ToList();

            //Assert
            //we expect these clients
            Assert.DoesNotContain(client, clients);
            Assert.Equal(3, clients.Count);
        }