コード例 #1
0
ファイル: news.php プロジェクト: mfausten/spox-cli
$arrOptions = \getopt('acfhn', ['all', 'clear', 'fetch', 'help', 'no-persistence']);
# if ticker folder does not exist, create one, otherwise fopen wont work
# ticker folder path is controlled by const in config file
# what if news gets an update? only id comparing would not recognize!
$strSpox = \file_get_contents(HOST);
if (true === empty($strSpox)) {
    print 'could not reach remote: ' . HOST;
    exit;
}
$objTickerLinks = core\getByXPathExpression($strSpox, TICKER_LINK_SELECTOR);
if (!DEVELOPER_MODE && 0 === $objTickerLinks->length) {
    print "\ncould not find ticker link. ticker maybe hasnt started. also on weekends there is no ticker\n\n";
    exit;
}
if (DEVELOPER_MODE) {
    $strSpoxTicker = \file_get_contents(HOST_DEV);
} else {
    $strSpoxTicker = \file_get_contents(HOST . $objTickerLinks[0]->nodeValue);
}
if (true === empty($strSpoxTicker) || false === $strSpoxTicker) {
    print "\ncould not parse spox ticker: " . $objTickerLinks[0]->nodeValue . "\n\n";
    exit;
}
$objTickerItems = core\getByXPathExpression($strSpoxTicker, TICKER_ITEMS_SELECTOR);
$arrAllNews = core\getAllTickerItemsFromRemote($objTickerItems);
$arrExistingTickerItemIds = core\getExistingTickerItemIds(TICKER_NEWS_FILE_PATH);
$arrNewTickerItems = core\getNewTickerItems($arrExistingTickerItemIds, $arrAllNews);
if (0 < sizeof($arrNewTickerItems)) {
    core\persistTickerItems($arrNewTickerItems, TICKER_DAY_STORAGE_PATH, TICKER_DAY_STORAGE_FILE_NAME);
}
core\displayNewTickerItems($arrNewTickerItems);
コード例 #2
0
function testNewTickerItems()
{
    $arrReal = core\getNewTickerItems([1, 4, 7], getAllNewsMockup());
    assertEquals($arrReal, getAllNewsMockup());
}