jad*_*nda 22
您可以使用Object.defineProperty()设置process.platformin的值,beforeAll然后afterAll在测试完成后将其重置为原始值.
如果您打印Object.getOwnPropertyDescriptor(process, "platform")以获取node.js控制台中的descriptor配置,platform.process那么您将获得以下内容:
{ value: 'darwin',
writable: false,
enumerable: true,
configurable: true }
Run Code Online (Sandbox Code Playgroud)
如您所见,值process.platform不可写(有关更多信息,请参阅文档),因此您无法使用赋值运算符进行设置.但你可以用它来覆盖它Object.defineProperty.
茉莉花的例子
describe('test process platform', function(){
beforeAll(function(){
this.originalPlatform = process.platform;
Object.defineProperty(process, 'platform', {
value: 'MockOS'
});
});
it(/*test*/);
....
it(/*test*/);
afterAll(function(){
Object.defineProperty(process, 'platform', {
value: this.originalPlatform
});
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3055 次 |
| 最近记录: |