Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
--TEST--
2
XML_Query2XML::_applyColumnStringToRecord(): check for XML_Query2XML_ConfigException - non-existing column used as idColumn
3
--SKIPIF--
4
<?php require_once dirname(dirname(__FILE__)) . '/skipif.php'; ?>
5
--FILE--
6
<?php
7
    require_once 'XML/Query2XML.php';
8
    require_once dirname(dirname(__FILE__)) . '/db_init.php';
9
 
10
    $query2xml =& XML_Query2XML::factory($db);
11
    $dom = $query2xml->getXML(
12
        "SELECT
13
            *
14
         FROM
15
            artist
16
         ORDER BY
17
            artistid",
18
        array(
19
            'rootTag' => 'music_library',
20
            'rowTag' => 'artist',
21
            'idColumn' => 'artistid',
22
            'elements' => array(
23
                'artistid',
24
                'name' => '#uppercaseName',
25
                'name2' => '#uppercaseName()',
26
                'name3' => '#uppercase(name)',
27
                'name4' => '#prefixNameWithUnderscore',
28
                'name5' => '#prefixNameWithUnderscore()',
29
                'name6' => '#prefixWithUnderscore(name)',
30
                'name7' => '#prefixNameWith(_)',
31
                'name8' => '#prefixWith(name, _)',
32
                'name9' => '#Callbacks::prefixNameWithUnderscore',
33
                'name10' => '#Callbacks::prefixNameWithUnderscore()',
34
                'name11' => '#Callbacks::prefixWithUnderscore(name)',
35
                'name12' => '#Callbacks::prefixNameWith(_)',
36
                'name13' => '#Callbacks::prefixWith(name, _)',
37
            )
38
        )
39
    );
40
    print $dom->saveXML();
41
 
42
    function uppercaseName($record)
43
    {
44
        return strtoupper($record['name']);
45
    }
46
 
47
    function uppercase($record, $columnName)
48
    {
49
        return strtoupper($record[$columnName]);
50
    }
51
 
52
    function prefixNameWithUnderscore($record)
53
    {
54
        return '_' . $record['name'];
55
    }
56
 
57
    function prefixWithUnderscore($record, $columnName)
58
    {
59
        return '_' . $record[$columnName];
60
    }
61
 
62
    function prefixNameWith($record, $with)
63
    {
64
        return $with . $record['name'];
65
    }
66
 
67
    function prefixWith($record, $columnName, $with)
68
    {
69
        return $with . $record[$columnName];
70
    }
71
 
72
    class Callbacks
73
    {
74
            function prefixNameWithUnderscore($record)
75
            {
76
                return '_' . $record['name'];
77
            }
78
 
79
            function prefixWithUnderscore($record, $columnName)
80
            {
81
                return '_' . $record[$columnName];
82
            }
83
 
84
            function prefixNameWith($record, $with)
85
            {
86
                return $with . $record['name'];
87
            }
88
 
89
            function prefixWith($record, $columnName, $with)
90
            {
91
                return $with . $record[$columnName];
92
            }
93
    }
94
?>
95
--EXPECT--
96
<?xml version="1.0" encoding="UTF-8"?>
97
<music_library><artist><artistid>1</artistid><name>CURTIS MAYFIELD</name><name2>CURTIS MAYFIELD</name2><name3>CURTIS MAYFIELD</name3><name4>_Curtis Mayfield</name4><name5>_Curtis Mayfield</name5><name6>_Curtis Mayfield</name6><name7>_Curtis Mayfield</name7><name8>_Curtis Mayfield</name8><name9>_Curtis Mayfield</name9><name10>_Curtis Mayfield</name10><name11>_Curtis Mayfield</name11><name12>_Curtis Mayfield</name12><name13>_Curtis Mayfield</name13></artist><artist><artistid>2</artistid><name>ISAAC HAYES</name><name2>ISAAC HAYES</name2><name3>ISAAC HAYES</name3><name4>_Isaac Hayes</name4><name5>_Isaac Hayes</name5><name6>_Isaac Hayes</name6><name7>_Isaac Hayes</name7><name8>_Isaac Hayes</name8><name9>_Isaac Hayes</name9><name10>_Isaac Hayes</name10><name11>_Isaac Hayes</name11><name12>_Isaac Hayes</name12><name13>_Isaac Hayes</name13></artist><artist><artistid>3</artistid><name>RAY CHARLES</name><name2>RAY CHARLES</name2><name3>RAY CHARLES</name3><name4>_Ray Charles</name4><name5>_Ray Charles</name5><name6>_Ray Charles</name6><name7>_Ray Charles</name7><name8>_Ray Charles</name8><name9>_Ray Charles</name9><name10>_Ray Charles</name10><name11>_Ray Charles</name11><name12>_Ray Charles</name12><name13>_Ray Charles</name13></artist></music_library>