diff options
Diffstat (limited to 'addon-sdk/source/test/test-test-memory.js')
-rw-r--r-- | addon-sdk/source/test/test-test-memory.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/addon-sdk/source/test/test-test-memory.js b/addon-sdk/source/test/test-test-memory.js new file mode 100644 index 000000000..0f53fae8c --- /dev/null +++ b/addon-sdk/source/test/test-test-memory.js @@ -0,0 +1,25 @@ +/* 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 { Cc, Ci, Cu, components } = require('chrome'); +const { gc } = require('sdk/test/memory'); + +exports.testGC = function*(assert) { + let weakref; + + if (true) { + let tempObj = {}; + weakref = Cu.getWeakReference(tempObj); + assert.equal(weakref.get(), tempObj, 'the weakref returned the tempObj'); + } + + let arg = yield gc(); + + assert.equal(arg, undefined, 'there is no argument'); + assert.pass('gc() returns a promise which eventually resolves'); + assert.equal(weakref.get(), undefined, 'the weakref returned undefined'); +}; + +require('sdk/test').run(exports); |