mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-03 01:25:38 -05:00
Merge from vscode 1ce89e2cb720d69c496c2815c4696ee4fd4429a6 (#6779)
* Merge from vscode 1ce89e2cb720d69c496c2815c4696ee4fd4429a6 * redisable accounts because of issues
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
import * as assert from 'assert';
|
||||
import { IDisposable, dispose, ReferenceCollection, Disposable as DisposableBase, toDisposable } from 'vs/base/common/lifecycle';
|
||||
import { IDisposable, dispose, ReferenceCollection } from 'vs/base/common/lifecycle';
|
||||
|
||||
class Disposable implements IDisposable {
|
||||
isDisposed = false;
|
||||
@@ -50,38 +50,6 @@ suite('Lifecycle', () => {
|
||||
});
|
||||
});
|
||||
|
||||
suite('DisposableBase', () => {
|
||||
test('register should not leak if object has already been disposed', () => {
|
||||
let aCount = 0;
|
||||
let bCount = 0;
|
||||
|
||||
const disposable = new class extends DisposableBase {
|
||||
register(other: IDisposable) {
|
||||
this._register(other);
|
||||
}
|
||||
};
|
||||
|
||||
disposable.register(toDisposable(() => ++aCount));
|
||||
|
||||
assert.strictEqual(aCount, 0);
|
||||
assert.strictEqual(bCount, 0);
|
||||
|
||||
disposable.dispose();
|
||||
assert.strictEqual(aCount, 1);
|
||||
assert.strictEqual(bCount, 0);
|
||||
|
||||
// Any newly added disposables should be disposed of immediately
|
||||
disposable.register(toDisposable(() => ++bCount));
|
||||
assert.strictEqual(aCount, 1);
|
||||
assert.strictEqual(bCount, 1);
|
||||
|
||||
// Further dispose calls should have no effect
|
||||
disposable.dispose();
|
||||
assert.strictEqual(aCount, 1);
|
||||
assert.strictEqual(bCount, 1);
|
||||
});
|
||||
});
|
||||
|
||||
suite('Reference Collection', () => {
|
||||
class Collection extends ReferenceCollection<number> {
|
||||
private _count = 0;
|
||||
@@ -118,4 +86,4 @@ suite('Reference Collection', () => {
|
||||
ref4.dispose();
|
||||
assert.equal(collection.count, 0);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
import * as assert from 'assert';
|
||||
import * as path from 'vs/base/common/path';
|
||||
import { isWindows } from 'vs/base/common/platform';
|
||||
import * as process from 'vs/base/common/process';
|
||||
|
||||
suite('Paths (Node Implementation)', () => {
|
||||
test('join', () => {
|
||||
|
||||
Reference in New Issue
Block a user