* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License * @link https://vufind.org/wiki/development */ namespace VuFindTest\Harvest\OaiPmh; use VuFindHarvest\OaiPmh\StateManager; /** * OAI-PMH state manager integration test. * * @category VuFind * @package Tests * @author Demian Katz * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License * @link https://vufind.org/wiki/development */ class StateManagerTest extends \PHPUnit\Framework\TestCase { /** * Test date functionality. * * @return void */ public function testDate() { $tmp = sys_get_temp_dir() . '/'; $manager = new StateManager($tmp); $date = '2016-07-12'; $manager->saveDate($date); $this->assertEquals($date, $manager->loadDate()); unlink($tmp . 'last_harvest.txt'); } /** * Test state functionality. * * @return void */ public function testState() { $tmp = sys_get_temp_dir() . '/'; $startDate = '2016-07-12'; $endDate = '2016-08-01'; $manager = new StateManager($tmp); $manager->saveState('foo', 'bar', $startDate, $endDate); $this->assertEquals(['foo', 'bar', $startDate, $endDate], $manager->loadState()); $this->assertFileExists($tmp . 'last_state.txt'); $manager->clearState(); $this->assertFileDoesNotExist($tmp . 'last_state.txt'); } }