/** * (non-PHPdoc) * @see Syncroton/Syncroton_TestCase::setUp() */ public function setUp() { parent::setUp(); // do initial sync first $doc = new DOMDocument(); $doc->loadXML('<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE AirSync PUBLIC "-//AIRSYNC//DTD AirSync//EN" "http://www.microsoft.com/"> <FolderSync xmlns="uri:FolderHierarchy"><SyncKey>0</SyncKey></FolderSync>'); $folderSync = new Syncroton_Command_FolderSync($doc, $this->_device, null); $folderSync->handle(); $responseDoc = $folderSync->getResponse(); #$responseDoc->formatOutput = true; echo $responseDoc->saveXML(); // create a test folder $doc = new DOMDocument(); $doc->loadXML('<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE AirSync PUBLIC "-//AIRSYNC//DTD AirSync//EN" "http://www.microsoft.com/"> <FolderCreate xmlns="uri:FolderHierarchy"><SyncKey>1</SyncKey><ParentId/><DisplayName>Test Folder</DisplayName><Type>14</Type></FolderCreate>'); $folderCreate = new Syncroton_Command_FolderCreate($doc, $this->_device, null); $folderCreate->handle(); $responseDoc = $folderCreate->getResponse(); #$responseDoc->formatOutput = true; echo $responseDoc->saveXML(); // parse id of created folder $xpath = new DomXPath($responseDoc); $xpath->registerNamespace('FolderHierarchy', 'uri:FolderHierarchy'); $nodes = $xpath->query('//FolderHierarchy:FolderCreate/FolderHierarchy:ServerId'); $this->_testFolderId = $nodes->item(0)->nodeValue; }
/** * test handling of invalid SyncKey */ public function testInvalidSyncKey() { $doc = new DOMDocument(); $doc->loadXML('<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE AirSync PUBLIC "-//AIRSYNC//DTD AirSync//EN" "http://www.microsoft.com/"> <FolderCreate xmlns="uri:FolderHierarchy"><SyncKey>11</SyncKey><ParentId/><DisplayName>Test Folder</DisplayName><Type>15</Type></FolderCreate>'); $folderCreate = new Syncroton_Command_FolderCreate($doc, $this->_device, null); $folderCreate->handle(); $responseDoc = $folderCreate->getResponse(); #$responseDoc->formatOutput = true; echo $responseDoc->saveXML(); $xpath = new DomXPath($responseDoc); $xpath->registerNamespace('FolderHierarchy', 'uri:FolderHierarchy'); $nodes = $xpath->query('//FolderHierarchy:FolderCreate/FolderHierarchy:Status'); $this->assertEquals(1, $nodes->length, $responseDoc->saveXML()); $this->assertEquals(Syncroton_Command_FolderSync::STATUS_INVALID_SYNC_KEY, $nodes->item(0)->nodeValue, $responseDoc->saveXML()); }