예제 #1
0
            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);
            }
예제 #2
0
            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");
            }