remsim: factor-out HTTP_Adapter.ttcn

There are other test suites (like osmo-cbc) which can reuse some of
the HTTP utility code that was developed within the remsim test suite

Change-Id: I87a728272d47649e4faa628fad44d6f8673c8169
diff --git a/remsim/RemsimServer_Tests.ttcn b/remsim/RemsimServer_Tests.ttcn
index 1ca5ce9..fd7a1a4 100644
--- a/remsim/RemsimServer_Tests.ttcn
+++ b/remsim/RemsimServer_Tests.ttcn
@@ -24,90 +24,9 @@
 
 import from HTTPmsg_Types all;
 import from HTTPmsg_PortType all;
+import from HTTP_Adapter all;
 import from JSON_Types all;
 
-type component http_CT {
-	port HTTPmsg_PT HTTP;
-	var charstring g_http_host;
-	var integer g_http_port;
-};
-
-function f_http_init(charstring host, integer http_port) runs on http_CT {
-	map(self:HTTP, system:HTTP);
-	g_http_host := host;
-	g_http_port := http_port;
-}
-
-template (value) Connect ts_HTTP_Connect(template (value) charstring hostname,
-					 template (value) integer http_port := 80,
-					 template (value) boolean use_ssl := false) := {
-	hostname := hostname,
-	portnumber := http_port,
-	use_ssl := use_ssl
-}
-template (value) Close ts_HTTP_Close := { client_id := omit };
-
-template (value) HeaderLines ts_HTTP_Header(charstring body) := {
-	{ header_name := "Content-Type", header_value := "application/json" },
-	{ header_name := "Content-Length", header_value := int2str(lengthof(body)) }
-}
-
-template (value) HTTPMessage ts_HTTP_Req(charstring url,
-					 charstring method := "GET",
-					 charstring body := "",
-					 integer v_maj := 1, integer v_min := 1) := {
-	request := {
-		client_id := omit,
-		method := method,
-		uri := url,
-		version_major := v_maj,
-		version_minor := v_min,
-		header := ts_HTTP_Header(body),
-		body := body
-	}
-}
-
-template HTTPMessage tr_HTTP_Resp(template integer sts := ?) := {
-	response := {
-		client_id := ?,
-		version_major := ?,
-		version_minor := ?,
-		statuscode := sts,
-		statustext := ?,
-		header := ?,
-		body := ?
-	}
-};
-
-template HTTPMessage tr_HTTP_Resp2xx := tr_HTTP_Resp((200..299));
-
-/* run a HTTP request and return the response */
-function f_http_transact(charstring url, charstring method := "GET",
-			 charstring body := "", template HTTPMessage exp := tr_HTTP_Resp2xx)
-runs on http_CT return HTTPMessage {
-	var HTTPMessage resp;
-	timer T := 2.0;
-
-	HTTP.send(ts_HTTP_Connect(g_http_host, g_http_port));
-	//HTTP.receive(Connect_result:?);
-	HTTP.send(ts_HTTP_Req(url, method, body));
-	T.start;
-	alt {
-	[] HTTP.receive(exp) -> value resp {
-		setverdict(pass);
-		}
-	[] HTTP.receive(tr_HTTP_Resp) -> value resp {
-		setverdict(fail, "Unexpected HTTP response ", resp);
-		}
-	[] T.timeout {
-		setverdict(fail, "Timeout waiting for HTTP response");
-		self.stop;
-		}
-	}
-	HTTP.send(ts_HTTP_Close);
-	return resp;
-}
-
 /* run a HTTP GET on specified URL expecting json in RSRES format as response */
 function f_rsres_get(charstring url, template integer exp_sts := 200)
 runs on http_CT return JsRoot {