提交 a7cf7c9f 编写于 作者: S Sandeep Somavarapu

#64597 Move away from TPromise

上级 44c97db1
......@@ -8,7 +8,6 @@ import * as types from 'vs/base/common/types';
import { InstantiationService } from 'vs/platform/instantiation/common/instantiationService';
import { ServiceCollection } from 'vs/platform/instantiation/common/serviceCollection';
import { ServiceIdentifier } from 'vs/platform/instantiation/common/instantiation';
import { TPromise } from 'vs/base/common/winjs.base';
interface IServiceMock<T> {
id: ServiceIdentifier<T>;
......@@ -72,8 +71,8 @@ export class TestInstantiationService extends InstantiationService {
public stubPromise<T>(service?: ServiceIdentifier<T>, ctor?: any, fnProperty?: string, value?: any): sinon.SinonStub;
public stubPromise<T>(service?: ServiceIdentifier<T>, obj?: any, fnProperty?: string, value?: any): sinon.SinonStub;
public stubPromise(arg1?: any, arg2?: any, arg3?: any, arg4?: any): sinon.SinonStub {
arg3 = typeof arg2 === 'string' ? TPromise.as(arg3) : arg3;
arg4 = typeof arg2 !== 'string' && typeof arg3 === 'string' ? TPromise.as(arg4) : arg4;
arg3 = typeof arg2 === 'string' ? Promise.resolve(arg3) : arg3;
arg4 = typeof arg2 !== 'string' && typeof arg3 === 'string' ? Promise.resolve(arg4) : arg4;
return this.stub(arg1, arg2, arg3, arg4);
}
......
......@@ -266,7 +266,8 @@ suite('SearchResult', () => {
});
test('replace should remove the file match', function () {
instantiationService.stubPromise(IReplaceService, 'replace', null);
const voidPromise = Promise.resolve(null);
instantiationService.stub(IReplaceService, 'replace', voidPromise);
let testObject = aSearchResult();
testObject.add([
aRawMatch('file://c:/1',
......@@ -274,12 +275,13 @@ suite('SearchResult', () => {
testObject.replace(testObject.matches()[0]);
assert.ok(testObject.isEmpty());
return voidPromise.then(() => assert.ok(testObject.isEmpty()));
});
test('replace should trigger the change event', function () {
let target = sinon.spy();
instantiationService.stubPromise(IReplaceService, 'replace', null);
const voidPromise = Promise.resolve(null);
instantiationService.stub(IReplaceService, 'replace', voidPromise);
let testObject = aSearchResult();
testObject.add([
aRawMatch('file://c:/1',
......@@ -289,12 +291,15 @@ suite('SearchResult', () => {
testObject.replace(objectRoRemove);
assert.ok(target.calledOnce);
assert.deepEqual([{ elements: [objectRoRemove], removed: true }], target.args[0]);
return voidPromise.then(() => {
assert.ok(target.calledOnce);
assert.deepEqual([{ elements: [objectRoRemove], removed: true }], target.args[0]);
});
});
test('replaceAll should remove all file matches', function () {
instantiationService.stubPromise(IReplaceService, 'replace', null);
const voidPromise = Promise.resolve(null);
instantiationService.stubPromise(IReplaceService, 'replace', voidPromise);
let testObject = aSearchResult();
testObject.add([
aRawMatch('file://c:/1',
......@@ -304,7 +309,7 @@ suite('SearchResult', () => {
testObject.replaceAll(null);
assert.ok(testObject.isEmpty());
return voidPromise.then(() => assert.ok(testObject.isEmpty()));
});
//// ----- utils
......
......@@ -5,7 +5,6 @@
import * as assert from 'assert';
import * as uuid from 'vs/base/common/uuid';
import { TPromise } from 'vs/base/common/winjs.base';
import { OS, OperatingSystem } from 'vs/base/common/platform';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action } from 'vs/base/common/actions';
......@@ -44,7 +43,7 @@ suite('KeybindingsEditorModel test', () => {
instantiationService = new TestInstantiationService();
instantiationService.stub(IKeybindingService, {});
instantiationService.stub(IExtensionService, {}, 'whenInstalledExtensionsRegistered', () => TPromise.as(null));
instantiationService.stub(IExtensionService, {}, 'whenInstalledExtensionsRegistered', () => Promise.resolve(null));
testObject = instantiationService.createInstance(KeybindingsEditorModel, OS);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册