public void ShouldInsertARepoInTheDatabase() { var newRepo = CodeLocationFixture.FakeNoId(); var result = _harness.Controller.Create(newRepo) as JsonResult; var json = result.DeserializeData <CodeLocation>(); var repos = (List <GithubApiRepository>)_database.CodeLocations.All(); json.FullName.ShouldEqual(newRepo.FullName); json.IsPublic.ShouldEqual(newRepo.IsPublic); json.Name.ShouldEqual(newRepo.Name); repos.Count.ShouldEqual(1); }
public void WhenIdIsGiven_ShouldReturnAnError() { var newRepo = CodeLocationFixture.Fake(); var result = _harness.Controller.Create(newRepo) as JsonResult; var json = result.DeserializeData <PreconditionFailedException>(); var repos = (List <GithubApiRepository>)_database.CodeLocations.All(); _harness.Controller.Response.StatusCode.ShouldEqual((int)HttpStatusCode.PreconditionFailed); repos.Count.ShouldEqual(0); json.Message.ShouldEqual("Id cannot have a value when creating a CodeLocation"); }