public void Create_WhenPostTextNull_ShouldSaveToDatabase() { var testUser = new UserModel() { Username = "******", Nickname = "NewVALIDNICK", AuthCode = new string('b', 40) }; var httpServer = new InMemoryHttpServer("http://localhost/"); var userResponse = httpServer.CreatePostRequest("api/users/register", testUser); var userContentString = userResponse.Content.ReadAsStringAsync().Result; var userModel = JsonConvert.DeserializeObject<UserLoggedModel>(userContentString); var testPost = new PostNewModel() { Title = "Title", Text = null, Tags = { } }; var response = httpServer.CreatePostRequest("api/posts", testPost, "application/json", userModel.SessionKey); Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode); }
public void Create_WhenPostModelValid_ShouldSaveToDatabase() { var testUser = new UserModel() { Username = "******", Nickname = "NewVALIDNICK", AuthCode = new string('b', 40) }; var httpServer = new InMemoryHttpServer("http://localhost/"); var userResponse = httpServer.CreatePostRequest("api/users/register", testUser); var userContentString = userResponse.Content.ReadAsStringAsync().Result; var userModel = JsonConvert.DeserializeObject<UserLoggedModel>(userContentString); var testPost = new PostNewModel() { Title = "Post", Text = "ValidText", Tags = new string[] { "valid" } }; var response = httpServer.CreatePostRequest("api/posts", testPost, "application/json", userModel.SessionKey); Assert.AreEqual(HttpStatusCode.Created, response.StatusCode); Assert.IsNotNull(response.Content); var contentString = response.Content.ReadAsStringAsync().Result; var model = JsonConvert.DeserializeObject<PostCreatedModel>(contentString); Assert.AreEqual(testPost.Title, model.Title); Assert.IsTrue(model.Id != 0); }
public void Register_WhenNicknameNotValid_ShouldSaveToDatabase() { var testUser = new UserModel() { Username = "******", Nickname = "not---?", AuthCode = new string('b', 40) }; var httpServer = new InMemoryHttpServer("http://localhost/"); var response = httpServer.CreatePostRequest("api/users/register", testUser); Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode); }
public void GetByTags_WhenPostModelValidMany_ShouldSaveToDatabase() { var testUser = new UserModel() { Username = "******", Nickname = "NewVALIDNICK", AuthCode = new string('b', 40) }; var httpServer = new InMemoryHttpServer("http://localhost/"); var userResponse = httpServer.CreatePostRequest("api/users/register", testUser); var userContentString = userResponse.Content.ReadAsStringAsync().Result; var userModel = JsonConvert.DeserializeObject<UserLoggedModel>(userContentString); var testPostOne = new PostNewModel() { Title = "Post", Text = "ValidText", Tags = new string[] { "other" } }; var testPostTwo = new PostNewModel() { Title = "Next Post", Text = "NextText", Tags = new string[] { "other" } }; var testPostThree = new PostNewModel() { Title = "Third Post", Text = "Some", Tags = new string[] { "other" } }; httpServer.CreatePostRequest("api/posts", testPostOne, "application/json", userModel.SessionKey); httpServer.CreatePostRequest("api/posts", testPostTwo, "application/json", userModel.SessionKey); httpServer.CreatePostRequest("api/posts", testPostThree, "application/json", userModel.SessionKey); var response = httpServer.CreateGetRequest("api/posts?tags=other", "application/json", userModel.SessionKey); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); Assert.IsNotNull(response.Content); var contentString = response.Content.ReadAsStringAsync().Result; var model = JsonConvert.DeserializeObject<List<PostModel>>(contentString); Assert.AreEqual(3, model.Count); }
public void Register_WhenUserModelValid_ShouldSaveToDatabase() { var testUser = new UserModel() { Username = "******", Nickname = "AnotherVALIDNICK", AuthCode = new string('b', 40) }; var httpServer = new InMemoryHttpServer("http://localhost/"); var response = httpServer.CreatePostRequest("api/users/register", testUser); Assert.AreEqual(HttpStatusCode.Created, response.StatusCode); Assert.IsNotNull(response.Content); var contentString = response.Content.ReadAsStringAsync().Result; var model = JsonConvert.DeserializeObject<UserLoggedModel>(contentString); Assert.AreEqual(testUser.Nickname, model.Nickname); Assert.IsNotNull(model.SessionKey); }