| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | 
							- /* This Source Code Form is subject to the terms of the Mozilla Public
 
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
 
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
- 'use strict'
 
- const { defer: async } = require('sdk/lang/functional');
 
- const { before, after } = require('sdk/test/utils');
 
- let AFTER_RUN = 0;
 
- let BEFORE_RUN = 0;
 
- /*
 
-  * Tests are dependent on ordering, as the before and after functions
 
-  * are called outside of each test, and sometimes checked in the next test
 
-  * (like in the `after` tests)
 
-  */
 
- exports.testABeforeAsync = function (assert, done) {
 
-   assert.equal(BEFORE_RUN, 1, 'before function was called');
 
-   BEFORE_RUN = 0;
 
-   AFTER_RUN = 0;
 
-   async(done)();
 
- };
 
- exports.testABeforeNameAsync = function (assert, done) {
 
-   assert.equal(BEFORE_RUN, 2, 'before function was called with name');
 
-   BEFORE_RUN = 0;
 
-   AFTER_RUN = 0;
 
-   async(done)();
 
- };
 
- exports.testAfterAsync = function (assert, done) {
 
-   assert.equal(AFTER_RUN, 1, 'after function was called previously');
 
-   BEFORE_RUN = 0;
 
-   AFTER_RUN = 0;
 
-   async(done)();
 
- };
 
- exports.testAfterNameAsync = function (assert, done) {
 
-   assert.equal(AFTER_RUN, 2, 'after function was called with name');
 
-   BEFORE_RUN = 0;
 
-   AFTER_RUN = 0;
 
-   async(done)();
 
- };
 
- exports.testSyncABefore = function (assert) {
 
-   assert.equal(BEFORE_RUN, 1, 'before function was called for sync test');
 
-   BEFORE_RUN = 0;
 
-   AFTER_RUN = 0;
 
- };
 
- exports.testSyncAfter = function (assert) {
 
-   assert.equal(AFTER_RUN, 1, 'after function was called for sync test');
 
-   BEFORE_RUN = 0;
 
-   AFTER_RUN = 0;
 
- };
 
- before(exports, (name, assert, done) => {
 
-   if (name === 'testABeforeNameAsync')
 
-     BEFORE_RUN = 2;
 
-   else
 
-     BEFORE_RUN = 1;
 
-   assert.pass('assert passed into before function');
 
-   async(done)();
 
- });
 
- after(exports, (name, assert, done) => {
 
-   // testAfterName runs after testAfter, which is where this
 
-   // check occurs in the assertation
 
-   if (name === 'testAfterAsync')
 
-     AFTER_RUN = 2;
 
-   else
 
-     AFTER_RUN = 1;
 
-   assert.pass('assert passed into after function');
 
-   async(done)();
 
- });
 
- require('sdk/test').run(exports);
 
 
  |