2016-01-18 80 views
0

我有一個幫助文件helper.php,我保留了一些輔助函數。laravel phpunit testcase中的undefined helper函數

//helper.php 
function isAuthLiked($authLikedPosts, $post) 
{ 
    return !! Auth::check() && $authLikedPosts->contains('id', $post->id); 
} 

現在在我的測試案例中,我寫道:

$this->assertTrue(isAuthLiked($authrenominations, $post[0])); 

當我運行測試時,我得到的錯誤:

Fatal error: Call to undefined function isAuthLiked() in C:\wamp\www\Nom7\tests\integration\UserTest.php on line 304

我已經添加的輔助文件compose.json自動加載。但問題依然存在。

"autoload": { 
    "classmap": [ 
     "database", 
     "app/Http/Controllers", 
     "app/Models" 
    ], 
    "files":[ 
     "app/helper.php" 
    ], 
    "psr-4": { 
     "App\\": "app/", 
     "Acme\\": "app/Acme/" 
    } 
}, 
"autoload-dev": { 
    "classmap": [ 
     "tests/TestCase.php" 
    ], 
    "files":[ 
     "app/helper.php" 
    ] 
}, 
+0

您可以發佈您的composer.json嗎? – schellingerht

+0

@Schellingerht:已添加。 – user1012181

+0

可以在測試之外使用該功能嗎? – schellingerht

回答

0

檢查您的路徑。您正在文件陣列中使用相對路徑。您正在測試目錄中運行測試,因此無法找到app/helper.php

+0

我嘗試了兩個。但它不起作用。 – user1012181

+0

檢查我更新的答案 – schellingerht

+0

我將命名空間更改爲應用程序,然後嘗試,仍然收到相同的錯誤。 – user1012181