Include Helper.js instead of including js files separately.
diff --git a/js/testing/image-loader.html b/js/testing/image-loader.html
index 29f908c..5ef9258 100644
--- a/js/testing/image-loader.html
+++ b/js/testing/image-loader.html
@@ -5,59 +5,8 @@
<head>
<title>NDN Image Loader</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script type="text/javascript" src="../NDN.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
var loadedImageString = "";
diff --git a/js/testing/image-sender.html b/js/testing/image-sender.html
index fea94c7..0033429 100644
--- a/js/testing/image-sender.html
+++ b/js/testing/image-sender.html
@@ -5,61 +5,9 @@
<head>
<title>NDN Image Sender</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script type="text/javascript" src="../NDN.js"></script>
-
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
-
-
+ <script type="text/javascript" src="../Helper.js"></script>
+
<script type="text/javascript">
//var imageString = "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";
//var imageString = "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IAAAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1JREFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jqch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0vr4MkhoXe0rZigAAAABJRU5ErkJggg==";
diff --git a/js/testing/test-connection.html b/js/testing/test-connection.html
index 5829b45..be52347 100644
--- a/js/testing/test-connection.html
+++ b/js/testing/test-connection.html
@@ -7,53 +7,7 @@
<title>Test Connection</title>
<script type="text/javascript" src="../java_socket_bridge.js"></script>
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-decode-FaceInstance.html b/js/testing/test-decode-FaceInstance.html
index e82003a..79e8f3e 100644
--- a/js/testing/test-decode-FaceInstance.html
+++ b/js/testing/test-decode-FaceInstance.html
@@ -6,56 +6,7 @@
<head>
<title>NDN Decode Face Instance</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-decode-Interest+Forwarding+Entry.html b/js/testing/test-decode-Interest+Forwarding+Entry.html
index d9b5e03..5549b17 100644
--- a/js/testing/test-decode-Interest+Forwarding+Entry.html
+++ b/js/testing/test-decode-Interest+Forwarding+Entry.html
@@ -6,57 +6,7 @@
<head>
<title>NDN Decode Interest + Face Instance</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-encode-decode-ContentObject-bis.html b/js/testing/test-encode-decode-ContentObject-bis.html
index 4bbebe4..df3e700 100644
--- a/js/testing/test-encode-decode-ContentObject-bis.html
+++ b/js/testing/test-encode-decode-ContentObject-bis.html
@@ -6,57 +6,7 @@
<head>
<title>NDN Request Example</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-encode-decode-ContentObject.html b/js/testing/test-encode-decode-ContentObject.html
index 092f56f..8f75ebe 100644
--- a/js/testing/test-encode-decode-ContentObject.html
+++ b/js/testing/test-encode-decode-ContentObject.html
@@ -6,54 +6,7 @@
<head>
<title>NDN Encode/Decode Content Object</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-encode-decode-Interest.html b/js/testing/test-encode-decode-Interest.html
index 2f59feb..4cc5a92 100644
--- a/js/testing/test-encode-decode-Interest.html
+++ b/js/testing/test-encode-decode-Interest.html
@@ -6,56 +6,7 @@
<head>
<title>NDN Encode/Decode Interest</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-get.html b/js/testing/test-get.html
index eb7017d..e4709f6 100644
--- a/js/testing/test-get.html
+++ b/js/testing/test-get.html
@@ -7,57 +7,7 @@
<title>NDN Get</title>
<script type="text/javascript" src="../java_socket_bridge.js"></script>
- <script type="text/javascript" src="../NDN.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-image-parsing.html b/js/testing/test-image-parsing.html
index 5d39f6f..749b6fc 100644
--- a/js/testing/test-image-parsing.html
+++ b/js/testing/test-image-parsing.html
@@ -5,23 +5,8 @@
<head>
<title>NDN Image Parsing</title>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.min.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
function sign(){
diff --git a/js/testing/test-interest-matches-name.html b/js/testing/test-interest-matches-name.html
index 5bf0e4a..99e7d2a 100644
--- a/js/testing/test-interest-matches-name.html
+++ b/js/testing/test-interest-matches-name.html
@@ -6,56 +6,7 @@
<head>
<title>NDN Interest Matches Name</title>
- <script type="text/javascript" src="../java_socket_bridge.js"></script>
-
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
diff --git a/js/testing/test-put.html b/js/testing/test-put.html
index 89f15a1..1fdf5b9 100644
--- a/js/testing/test-put.html
+++ b/js/testing/test-put.html
@@ -7,58 +7,7 @@
<title>NDN Put</title>
<script type="text/javascript" src="../java_socket_bridge.js"></script>
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script type="text/javascript" src="../NDN.js"></script>
-
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
-
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
function run(){
diff --git a/js/testing/test-request-send-hex.html b/js/testing/test-request-send-hex.html
index 4b88d34..9b76e0f 100644
--- a/js/testing/test-request-send-hex.html
+++ b/js/testing/test-request-send-hex.html
@@ -7,55 +7,7 @@
<title>NDN Send Hex</title>
<script type="text/javascript" src="../java_socket_bridge.js"></script>
- <script type="text/javascript" src="../util/CCNProtocolDTags.js"></script>
-
- <script type="text/javascript" src="../util/CCNTime.js"></script>
-
- <script type="text/javascript" src="../Name.js"></script>
-
- <script type="text/javascript" src="../ContentObject.js"></script>
-
- <script type="text/javascript" src="../encoding/DateFormat.js"></script>
-
- <script type="text/javascript" src="../Interest.js"></script>
-
- <script type="text/javascript" src="../Key.js"></script>
-
- <script type="text/javascript" src="../PublisherID.js"></script>
-
- <script type="text/javascript" src="../PublisherPublicKeyDigest.js"></script>
-
- <script type="text/javascript" src="../FaceInstance.js"></script>
-
- <script type="text/javascript" src="../ForwardingEntry.js"></script>
-
-
- <script type="text/javascript" src="../encoding/BinaryXMLEncoder.js"></script>
-
- <script type="text/javascript" src="../encoding/BinaryXMLDecoder.js"></script>
-
- <script type="text/javascript" src="../encoding/DataUtils.js"></script>
-
- <script type="text/javascript" src="../encoding/EncodingUtils.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
function run(){
diff --git a/js/testing/test-sha256.html b/js/testing/test-sha256.html
index 920e9d0..09987c1 100644
--- a/js/testing/test-sha256.html
+++ b/js/testing/test-sha256.html
@@ -5,22 +5,8 @@
<head>
<title>Test SHA-256</title>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.min.js"></script>
+
+ <script type="text/javascript" src="../Helper.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/sha256.js"></script>
diff --git a/js/testing/test-signature-binary.html b/js/testing/test-signature-binary.html
index dc0abd2..2801512 100644
--- a/js/testing/test-signature-binary.html
+++ b/js/testing/test-signature-binary.html
@@ -5,23 +5,8 @@
<head>
<title>NDN Signature - Binary</title>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.min.js"></script>
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
function sign(){
diff --git a/js/testing/test-signature-string.html b/js/testing/test-signature-string.html
index fa31102..58fb451 100644
--- a/js/testing/test-signature-string.html
+++ b/js/testing/test-signature-string.html
@@ -5,24 +5,8 @@
<head>
<title>NDN Signature - String</title>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/jsbn2.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsa2.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha1.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha256.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/sha512.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/md5.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/ripemd160.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/base64.js"></script>
-
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsapem-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/rsasign-1.2.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/asn1hex-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../securityLib/x509-1.1.min.js"></script>
- <script language="JavaScript" type="text/javascript" src="../security/KeyManager.js"></script>
-
+
+ <script type="text/javascript" src="../Helper.js"></script>
<script type="text/javascript">
function sign(){