代码之家  ›  专栏  ›  技术社区  ›  wzr1337

在运行时获取jasmine配置

  •  0
  • wzr1337  · 技术社区  · 6 年前

    确实扩展我的 jasmine.json 包含一些自定义属性的文件,例如我要将请求发送到的服务器的服务器配置。由于我还想在测试中使用此配置,我需要阅读 茉莉花。json 运行时期间的属性。

    我当然可以 require(path.join(process.cwd(), 'jasmine.json')) . 但当指定的位置不同时,此解决方案不起作用 茉莉花。json 执行jasmine时。

    我假设在运行时至少有一种读取配置的方法,但它确实是 不是 jasmine.config jasmine.getConfig() .

    你知道如何检索配置吗?

    谢谢

    1 回复  |  直到 6 年前
        1
  •  1
  •   Wojciech Holysz    6 年前

    抱歉,不可能通过jasmine配置的内置API访问它。

    但是,仍然可以通过解决方案实现这一点,因为有3种可能找到配置:

    const path = require('path');
    
    const getJasmineConfig = () => {
        // by default jasmine is using below path to find config file
        let configPath = 'spec/support/jasmine.json';
    
        const configArg = process.argv.find(arg => arg.indexOf('--config') > -1);
    
        if (configArg) {
            // if config path is specified by --config arg in cli
            configPath = configArg.replace('--config=', '');
        }
        else if (process.env.JASMINE_CONFIG_PATH) {
            // if config path is specified by environment variable
            configPath = process.env.JASMINE_CONFIG_PATH;
        }
    
        return require(path.resolve(process.cwd(), configPath));
    };
    

    但再一次,茉莉花既没有官方支持,也没有推荐。

    而不是用茉莉花。json对于这类东西,您可以创建自己的特定于项目的配置文件,即。 project.config.js

    并创建一个服务,在需要时为您提供配置。