1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
<?php // $Rev: 179 $ // ----------------------------------------------------------------------------- // setup error_reporting(E_ALL); require_once('../simple_html_dom.php'); $dom = new simple_html_dom;
// ----------------------------------------------------------------------------- // test problem of last emelemt not found $str = <<<HTML <img src="src0"><p>foo</p><img src="src2"> HTML;
function callback_1($e) { if ($e->tag==='img') $e->outertext = ''; }
$dom->load($str); $dom->set_callback('callback_1'); assert($dom=='<p>foo</p>');
// ----------------------------------------------- // innertext test function callback_2($e) { if ($e->tag==='p') $e->innertext = 'bar'; }
$dom->load($str); $dom->set_callback('callback_2'); assert($dom=='<img src="src0"><p>bar</p><img src="src2">');
// ----------------------------------------------- // attributes test function callback_3($e) { if ($e->tag==='img') $e->src = 'foo'; }
$dom->load($str); $dom->set_callback('callback_3'); assert($dom=='<img src="foo"><p>foo</p><img src="foo">');
function callback_4($e) { if ($e->tag==='img') $e->id = 'foo'; }
$dom->set_callback('callback_4'); assert($dom=='<img src="foo" id="foo"><p>foo</p><img src="foo" id="foo">');
// ----------------------------------------------- // attributes test2 //$dom = str_get_dom($str); $dom->load($str); $dom->remove_callback(); $dom->find('img', 0)->id = "foo"; assert($dom=='<img src="src0" id="foo"><p>foo</p><img src="src2">');
function callback_5($e) { if ($e->src==='src0') unset($e->id); }
$dom->set_callback('callback_5'); assert($dom==$str);
// ----------------------------------------------------------------------------- // tear down $dom->clear(); unset($dom); ?>
|