mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-13 19:48:37 -05:00
Merge from vscode 31e03b8ffbb218a87e3941f2b63a249f061fe0e4 (#4986)
This commit is contained in:
20
src/vs/base/test/common/buffer.test.ts
Normal file
20
src/vs/base/test/common/buffer.test.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
import * as assert from 'assert';
|
||||
import { hasBuffer, VSBuffer } from 'vs/base/common/buffer';
|
||||
|
||||
suite('Buffer', () => {
|
||||
|
||||
if (hasBuffer) {
|
||||
test('issue #71993 - VSBuffer#toString returns numbers', () => {
|
||||
const data = new Uint8Array([1, 2, 3, 'h'.charCodeAt(0), 'i'.charCodeAt(0), 4, 5]).buffer;
|
||||
const buffer = VSBuffer.wrap(new Uint8Array(data, 3, 2));
|
||||
assert.deepEqual(buffer.toString(), 'hi');
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
@@ -645,67 +645,6 @@ suite('Event utils', () => {
|
||||
});
|
||||
});
|
||||
|
||||
suite('echo', () => {
|
||||
|
||||
test('should echo events', () => {
|
||||
const result: number[] = [];
|
||||
const emitter = new Emitter<number>();
|
||||
const event = emitter.event;
|
||||
const echoEvent = Event.echo(event);
|
||||
|
||||
emitter.fire(1);
|
||||
emitter.fire(2);
|
||||
emitter.fire(3);
|
||||
assert.deepEqual(result, []);
|
||||
|
||||
const listener = echoEvent(num => result.push(num));
|
||||
assert.deepEqual(result, [1, 2, 3]);
|
||||
|
||||
emitter.fire(4);
|
||||
assert.deepEqual(result, [1, 2, 3, 4]);
|
||||
|
||||
listener.dispose();
|
||||
emitter.fire(5);
|
||||
assert.deepEqual(result, [1, 2, 3, 4]);
|
||||
});
|
||||
|
||||
test('should echo events for every listener', () => {
|
||||
const result1: number[] = [];
|
||||
const result2: number[] = [];
|
||||
const emitter = new Emitter<number>();
|
||||
const event = emitter.event;
|
||||
const echoEvent = Event.echo(event);
|
||||
|
||||
emitter.fire(1);
|
||||
emitter.fire(2);
|
||||
emitter.fire(3);
|
||||
assert.deepEqual(result1, []);
|
||||
assert.deepEqual(result2, []);
|
||||
|
||||
const listener1 = echoEvent(num => result1.push(num));
|
||||
assert.deepEqual(result1, [1, 2, 3]);
|
||||
assert.deepEqual(result2, []);
|
||||
|
||||
emitter.fire(4);
|
||||
assert.deepEqual(result1, [1, 2, 3, 4]);
|
||||
assert.deepEqual(result2, []);
|
||||
|
||||
const listener2 = echoEvent(num => result2.push(num));
|
||||
assert.deepEqual(result1, [1, 2, 3, 4]);
|
||||
assert.deepEqual(result2, [1, 2, 3, 4]);
|
||||
|
||||
emitter.fire(5);
|
||||
assert.deepEqual(result1, [1, 2, 3, 4, 5]);
|
||||
assert.deepEqual(result2, [1, 2, 3, 4, 5]);
|
||||
|
||||
listener1.dispose();
|
||||
listener2.dispose();
|
||||
emitter.fire(6);
|
||||
assert.deepEqual(result1, [1, 2, 3, 4, 5]);
|
||||
assert.deepEqual(result2, [1, 2, 3, 4, 5]);
|
||||
});
|
||||
});
|
||||
|
||||
suite('EventMultiplexer', () => {
|
||||
|
||||
test('works', () => {
|
||||
|
||||
Reference in New Issue
Block a user