diff options
author | Daniel Narvaez <dwnarvaez@gmail.com> | 2013-02-06 16:36:20 (GMT) |
---|---|---|
committer | Daniel Narvaez <dwnarvaez@gmail.com> | 2013-02-06 16:36:20 (GMT) |
commit | 66dae0ccbc23f4df612711a2e61fadd9b15feb91 (patch) | |
tree | a069ef55f4d97b6419f38d8ce86eb19f5cc1f1e7 /apps/system/test/unit/battery_manager_test.js | |
parent | b5b9e95e2f4c8ab19cef000c82fcfc0625c52666 (diff) |
Diffstat (limited to 'apps/system/test/unit/battery_manager_test.js')
-rw-r--r-- | apps/system/test/unit/battery_manager_test.js | 204 |
1 files changed, 0 insertions, 204 deletions
diff --git a/apps/system/test/unit/battery_manager_test.js b/apps/system/test/unit/battery_manager_test.js deleted file mode 100644 index ee85f86..0000000 --- a/apps/system/test/unit/battery_manager_test.js +++ /dev/null @@ -1,204 +0,0 @@ -'use strict'; - -requireApp('system/test/unit/mock_navigator_battery.js'); -requireApp('system/test/unit/mock_settings_listener.js'); -requireApp('system/test/unit/mock_sleep_menu.js'); -requireApp('system/test/unit/mock_gesture_detector.js'); -requireApp('system/test/unit/mocks_helper.js'); -requireApp('system/js/battery_manager.js'); - -var mocksForBatteryManager = [ - 'SettingsListener', - 'SleepMenu', - 'GestureDetector' -]; - -mocksForBatteryManager.forEach(function(mockName) { - if (! window[mockName]) { - window[mockName] = null; - } -}); - - -suite('battery manager >', function() { - var realBattery; - var screenNode, notifNode, overlayNode; - var mocksHelper; - var tinyTimeout = 10; - - suiteSetup(function() { - mocksHelper = new MocksHelper(mocksForBatteryManager); - mocksHelper.suiteSetup(); - - realBattery = BatteryManager._battery; - BatteryManager._battery = MockNavigatorBattery; - - // must be big enough, otherwise the BatteryManager timeout occurs - // before the different suites execute. - BatteryManager.TOASTER_TIMEOUT = tinyTimeout; - }); - - suiteTeardown(function() { - mocksHelper.suiteTeardown(); - - BatteryManager._battery = realBattery; - realBattery = null; - }); - - setup(function() { - mocksHelper.setup(); - - var batteryNotificationMarkup = - '<div id="system-overlay" data-z-index-level="system-overlay">' + - '<div id="battery">' + - '<span class="icon-battery"></span>' + - '<span class="battery-notification" '+ - 'data-l10n-id="battery-almost-empty">Battery almost empty' + - '</span>' + - '</div>' + - '</div>'; - - screenNode = document.createElement('div'); - screenNode.id = 'screen'; - screenNode.innerHTML = batteryNotificationMarkup; - document.body.appendChild(screenNode); - - overlayNode = document.getElementById('system-overlay'); - notifNode = document.getElementById('battery'); - - MockNavigatorBattery.level = 1; - PowerSaveHandler.init(); - BatteryManager.init(); - }); - - teardown(function() { - mocksHelper.teardown(); - - screenNode.parentNode.removeChild(screenNode); - }); - - function sendScreenChange(val) { - var detail = { screenEnabled: val}; - var evt = new CustomEvent('screenchange', { detail: detail }); - window.dispatchEvent(evt); - } - - function sendLevelChange(level) { - MockNavigatorBattery.level = level; - - var evt = new CustomEvent('levelchange'); - MockNavigatorBattery.mTriggerEvent(evt); - } - - function sendChargingChange(val) { - MockNavigatorBattery.charging = val; - - var evt = new CustomEvent('chargingchange'); - MockNavigatorBattery.mTriggerEvent(evt); - } - - suite('"level is near empty" notification >', function() { - function assertDisplayed() { - assert.ok(overlayNode.classList.contains('battery')); - } - - function assertNotDisplayed() { - assert.isFalse(overlayNode.classList.contains('battery')); - } - - teardown(function(done) { - // wait for the notification timeout - setTimeout(done, tinyTimeout * 2); - }); - - suite('init >', function() { - setup(function() { - MockNavigatorBattery.level = 0.02; - BatteryManager.init(); - }); - - test('display notification', function() { - assertDisplayed(); - }); - }); - - suite('battery goes empty >', function() { - setup(function() { - sendLevelChange(0.05); - }); - - test('display notification', function() { - assertDisplayed(); - }); - - test('do not display twice', function(done) { - setTimeout(function() { - sendLevelChange(0.02); - - assertNotDisplayed(); - done(); - }, tinyTimeout * 2); - }); - - suite('charging >', function() { - setup(function() { - sendChargingChange(true); - }); - - test('hide notification', function() { - assertNotDisplayed(); - }); - - test('not charging > show notification', function() { - sendChargingChange(false); - assertDisplayed(); - }); - - suite('goes up >', function() { - setup(function() { - sendLevelChange(0.2); - }); - - test('hide notification', function() { - assertNotDisplayed(); - }); - - suite('not charging >', function() { - setup(function() { - sendChargingChange(false); - }); - - test('should not display', function() { - assertNotDisplayed(); - }); - - test('goes empty again > display notification', function() { - sendLevelChange(0.02); - - assertDisplayed(); - }); - }); - - }); - - }); - }); - - suite('screen goes off > battery goes empty >', function() { - setup(function() { - sendScreenChange(false); - sendLevelChange(0.05); - }); - - test('no notification', function() { - assertNotDisplayed(); - }); - - test('screen goes on > display notification', function() { - sendScreenChange(true); - - assertDisplayed(); - }); - }); - }); -}); |