Exemple #1
0
<?php

require '../gilt_api.php';
require '../lib/cache_http_get.php';
$api_key = file_get_contents('/etc/gilt_apikey');
//$api_key = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$cache = new CacheHttpGet('cache');
$gilt = new Gilt($api_key, $cache);
function cacheProducts($products)
{
    global $gilt, $cache;
    foreach ($products as $url) {
        $product = $gilt->getProduct($url);
        $cache->cache_put($url, $product->getJson());
        echo $url . "<br/>";
        flush();
    }
}
function cacheSales($sales)
{
    global $gilt, $cache;
    foreach ($sales as $sale) {
        $url = $sale->getSale();
        $cache->cache_put($url, $sale->getJson());
        echo $url . "<br/>";
        flush();
        cacheProducts($sale->getProducts());
    }
}
cacheSales($gilt->getActiveSales());
 public function test_getActiveSales_store()
 {
     $url = 'https://test_base_url/sales/men/active.json?apikey=test_api_key';
     $response = file_get_contents('test/data/active_sales_men.json');
     $http_get = $this->getMockHttpGetOnce($url, $response);
     $gilt = new Gilt('test_api_key', $http_get, 'https://test_base_url/');
     $sales = $gilt->getActiveSales(Gilt::MEN);
     $this->checkArrayInterfaces($sales, 18);
     $stores = $sales->getStores();
     $this->assertEquals(3, count($stores));
     $this->assertEquals(1, count($stores[Gilt::WOMEN]));
     $this->assertEquals(15, count($stores[Gilt::MEN]));
     $this->assertEquals(2, count($stores[Gilt::KIDS]));
     $this->assertFalse(array_key_exists(Gilt::HOME, $stores));
 }