diff --git a/tests/plugin.xml b/tests/plugin.xml
new file mode 100644
index 0000000..a450297
--- /dev/null
+++ b/tests/plugin.xml
@@ -0,0 +1,31 @@
+
+
+
+
+ Cordova StatusBar Plugin Tests
+ Apache 2.0
+
+
+
+
diff --git a/tests/tests.js b/tests/tests.js
new file mode 100644
index 0000000..e49ddb9
--- /dev/null
+++ b/tests/tests.js
@@ -0,0 +1,101 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+
+exports.defineManualTests = function (contentEl, createActionButton) {
+ function log(msg) {
+ var el = document.getElementById("info");
+ var logLine = document.createElement('div');
+ logLine.innerHTML = msg;
+ el.appendChild(logLine);
+ }
+
+ function doShow() {
+ StatusBar.show();
+ log('StatusBar.isVisible=' + StatusBar.isVisible);
+ }
+
+ function doHide() {
+ StatusBar.hide();
+ log('StatusBar.isVisible=' + StatusBar.isVisible);
+ }
+
+ function doColor1() {
+ log('set color=red');
+ StatusBar.backgroundColorByName('red');
+ }
+
+ function doColor2() {
+ log('set style=translucent black');
+ StatusBar.styleBlackTranslucent();
+ }
+
+ function doColor3() {
+ log('set style=default');
+ StatusBar.styleDefault();
+ }
+
+ var showOverlay = true;
+ function doOverlay() {
+ showOverlay = !showOverlay;
+ StatusBar.overlaysWebView(showOverlay);
+ log('Set overlay=' + showOverlay);
+ }
+
+ /******************************************************************************/
+
+ contentEl.innerHTML = '
' +
+ 'Also: tapping bar on iOS should emit a log.' +
+ '' +
+ '' +
+ '' +
+ '' +
+ '' +
+ '';
+
+ log('StatusBar.isVisible=' + StatusBar.isVisible);
+ window.addEventListener('statusTap', function () {
+ log('tap!');
+ }, false);
+
+ createActionButton("Show", function () {
+ doShow();
+ }, 'action-show');
+
+ createActionButton("Hide", function () {
+ doHide();
+ }, 'action-hide');
+
+ createActionButton("Style=red", function () {
+ doColor1();
+ }, 'action-color1');
+
+ createActionButton("Style=translucent black", function () {
+ doColor2();
+ }, 'action-color2');
+
+ createActionButton("Style=default", function () {
+ doColor3();
+ }, 'action-color3');
+
+ createActionButton("Toggle Overlays", function () {
+ doOverlay();
+ }, 'action-overlays');
+};