public void GetUser_Builds_Correct_Uri(AuthenticationDomain domain) { var expextedRequestPath = string.Format( "http://localhost:8091/settings/rbac/users/{0}/alice", domain == AuthenticationDomain.Local ? "local" : "external" ); var handler = FakeHttpMessageHandler.Create(request => { Assert.AreEqual(expextedRequestPath, 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.GetUser(domain, "alice"); }
public void Should_Hydrate_Poco_In_PascalCase_Whatever_The_Case_In_Json() { const string jsonData = "{ \"SomeProperty\": \"SOME\", \"someIntProperty\": 12345, \"haspAscalCASE\": true }"; var mapper = new JsonDataMapper(new ClientConfiguration()); var hydrated = mapper.Map<Pascal>(new MemoryStream(Encoding.UTF8.GetBytes(jsonData))); Assert.AreEqual("SOME", hydrated.SomeProperty); Assert.AreEqual(12345, hydrated.SomeIntProperty); Assert.AreEqual(true, hydrated.HasPascalCase); }
public void Should_Hydrate_Poco_In_PascalCase_Whatever_The_Case_In_Json() { const string jsonData = "{ \"SomeProperty\": \"SOME\", \"someIntProperty\": 12345, \"haspAscalCASE\": true }"; var mapper = new JsonDataMapper(new ClientConfiguration()); var hydrated = mapper.Map <Pascal>(new MemoryStream(Encoding.UTF8.GetBytes(jsonData))); Assert.AreEqual("SOME", hydrated.SomeProperty); Assert.AreEqual(12345, hydrated.SomeIntProperty); Assert.AreEqual(true, hydrated.HasPascalCase); }
public void RemoveUser_Returns_True_When_Response_Is_Success(HttpStatusCode responseHttpCode, bool expectedResult) { var handler = FakeHttpMessageHandler.Create(request => new HttpResponseMessage(responseHttpCode)); 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.RemoveUser("alice"); Assert.AreEqual(expectedResult, result.Success); }
public void UpsertUser_Returns_True_When_Response_Is_Success(HttpStatusCode responseHttpCode) { var handler = FakeHttpMessageHandler.Create(request => new HttpResponseMessage(responseHttpCode)); 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.UpsertUser("alice", "secure123", "Alice Liddell", new Role { Name = "Admin" }); Assert.AreEqual(responseHttpCode == HttpStatusCode.OK, result.Success); }
public void RemoveUser_Builds_Correct_Uri() { const string expectedFormValueString = "http://localhost:8091/settings/rbac/users/local/alice"; var handler = FakeHttpMessageHandler.Create(request => { Assert.AreEqual(expectedFormValueString, request.RequestUri.OriginalString); Assert.AreEqual(HttpMethod.Delete, request.Method); return(new HttpResponseMessage(HttpStatusCode.OK)); }); 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.RemoveUser(AuthenticationDomain.Local, "alice"); }
public void UpsertUser_Formats_FormValues(string name, string expectedFormValueString) { var handler = FakeHttpMessageHandler.Create(request => { Assert.AreEqual(expectedFormValueString, request.Content.ReadAsStringAsync().Result); return(new HttpResponseMessage(HttpStatusCode.OK)); }); 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.UpsertUser(AuthenticationDomain.Local, "alice", "secure123", name, new Role { Name = "Admin" }, new Role { Name = "BucketManager", BucketName = "default" }); }
public void GetUser_Returns_Users_When_Response_Is_Success(HttpStatusCode responseHttpCode) { var user = new User { Username = "******", Name = "Alice Liddell", Domain = "local", Roles = new List <Role> { new Role { Name = "Admin" } } }; var handler = FakeHttpMessageHandler.Create( request => new HttpResponseMessage(responseHttpCode) { Content = new StringContent(JsonConvert.SerializeObject(user)) } ); 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.GetUser(AuthenticationDomain.Local, user.Username); if (responseHttpCode == HttpStatusCode.OK) { Assert.IsTrue(result.Success); Assert.AreEqual(user.Username, result.Value.Username); Assert.AreEqual(user.Name, result.Value.Name); Assert.AreEqual("local", result.Value.Domain); } else { Assert.IsFalse(result.Success); Assert.IsNull(result.Value); } }
public void UpsertUser_Formats_FormValues() { const string expectedFormValueString = "password=secure123&name=Alice+Liddell&roles=Admin%2CBucketManager%5Bdefault%5D"; var handler = FakeHttpMessageHandler.Create(request => { Assert.AreEqual(expectedFormValueString, request.Content.ReadAsStringAsync().Result); return(new HttpResponseMessage(HttpStatusCode.OK)); }); 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.UpsertUser("alice", "secure123", "Alice Liddell", new Role { Name = "Admin" }, new Role { Name = "BucketManager", BucketName = "default" }); }
public void GetUsers_Builds_Correct_Uri() { const string expectedFormValueString = "http://localhost:8091/settings/rbac/users"; 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(); }
public void UpsertUser_Builds_Correct_Uri() { const string expectedFormValueString = "http://localhost:8091/settings/rbac/users/local/alice"; var handler = FakeHttpMessageHandler.Create(request => { Assert.AreEqual(expectedFormValueString, request.RequestUri.OriginalString); Assert.AreEqual(HttpMethod.Put, request.Method); return(new HttpResponseMessage(HttpStatusCode.OK)); }); 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.UpsertUser("alice", "secure123", "Alice Liddell", new Role { Name = "Admin" }, new Role { Name = "BucketManager", BucketName = "default" }); }
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); } }