Laravel 5.1中的PHPUnit刷新请求()?

时间:2016-02-01 03:48:07

标签: php laravel request phpunit

看起来我不了解PHPUnit的一些基本知识。我的问题:

AppServiceProvider.php

class AppServiceProvider extends ServiceProvider{
   public function boot() {
      request()->country_id = 100;
   }
}

IndexController.php

public function index(Request $request) {
   dd(request()->country_id);
}
例如,

控制器,它可用于视图,控制器,无处不在......

ExampleTest.php

的基本测试
<?php
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase
{
    public function testBasicExample()
    {
        $this->visit('/')
             ->see('Laravel 5');
    }
}

在浏览器中,它将显示 100 ,当我在CLI中使用“phpunit tests / ExampleTest”时,它将返回 null 。为什么?

以这种方式使用request()是对的吗?因为每个国家/地区都有自己的域,而域(主机)是一个部分或请求。所以我决定让国家成为请求的一部分,这在我的逻辑中是有道理的。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。这是我的错。它应该在 RouteServiceProvider 中,而不是 AppServiceProvider 。谢谢大家!