1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // Copyright 2009 The Closure Library Authors. All Rights Reserved.
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS-IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- /**
- * @fileoverview This module simplifies testing code which uses stateful
- * singletons. {@code goog.testing.singleton.reset} resets all instances, so
- * next time when {@code getInstance} is called, a new instance is created.
- * It's recommended to reset the singletons in {@code tearDown} to prevent
- * interference between subsequent tests.
- *
- * The {@code goog.testing.singleton} functions expect that the goog.DEBUG flag
- * is enabled, and the tests are either uncompiled or compiled without renaming.
- *
- */
- goog.setTestOnly('goog.testing.singleton');
- goog.provide('goog.testing.singleton');
- /**
- * Deletes all singleton instances, so {@code getInstance} will return a new
- * instance on next call.
- */
- goog.testing.singleton.reset = function() {
- var singletons = goog.getObjectByName('goog.instantiatedSingletons_');
- var ctor;
- while (ctor = singletons.pop()) {
- delete ctor.instance_;
- }
- };
- /**
- * @deprecated Please use {@code goog.addSingletonGetter}.
- */
- goog.testing.singleton.addSingletonGetter = goog.addSingletonGetter;
|