Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/apps/system/test/unit/mock_notification_screen.js
diff options
context:
space:
mode:
authorDaniel Narvaez <dwnarvaez@gmail.com>2013-02-06 13:49:14 (GMT)
committer Daniel Narvaez <dwnarvaez@gmail.com>2013-02-06 13:49:14 (GMT)
commit821413607a0718156f9d25d895e89b1c3d37aa8b (patch)
tree01c285af734ed5bba64b73b489e1e0226a94a262 /apps/system/test/unit/mock_notification_screen.js
parentc110fb485b3af0066c6df7aeac8c055e9d767efa (diff)
Copy various bits from gaia
Diffstat (limited to 'apps/system/test/unit/mock_notification_screen.js')
-rw-r--r--apps/system/test/unit/mock_notification_screen.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/apps/system/test/unit/mock_notification_screen.js b/apps/system/test/unit/mock_notification_screen.js
new file mode 100644
index 0000000..2c88a90
--- /dev/null
+++ b/apps/system/test/unit/mock_notification_screen.js
@@ -0,0 +1,38 @@
+var MockNotificationScreen = {
+ wasMethodCalled: {},
+
+ mockMethods: [
+ 'incExternalNotifications',
+ 'decExternalNotifications',
+ 'updateStatusBarIcon'
+ ],
+
+ mockPopulate: function mockPopulate() {
+ this.mockMethods.forEach(function(methodName) {
+ // we could probably put this method outside if we had a closure
+ this[methodName] = function mns_method() {
+ this.methodCalled(methodName);
+ };
+ }, this);
+ },
+
+ init: function mns_init() {
+ this.wasMethodCalled = {};
+ this.mockMethods.forEach(function(methodName) {
+ this[methodName].wasCalled = false;
+ }, this);
+ },
+
+ methodCalled: function mns_methodCalled(name) {
+ this.wasMethodCalled[name] =
+ this.wasMethodCalled[name] ? this.wasMethodCalled[name]++ : 1;
+ this[name].wasCalled = true;
+ },
+
+ mTeardown: function mns_mTeardown() {
+ this.init();
+ }
+};
+
+MockNotificationScreen.mockPopulate();
+