use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class JAXRSClientIT method fromLinkTest.
/*
* @testName: fromLinkTest
*
* @assertion_ids: JAXRS:JAVADOC:892;
*
* @test_Strategy: Create a new instance initialized from a Link.
*/
@Test
public void fromLinkTest() throws Fault {
URI uri = UriBuilder.fromUri(LOCALHOST).build();
Link link = Link.fromUri(uri).build();
URI uri2 = UriBuilder.fromLink(link).build();
assertTrue(uri.equals(uri2), "URI" + uri + "and" + uri2 + "are not equal");
logMsg("URI fromLink is equal to the expected URI");
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class JAXRSClientIT method uriBuilderTest.
/*
* @testName: uriBuilderTest
*
* @assertion_ids: JAXRS:JAVADOC:1006; JAXRS:JAVADOC:1053;
*
* @test_Strategy: Set underlying URI builder representing the URI template for
* the link being constructed.
*
* jakarta.ws.rs.ext.RuntimeDelegate.createLinkBuilder
*/
@Test
public void uriBuilderTest() throws Fault {
String segment = "goto/label/ten/";
Link link = Link.fromUri(uri(segment)).build();
UriBuilder uriBuilder = link.getUriBuilder();
Builder linkBuilder = RuntimeDelegate.getInstance().createLinkBuilder().uriBuilder(uriBuilder);
String sBuilder = uriBuilder.build().toASCIIString();
String sFromBuilder = linkBuilder.build().getUri().toASCIIString();
assertContains(sFromBuilder, sBuilder, "Original builder", sBuilder, "not found in #fromUriBuilder", sFromBuilder);
logMsg("#fromUriBuilder", sFromBuilder, "contains the original", sBuilder);
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class JAXRSClientIT method uriStringTest.
/*
* @testName: uriStringTest
*
* @assertion_ids: JAXRS:JAVADOC:813; JAXRS:JAVADOC:1053;
*
* @test_Strategy: Set underlying string representing URI template for the link
* being constructed.
*
* jakarta.ws.rs.ext.RuntimeDelegate.createLinkBuilder
*/
@Test
public void uriStringTest() throws Fault {
Link.Builder builder = RuntimeDelegate.getInstance().createLinkBuilder().uri(url());
Link link = builder.build();
assertTrue(link.toString().contains(url()), "uri(String) " + url() + " not used in " + link);
logMsg("#uri(String) affected link", link, "as expected");
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class JAXRSClientIT method buildRelativizedThrowsIAEWhenSuppliedJustOneValueOutOfThreeTest.
/*
* @testName: buildRelativizedThrowsIAEWhenSuppliedJustOneValueOutOfThreeTest
*
* @assertion_ids: JAXRS:JAVADOC:1054;
*
* @test_Strategy: Throws: java.lang.IllegalArgumentException - if there are any
* URI template parameters without a supplied value
*/
@Test
public void buildRelativizedThrowsIAEWhenSuppliedJustOneValueOutOfThreeTest() throws Fault {
// rfc6570
Builder linkBuilder = Link.fromUri(url() + "{x1}/{x2}/{x3}");
URI respect = null;
try {
respect = new URI(url());
} catch (URISyntaxException e) {
fault(e);
}
try {
Link link = linkBuilder.buildRelativized(respect, "p");
fault("IllegalArgumentException has not been thrown when value is not supplied, link=", link.toString());
} catch (IllegalArgumentException iae) {
logMsg("IllegalArgumentException has been thrown as expected when a value has not been supplied");
}
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class JAXRSClientIT method buildRelativizedDoesNotSharePrefixTest.
/*
* @testName: buildRelativizedDoesNotSharePrefixTest
*
* @assertion_ids: JAXRS:JAVADOC:1054;
*
* @test_Strategy: If the underlying link is absolute but does not share a
* prefix with the supplied URI, this method is equivalent to calling
* build(java.lang.Object[])
*/
@Test
public void buildRelativizedDoesNotSharePrefixTest() throws Fault {
String relative = "a/b/c";
String prefix = "ssh";
URI underlay = null, respect = null;
try {
underlay = new URI(url() + relative);
respect = new URI(url().replace("http", prefix));
} catch (URISyntaxException e) {
fault(e);
}
Builder linkBuilder = RuntimeDelegate.getInstance().createLinkBuilder();
linkBuilder = linkBuilder.uri(underlay);
Link link = linkBuilder.buildRelativized(respect);
Link build = linkBuilder.build(respect);
assertContains(link.toString(), relative);
assertContains(link.toString(), url());
// |=|
assertContains(link.toString(), build.getUri().toASCIIString());
logMsg("When a prefix is not shared, the methods is equivalent to build() as expected");
}
Aggregations