public void ShouldCreateBaseUriForRegisteredClass() { var uriFactory = new UriFactory(); uriFactory.Register<Monster>(); Assert.AreEqual(new Uri("http://localhost:8080/virtual-directory/"), uriFactory.CreateBaseUri<Monster>(new Uri("http://localhost:8080/virtual-directory/monsters/1"))); }
public void ShouldAllowRegistrationByPassingTypeToRegisterMethod() { var uriFactory = new UriFactory(); uriFactory.Register(typeof(Treasure)); uriFactory.Register(typeof(Monster)); Assert.AreEqual(new Uri("http://restinpractice.com/treasures/1234"), uriFactory.CreateAbsoluteUri<Treasure>(new Uri("http://restinpractice.com"), 1234)); Assert.AreEqual(new Uri("monsters/1234", UriKind.Relative), uriFactory.CreateRelativeUri<Monster>(1234)); Assert.AreEqual(new Uri("http://restinpractice.com/"), uriFactory.CreateBaseUri<Treasure>(new Uri("http://restinpractice.com/treasures/1234"))); }
public void ShouldAllowRegistrationByPassingTypeToRegisterMethod() { var uriFactory = new UriFactory(); uriFactory.Register(typeof(Quote)); uriFactory.Register(typeof(OrderForm)); Assert.AreEqual(new Uri("http://restbucks.com/quote/1234"), uriFactory.CreateAbsoluteUri<Quote>(new Uri("http://restbucks.com"), 1234)); Assert.AreEqual(new Uri("order-form/1234", UriKind.Relative), uriFactory.CreateRelativeUri<OrderForm>(1234)); Assert.AreEqual(new Uri("http://restbucks.com/"), uriFactory.CreateBaseUri<Quote>(new Uri("http://restbucks.com/quote/1234"))); }
public void ThrowsExceptionIfTryingToCreateBaseUriForEntryWithoutRegisteredType() { var uriFactory = new UriFactory(); uriFactory.CreateBaseUri<Monster>(new Uri("http://localhost:8080/virtual-directory/monsters/1")); }