コード例 #1
0
        public void GetUsers_Builds_Correct_Uri()
        {
            const string expectedFormValueString = "http://localhost:8091/settings/rbac/users/local";

            var handler = FakeHttpMessageHandler.Create(request =>
            {
                Assert.AreEqual(expectedFormValueString, request.RequestUri.OriginalString);
                Assert.AreEqual(HttpMethod.Get, request.Method);
                var response = new HttpResponseMessage(HttpStatusCode.OK)
                {
                    Content = new StringContent("")
                };
                return(response);
            });
            var client           = new HttpClient(handler);
            var clientConfig     = new ClientConfiguration();
            var serverConfigMock = new Mock <IServerConfig>();
            var dataMapper       = new JsonDataMapper(clientConfig);

            var manager = new ClusterManager(clientConfig, serverConfigMock.Object, dataMapper, client, "username", "password");

            manager.GetUsers(AuthenticationDomain.Local);
        }
コード例 #2
0
        public void GetUsers_Returns_Users_When_Response_Is_Success(HttpStatusCode responseHttpCode)
        {
            var expectedUsers = new List <User>
            {
                new User
                {
                    Username = "******",
                    Name     = "Alice Liddell",
                    Domain   = "builtin",
                    Roles    = new List <Role> {
                        new Role {
                            Name = "Admin"
                        }
                    }
                },
                new User
                {
                    Username = "******",
                    Name     = "White Rabbit",
                    Domain   = "builtin",
                    Roles    = new List <Role> {
                        new Role {
                            Name = "BucketManager", BucketName = "default"
                        }
                    }
                },
                new User
                {
                    Username = "******",
                    Name     = "Mad Hatter",
                    Domain   = "builtin",
                    Roles    = new List <Role> {
                        new Role {
                            Name = "FTSAdmin"
                        }
                    }
                }
            };

            var handler = FakeHttpMessageHandler.Create(
                request => new HttpResponseMessage(responseHttpCode)
            {
                Content = new StringContent(JsonConvert.SerializeObject(expectedUsers))
            }
                );
            var client           = new HttpClient(handler);
            var clientConfig     = new ClientConfiguration();
            var serverConfigMock = new Mock <IServerConfig>();
            var dataMapper       = new JsonDataMapper(clientConfig);

            var manager = new ClusterManager(clientConfig, serverConfigMock.Object, dataMapper, client, "username", "password");
            var result  = manager.GetUsers(AuthenticationDomain.Local);

            if (responseHttpCode == HttpStatusCode.OK)
            {
                Assert.IsTrue(result.Success);
                Assert.AreEqual(expectedUsers.Count, result.Value.Count());
            }
            else
            {
                Assert.IsFalse(result.Success);
                Assert.IsNull(result.Value);
            }
        }