功能测试中的Symfony 4.1环境变量/隔离环境变量

时间:2018-08-05 07:01:20

标签: symfony testing symfony4

我的用例有以下几种情况: https://symfony.com/doc/current/testing/insulating_clients.html

createClient()为每个调用创建一个新内核。它会重启内核(在请求之间)。

现在使用symfony4中的新环境变量系统,我遇到了问题。我的内核取决于环境参数“承租人”。由于symfony 4.x中环境变量的性质,每次引导内核时都会读取env变量。

因此,当我连续创建新内核时,env变量将在(重新)引导时更改其值。

如何冻结内核中的环境变量?或者,我将如何完全覆盖从“ env”读取env变量的机制。 例如。我想准备内核,以便不会从实际环境中读取配置中的env变量,而是从保存在内核实例等中的数组中读取数据。

覆盖\ Symfony \ Component \ DependencyInjection \ EnvVarProcessor似乎是一个好技巧,但是此服务是在容器编译器上创建并缓存的,我应该在哪里注入绝缘的env参数?

$ client-> insulate()也不起作用(我不想使用它)

0 个答案:

没有答案