本文整理匯總了TypeScript中@cmt/cmake-tools.CMakeTools.build方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript CMakeTools.build方法的具體用法?TypeScript CMakeTools.build怎麽用?TypeScript CMakeTools.build使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類@cmt/cmake-tools.CMakeTools
的用法示例。
在下文中一共展示了CMakeTools.build方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: test
test('Test build twice with clean configure', async function(this: ITestCallbackContext) {
expect(await cmt.build()).eq(0);
await cmt.cleanConfigure();
expect(await cmt.build()).eq(0);
await testEnv.result.getResultAsJson();
}).timeout(100000);
示例2: test
test('Passing env-vars to CMake but not to the compiler', async () => {
// Set fake settings
testEnv.config.updatePartial({
configureEnvironment: {
_CONFIGURE_ENV: '${workspaceRootFolderName}',
},
});
// Configure
expect(await cmt.configure()).to.be.eq(0, '[configureEnvironment] configure failed');
expect(testEnv.projectFolder.buildDirectory.isCMakeCachePresent).to.eql(true, 'expected cache not present');
const cache = await CMakeCache.fromPath(await cmt.cachePath);
const cacheEntry = cache.get('configureEnvironment') as api.CacheEntry;
expect(cacheEntry.type).to.eq(api.CacheEntryType.String, '[configureEnvironment] unexpected cache entry type');
expect(cacheEntry.key).to.eq('configureEnvironment', '[configureEnvironment] unexpected cache entry key name');
expect(cacheEntry.as<string>())
.to.eq(path.basename(testEnv.projectFolder.location), '[configureEnvironment] substitution incorrect');
expect(typeof cacheEntry.value).to.eq('string', '[configureEnvironment] unexpected cache entry value type');
// Build
expect(await cmt.build()).to.be.eq(0, '[configureEnvironment] build failed');
const result = await testEnv.result.getResultAsJson();
expect(result['configure-env']).to.eq('', '[configureEnvironment] env-var got passed to compiler');
}).timeout(100000);
示例3: setup
setup(async function(this: Mocha.IBeforeAndAfterContext) {
this.timeout(100000);
testEnv = new DefaultEnvironment('test/extension-tests/successful-build/project-folder', 'build', 'output.txt');
cmt = await CMakeTools.create(testEnv.vsContext, testEnv.wsContext);
await cmt.setKit(await getFirstSystemKit());
testEnv.projectFolder.buildDirectory.clear();
expect(await cmt.build()).to.be.eq(0);
});
示例4: function
async function(this: ITestCallbackContext) {
// Select compiler build node dependent
const os_compilers: {[osName: string]: {kitLabel: RegExp, compiler: string}[]} = {
linux: [{kitLabel: /^GCC \d/, compiler: 'GNU'}, {kitLabel: /^Clang \d/, compiler: 'Clang'}],
win32: [{kitLabel: /^GCC \d/, compiler: 'GNU'}, {kitLabel: /^VisualStudio/, compiler: 'MSVC'}]
};
if (!(workername in os_compilers))
this.skip();
const compiler = os_compilers[workername];
testEnv.kitSelection.defaultKitLabel = compiler[0].kitLabel;
await cmt.setKit(await getMatchingSystemKit(compiler[0].kitLabel));
await cmt.build();
testEnv.kitSelection.defaultKitLabel = compiler[1].kitLabel;
await cmt.setKit(await getMatchingSystemKit(compiler[1].kitLabel));
await cmt.build();
const result1 = await testEnv.result.getResultAsJson();
expect(result1['compiler']).to.eql(compiler[1].compiler);
})