| /* 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/. */ |
| |
| |
| load(libdir + "asserts.js"); |
| |
| if (typeof assertIteratorResult === 'undefined') { |
| var assertIteratorResult = function assertIteratorResult(result, value, done) { |
| assertEq(typeof result, "object"); |
| var expectedProps = ['done', 'value']; |
| var actualProps = Object.getOwnPropertyNames(result); |
| actualProps.sort(), expectedProps.sort(); |
| assertDeepEq(actualProps, expectedProps); |
| assertDeepEq(result.value, value); |
| assertDeepEq(result.done, done); |
| } |
| } |
| |
| if (typeof assertIteratorNext === 'undefined') { |
| var assertIteratorNext = function assertIteratorNext(iter, value) { |
| assertIteratorResult(iter.next(), value, false); |
| } |
| } |
| |
| if (typeof assertIteratorDone === 'undefined') { |
| var assertIteratorDone = function assertIteratorDone(iter, value) { |
| assertIteratorResult(iter.next(), value, true); |
| } |
| } |