Esempio n. 1
0
    public function testGetDataValuesFromXML()
    {
        $xml = <<<'EOD'
			<data>
				<items>
					<item libraryID="1" key="AAAAAAAA" itemType="journalArticle" dateAdded="2010-01-08 10:29:36" dateModified="2010-01-08 10:29:36">
						<field name="title">Foo</field>
						<field name="abstractNote">Bar bar bar
Bar bar</field>
						<creator libraryID="1" key="AAAAAAAA" creatorType="author" index="0">
							<creator libraryID="1" key="AAAAAAAA" dateAdded="2010-01-08 10:29:36" dateModified="2010-01-08 10:29:36">
								<firstName>Irrelevant</firstName>
								<lastName>Creator</lastName>
							</creator>
						</creator>
					</item>
					<item libraryID="1" key="BBBBBBBB" itemType="attachment" dateAdded="2010-01-08 10:31:09" dateModified="2010-01-08 10:31:17" sourceItem="VN9DPHBB" linkMode="0" mimeType="application/pdf" storageModTime="1262946676" storageHash="41125f70cc25117b0da961bd7108938 9">
						<field name="title">Test_Filename.pdf</field>
					</item>
					<item libraryID="1" key="CCCCCCCC" itemType="journalArticle" dateAdded="2010-01-08 10:34:03" dateModified="2010-01-08 10:34:03">
						<field name="title">Tést 汉字漢字</field>
						<field name="volume">38</field>
						<field name="pages">546-553</field>
						<field name="date">1990-06-00 May - Jun., 1990</field>
					</item>
				</items>
			</data>
EOD;
        $xml = new SimpleXMLElement($xml);
        $domSXE = dom_import_simplexml($xml->items);
        $doc = new DOMDocument();
        $domSXE = $doc->importNode($domSXE, true);
        $domSXE = $doc->appendChild($domSXE);
        $values = Zotero_Items::getDataValuesFromXML($doc);
        sort($values);
        $this->assertEquals(sizeOf($values), 7);
        $this->assertEquals($values[0], "1990-06-00 May - Jun., 1990");
        $this->assertEquals($values[1], "38");
        $this->assertEquals($values[2], "546-553");
        $this->assertEquals($values[3], "Bar bar bar\nBar bar");
        $this->assertEquals($values[4], "Foo");
        $this->assertEquals($values[5], "Test_Filename.pdf");
        $this->assertEquals($values[6], "Tést 汉字漢字");
    }