mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-05 09:35:39 -05:00
93 lines
3.5 KiB
TypeScript
93 lines
3.5 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
import * as assert from 'assert';
|
|
import * as os from 'os';
|
|
import * as extfs from 'vs/base/node/extfs';
|
|
import { EnvironmentService } from 'vs/platform/environment/node/environmentService';
|
|
import { parseArgs } from 'vs/platform/environment/node/argv';
|
|
import { getRandomTestPath } from 'vs/workbench/test/workbenchTestServices';
|
|
import { join } from 'path';
|
|
import { mkdirp } from 'vs/base/node/pfs';
|
|
// {{SQL CARBON EDIT}}
|
|
import { resolveMarketplaceHeaders, ExtensionGalleryService } from 'vs/platform/extensionManagement/node/extensionGalleryService';
|
|
import { isUUID } from 'vs/base/common/uuid';
|
|
|
|
suite('Extension Gallery Service', () => {
|
|
const parentDir = getRandomTestPath(os.tmpdir(), 'vsctests', 'extensiongalleryservice');
|
|
const marketplaceHome = join(parentDir, 'Marketplace');
|
|
|
|
setup(done => {
|
|
|
|
// Delete any existing backups completely and then re-create it.
|
|
extfs.del(marketplaceHome, os.tmpdir(), () => {
|
|
mkdirp(marketplaceHome).then(() => {
|
|
done();
|
|
}, error => done(error));
|
|
});
|
|
});
|
|
|
|
teardown(done => {
|
|
extfs.del(marketplaceHome, os.tmpdir(), done);
|
|
});
|
|
|
|
test('marketplace machine id', () => {
|
|
const args = ['--user-data-dir', marketplaceHome];
|
|
const environmentService = new EnvironmentService(parseArgs(args), process.execPath);
|
|
|
|
return resolveMarketplaceHeaders(environmentService).then(headers => {
|
|
assert.ok(isUUID(headers['X-Market-User-Id']));
|
|
|
|
return resolveMarketplaceHeaders(environmentService).then(headers2 => {
|
|
assert.equal(headers['X-Market-User-Id'], headers2['X-Market-User-Id']);
|
|
});
|
|
});
|
|
});
|
|
|
|
// {{SQL CARBON EDIT}}
|
|
test('sortByField', () => {
|
|
let a = {
|
|
extensionId: undefined,
|
|
extensionName: undefined,
|
|
displayName: undefined,
|
|
shortDescription: undefined,
|
|
publisher: undefined
|
|
};
|
|
let b = {
|
|
extensionId: undefined,
|
|
extensionName: undefined,
|
|
displayName: undefined,
|
|
shortDescription: undefined,
|
|
publisher: undefined
|
|
};
|
|
|
|
|
|
assert.equal(ExtensionGalleryService.compareByField(a.publisher, b.publisher, 'publisherName'), 0);
|
|
|
|
a.publisher = { displayName: undefined, publisherId: undefined, publisherName: undefined};
|
|
assert.equal(ExtensionGalleryService.compareByField(a.publisher, b.publisher, 'publisherName'), 1);
|
|
|
|
b.publisher = { displayName: undefined, publisherId: undefined, publisherName: undefined};
|
|
assert.equal(ExtensionGalleryService.compareByField(a.publisher, b.publisher, 'publisherName'), 0);
|
|
|
|
a.publisher.publisherName = 'a';
|
|
assert.equal(ExtensionGalleryService.compareByField(a.publisher, b.publisher, 'publisherName'), 1);
|
|
|
|
b.publisher.publisherName = 'b';
|
|
assert.equal(ExtensionGalleryService.compareByField(a.publisher, b.publisher, 'publisherName'), -1);
|
|
|
|
b.publisher.publisherName = 'a';
|
|
assert.equal(ExtensionGalleryService.compareByField(a.publisher, b.publisher, 'publisherName'), 0);
|
|
|
|
a.displayName = 'test1';
|
|
assert.equal(ExtensionGalleryService.compareByField(a, b, 'displayName'), 1);
|
|
|
|
b.displayName = 'test2';
|
|
assert.equal(ExtensionGalleryService.compareByField(a, b, 'displayName'), -1);
|
|
|
|
b.displayName = 'test1';
|
|
assert.equal(ExtensionGalleryService.compareByField(a, b, 'displayName'), 0);
|
|
});
|
|
}); |