@@ -30,12 +30,21 @@ function testVideoOGVExternal() {
30
30
$ source = '<source src="http://some.where.far/away.ogv" type="video/ogg" /> ' ;
31
31
$ this ->assertEquals (substr ($ url ,67 ,64 ),$ source );
32
32
// work around random token
33
- $ a_first_part = '<a href="/./ lib/exe/fetch.php?cache=&tok= ' ;
33
+ $ a_first_part = '<a href=" ' . DOKU_BASE . ' lib/exe/fetch.php?cache=&tok= ' ;
34
34
$ a_second_part = '&media=http%3A%2F%2Fsome.where.far%2Faway.ogv" class="media mediafile mf_ogv" title="http://some.where.far/away.ogv"> ' ;
35
- $ this ->assertEquals (substr ($ url ,132 ,45 ),$ a_first_part );
36
- $ this ->assertEquals (substr ($ url ,183 ,121 ),$ a_second_part );
35
+
36
+ $ substr_start = 132 ;
37
+ $ substr_len = strlen ($ a_first_part );
38
+ $ this ->assertEquals ($ a_first_part , substr ($ url , $ substr_start , $ substr_len ));
39
+
40
+ $ substr_start = strpos ($ url , '&media ' , $ substr_start + $ substr_len );
41
+ $ this ->assertNotSame (false , $ substr_start , 'Substring not found. ' );
42
+ $ substr_len = strlen ($ a_second_part );
43
+ $ this ->assertEquals ($ a_second_part , substr ($ url , $ substr_start , $ substr_len ));
44
+
37
45
$ rest = 'away.ogv</a></video> ' ."\n" ;
38
- $ this ->assertEquals (substr ($ url ,304 ),$ rest );
46
+ $ substr_start = strlen ($ url ) - strlen ($ rest );
47
+ $ this ->assertEquals ($ rest , substr ($ url , $ substr_start ));
39
48
}
40
49
41
50
/**
@@ -58,12 +67,21 @@ function testVideoVIDExternal() {
58
67
$ Renderer = new Doku_Renderer_xhtml ();
59
68
$ url = $ Renderer ->externalmedia ($ file , null , null , null , null , 'cache ' , 'details ' , true );
60
69
// work around random token
61
- $ a_first_part = '<a href="/./ lib/exe/fetch.php?tok= ' ;
70
+ $ a_first_part = '<a href=" ' . DOKU_BASE . ' lib/exe/fetch.php?tok= ' ;
62
71
$ a_second_part = '&media=http%3A%2F%2Fsome.where.far%2Faway.vid" class="media mediafile mf_vid" title="http://some.where.far/away.vid"> ' ;
63
- $ this ->assertEquals (substr ($ url ,0 ,34 ),$ a_first_part );
64
- $ this ->assertEquals (substr ($ url ,40 ,121 ),$ a_second_part );
72
+
73
+ $ substr_start = 0 ;
74
+ $ substr_len = strlen ($ a_first_part );
75
+ $ this ->assertEquals ($ a_first_part , substr ($ url , $ substr_start , $ substr_len ));
76
+
77
+ $ substr_start = strpos ($ url , '&media ' , $ substr_start + $ substr_len );
78
+ $ this ->assertNotSame (false , $ substr_start , 'Substring not found. ' );
79
+ $ substr_len = strlen ($ a_second_part );
80
+ $ this ->assertEquals ($ a_second_part , substr ($ url , $ substr_start , $ substr_len ));
81
+
65
82
$ rest = 'away.vid</a> ' ;
66
- $ this ->assertEquals (substr ($ url ,161 ),$ rest );
83
+ $ substr_start = strlen ($ url ) - strlen ($ rest );
84
+ $ this ->assertEquals ($ rest , substr ($ url , $ substr_start ));
67
85
}
68
86
69
87
@@ -84,20 +102,33 @@ function testVideoOGVInternal() {
84
102
$ Renderer = new Doku_Renderer_xhtml ();
85
103
$ url = $ Renderer ->externalmedia ($ file ,null ,null ,null ,null ,'cache ' ,'details ' ,true );
86
104
87
- $ video = '<video class="media" width="320" height="240" controls="controls" poster="/./lib/exe/fetch.php?media=wiki:kind_zu_katze.png"> ' ;
88
- $ this ->assertEquals (substr ($ url ,0 ,125 ),$ video );
105
+ $ video = '<video class="media" width="320" height="240" controls="controls" poster=" ' . DOKU_BASE . 'lib/exe/fetch.php?media=wiki:kind_zu_katze.png"> ' ;
106
+ $ substr_start = 0 ;
107
+ $ substr_len = strlen ($ video );
108
+ $ this ->assertEquals ($ video , substr ($ url , $ substr_start , $ substr_len ));
109
+
110
+ // find $source_webm in $url
111
+ $ source_webm = '<source src=" ' . DOKU_BASE . 'lib/exe/fetch.php?media=wiki:kind_zu_katze.webm" type="video/webm" /> ' ;
112
+ $ substr_start = strpos ($ url , $ source_webm , $ substr_start + $ substr_len );
113
+ $ this ->assertNotSame (false , $ substr_start , 'Substring not found. ' );
114
+
115
+ // find $source_ogv in $url
116
+ $ source_ogv = '<source src=" ' . DOKU_BASE . 'lib/exe/fetch.php?media=wiki:kind_zu_katze.ogv" type="video/ogg" /> ' ;
117
+ $ substr_start = strpos ($ url , $ source_ogv , $ substr_start + strlen ($ source_webm ));
118
+ $ this ->assertNotSame (false , $ substr_start , 'Substring not found. ' );
89
119
90
- $ source_webm = ' <source src="/./lib/exe/fetch.php?media=wiki:kind_zu_katze.webm" type="video/webm" /> ' ;
91
- $ this -> assertEquals ( substr ( $ url , 126 , 85 ), $ source_webm ) ;
92
- $ source_ogv = ' <source src="/./lib/exe/fetch.php?media=wiki:kind_zu_katze.ogv" type="video/ogg" /> ' ;
93
- $ this ->assertEquals ( substr ( $ url , 212 , 83 ), $ source_ogv );
120
+ // find $a_webm in $url
121
+ $ a_webm = ' <a href=" ' . DOKU_BASE . ' lib/exe/fetch.php?id=&cache=&media=wiki:kind_zu_katze.webm" class="media mediafile mf_webm" title="wiki:kind_zu_katze.webm (99.1 KB)">kind_zu_katze.webm</a> ' ;
122
+ $ substr_start = strpos ( $ url , $ a_webm , $ substr_start + strlen ( $ source_ogv )) ;
123
+ $ this ->assertNotSame ( false , $ substr_start , ' Substring not found. ' );
94
124
95
- $ a_webm = ' <a href="/./lib/exe/fetch.php?id=&cache=&media=wiki:kind_zu_katze.webm" class="media mediafile mf_webm" title="wiki:kind_zu_katze.webm (99.1 KB)">kind_zu_katze.webm</a> ' ;
96
- $ a_ogv = '<a href="/./ lib/exe/fetch.php?id=&cache=&media=wiki:kind_zu_katze.ogv" class="media mediafile mf_ogv" title="wiki:kind_zu_katze.ogv (44.8 KB)">kind_zu_katze.ogv</a> ' ;
97
- $ this -> assertEquals ( substr ( $ url ,296 , 176 ), $ a_webm );
98
- $ this ->assertEquals ( substr ( $ url , 472 , 172 ), $ a_ogv );
125
+ // find $a_webm in $url
126
+ $ a_ogv = '<a href=" ' . DOKU_BASE . ' lib/exe/fetch.php?id=&cache=&media=wiki:kind_zu_katze.ogv" class="media mediafile mf_ogv" title="wiki:kind_zu_katze.ogv (44.8 KB)">kind_zu_katze.ogv</a> ' ;
127
+ $ substr_start = strpos ( $ url , $ a_ogv , $ substr_start + strlen ( $ a_webm) );
128
+ $ this ->assertNotSame ( false , $ substr_start , ' Substring not found. ' );
99
129
100
130
$ rest = '</video> ' ."\n" ;
101
- $ this ->assertEquals (substr ($ url ,644 ),$ rest );
131
+ $ substr_start = strlen ($ url ) - strlen ($ rest );
132
+ $ this ->assertEquals ($ rest , substr ($ url , $ substr_start ));
102
133
}
103
134
}
0 commit comments