2015-06-30 57 views
0

我想測試調用該函數https://github.com/Automattic/WPCOM-Related-Posts/blob/master/wpcom-related-posts.php如何使用嘲笑來模擬沒有命名空間的全局類?

我不知道如何嘲笑,由於WPCom_Related_Posts沒有命名空間我的WordPress應用。

這是我如何使用類

$related_posts = WPCom_Related_Posts()->get_related_posts(get_queried_object_id(), $args);  

我應該如何嘲笑這個get_related_posts的測試,因爲這個類會調用Elasticsearch獲得相關的帖子,我不想設置了PHPUnit中

回答

1

這是非常簡單的:相同的方式,你會嘲笑任何其他類:

$mock = Mockery::mock('WPCom_Related_Posts'); 
//or, if you want to be explicit: 
$mocl = Mockery::mock('\WPCom_Related_Posts'); 

有相當多的documentation along with examples阿布牛逼此,在第一頁上,例如:

$mock = \Mockery::mock('stdClass'); 

這應該已經回答了你的問題(stdClass沒有命名空間或者(嗯,這是在全球NS)。儘管(在tearDown_after中,或者在您使用的測試框架中調用的任何東西),不要忘了在每次測試結束時運行\Mockery::close();。特別是當你開始使用期望

相關問題