public void HasLink_WithRouteNameNullOrEmpty_ThrowsArgumentNullException(string routeName) { // arrange var sut = new HateoasResource <Testee>(); const string parameterName = "routeName"; // act Action actual = () => sut.HasLink(routeName); Assert.Throws <ArgumentNullException>(parameterName, actual); }
public void HasLink_WithNotEmptyString_ReturnsHateoasLink <T>(T testee) where T : class { // act var sut = new HateoasResource <T>(); var hateoasLink = sut.HasLink(testee.GetType().Name); // assert Assert.NotNull(testee); Assert.NotNull(hateoasLink); Assert.IsAssignableFrom <IHateoasLink>(hateoasLink); Assert.IsAssignableFrom <IHateoasLink <T> >(hateoasLink); Assert.IsType <HateoasLink <T> >(hateoasLink); }
public void GetLinks_FromHateoasResource_WithConfiguredLinks_ReturnsNotEmptyLinks <T>(T testee) where T : Testee { // arrange const string routeName = nameof(testee); var sut = new HateoasResource <T>(); // act var hateoasLink = sut.HasLink(routeName); var hateoasLinks = sut.GetLinks(); // assert Assert.IsAssignableFrom <IEnumerable <IHateoasLink> >(hateoasLinks); Assert.IsType <List <IHateoasLink> >(hateoasLinks); Assert.IsAssignableFrom <IHateoasLink>(hateoasLink); Assert.IsAssignableFrom <IHateoasLink <T> >(hateoasLink); Assert.IsType <HateoasLink <T> >(hateoasLink); Assert.Contains(hateoasLinks, x => x.Equals(hateoasLink)); }