Inheritance: EntityBase, IHiddenInterface
Exemplo n.º 1
0
 public void GetUriFor_resource_of_collection_returns_correct_url(string baseUrl, string expectedResourceUrl)
 {
     BaseUri = new Uri(baseUrl);
     var critter = new Critter() { Id = 1234 };
     var url = this.uriResolver.GetUriFor(critter);
     Assert.That(url, Is.EqualTo(expectedResourceUrl));
 }
 public void GetPreAuthenticatedUriFor_ReturnsPreAuthenticatedUriForResource()
 {
     // Very much mocked, just check that GetPreAuthenticatedUriFor actually calls IUriResolver and IPreAuthenticatedUriProvider
     var uriResolverMock = Substitute.For<IUriResolver>();
     var critter = new Critter();
     uriResolverMock.GetUriFor(critter).Returns("http://api/entities/0");
     var preAuthenticatedUriProviderMock = Substitute.For<IPreAuthenticatedUriProvider>();
     preAuthenticatedUriProviderMock.CreatePreAuthenticatedUrl("http://api/entities/0", null).Returns(
         "http://api/entities/0?$token=XYZ");
     var resolver = new DefaultPreAuthenticatedUriResolver(uriResolverMock, preAuthenticatedUriProviderMock);
     Assert.That(resolver.GetPreAuthenticatedUriFor(critter, null),
                 Is.EqualTo("http://api/entities/0?$token=XYZ"));
 }
Exemplo n.º 3
0
        public void PatchCritter_AddNewFormToList()
        {
            var critter = new Critter();
            critter.Weapons.Add(new Gun(new WeaponModel { Name = "ExistingWeaponModel" }));
            Save(critter);

            var resource = Client.Query<ICritter>().First(x => x.Id == critter.Id);
            Client.Patch(resource,
                         x => x.Weapons.Add(new WeaponForm
                         {
                             Price = 3.4m,
                             Model = new WeaponModelForm { Name = "balala" },
                             Strength = 3.5
                         }));

            Assert.That(critter.Weapons, Has.Count.EqualTo(2));
        }
Exemplo n.º 4
0
 public object Post(Critter critter, CritterCaptureCommand captureCommand)
 {
     critter.IsCaptured = true;
     return critter;
 }
Exemplo n.º 5
0
 public object Post(Critter critter, CritterExplodeCommand explodeCommand)
 {
     critter.Name = explodeCommand.Noops + " EXPLOSION!";
     return critter;
 }
Exemplo n.º 6
0
        public void PatchCritter_WithPatchOptionExpandWeapons_ExpandsWeapons()
        {
            var critter = new Critter();
            critter.Weapons.Add(new Gun(new WeaponModel { Name = "ExistingWeaponModel" }));
            Save(critter);

            var resource = Client.Query<ICritter>().First(x => x.Id == critter.Id);
            var patchResponse = Client.Patch(resource,
                                             x => x.Weapons.Add(new WeaponForm
                                             {
                                                 Price = 3.4m,
                                                 Model = new WeaponModelForm { Name = "balala" },
                                                 Strength = 3.5
                                             }),
                                             o => o.Expand(x => x.Weapons));

            Assert.That(patchResponse.Weapons.IsLoaded());
        }
Exemplo n.º 7
0
 public void SetUp()
 {
     typeMapper = new TypeMapper(new CritterPomonaConfiguration());
     this.repository = new CritterRepository(typeMapper);
     firstCritter = this.repository.List<Critter>().First();
 }