blob: 54e474928e138de1bd6a8343093d7b037a659d4f [file] [log] [blame]
package org.eclipse.basyx.regression.directory.file;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import javax.ws.rs.ServerErrorException;
import org.eclipse.basyx.regression.support.server.context.ComponentsRegressionContext;
import org.eclipse.basyx.testsuite.regression.vab.protocol.http.AASHTTPServerResource;
import org.eclipse.basyx.tools.webserviceclient.WebServiceJSONClient;
import org.junit.ClassRule;
import org.junit.Test;
/**
* Test queries to CFG file provider
*
* @author kuhn
*
*/
public class TestStaticDirectoryFileProviderExceptions {
/**
* Makes sure Tomcat Server is started
*/
@ClassRule
public static AASHTTPServerResource res = new AASHTTPServerResource(new ComponentsRegressionContext());
/**
* Execute test case that tests not implemented calls
*
* @throws UnsupportedEncodingException
*/
@Test
public void testUnsupportedCalls() throws UnsupportedEncodingException {
// Invoke BaSyx service calls via web services
WebServiceJSONClient client = new WebServiceJSONClient();
// Directory web service URL
String wsURL = "http://localhost:8080/basys.components/Testsuite/Directory/CFGFile";
// Register a new AAS (using POST)
try {
// Get a known AAS by its ID
client.post(wsURL + "/api/v1/registry", "Some content");
// Exception was not thrown
fail("Expected exception indicating that feature is not implemented was not thrown");
} catch (ServerErrorException e) {
// Check return code for expected return value (501)
assertEquals(501, e.getResponse().getStatus());
}
// Renew a specific AAS registration (using PUT)
try {
// Get a known AAS by its ID
client.put(wsURL + "/api/v1/registry/urn:de.FHG:es.iese:aas:0.98:5:lab/" + URLEncoder.encode("microscope#A-19", "UTF-8"), "Some updated content");
// Exception was not thrown
fail("Expected exception indicating that feature is not implemented was not thrown");
} catch (ServerErrorException e) {
// Check return code for expected return value (501)
assertEquals(501, e.getResponse().getStatus());
}
// Delete a specific AAS registration (using PUT)
try {
// Get a known AAS by its ID
client.delete(wsURL+"/api/v1/registry/urn:de.FHG:es.iese:aas:0.98:5:lab/"+URLEncoder.encode("microscope#A-19","UTF-8"));
// Exception was not thrown
fail("Expected exception indicating that feature is not implemented was not thrown");
} catch (ServerErrorException e) {
// Check return code for expected return value (501)
assertEquals(501, e.getResponse().getStatus());
}
}
}