0
我剛剛開始用Wordpress學習PHPUnit。我有一個從它的元數據獲取數據的小部件。PHPUnit如何測試一個包含get_post_meta()的Wordpress函數?
我的代碼如下所示:
if ($postMeta = get_post_meta($post->ID, 'feature_news_colours_overlay')) {
$colourOverlay = $postMeta['0'];
}
$items[] = [
'title' => $title,
'url' => get_permalink($post->ID),
'description' => $content,
'colourOverlay' => $colourOverlay,
];
窗口小部件從feature_news_colours_overlay
custom_field該職位獲取數據。在我的PhpUnit測試中,我可以添加以下內容以使其測試條件。
$post = new \stdClass();
$post->post_title = 'Some title text to test.';
$post->ID = 1;
$GLOBALS['post_meta'][0] = '#FFCC00';
其實,這測試我的產品陣列斷言:
'title' => 'Some title text to test.',
'url' => 'http://something..',
'description' => 'test desc',
'colourOverlay' => '#FFoooo'
這實際上睾丸我if條件,因爲我認爲這不是一個標準的方式,如果我要檢查更多的則1個帖子我實際上不能用GLOBAL值進行測試。
$ GLOBALS ['post_meta'] [0] ='#FFCC00';
有什麼辦法,我可以添加一個模擬元值到每個帖子,以檢查是否條件。