@@ -3817,7 +3817,7 @@ class TestFile
3817
3817
{
3818
3818
private string $ fileName ;
3819
3819
3820
- private array $ sections = [' TEST ' => '' ];
3820
+ private array $ sections = [];
3821
3821
3822
3822
private const ALLOWED_SECTIONS = [
3823
3823
'EXPECT ' , 'EXPECTF ' , 'EXPECTREGEX ' , 'EXPECTREGEX_EXTERNAL ' , 'EXPECT_EXTERNAL ' , 'EXPECTF_EXTERNAL ' , 'EXPECTHEADERS ' ,
@@ -3826,7 +3826,7 @@ class TestFile
3826
3826
'CAPTURE_STDIO ' , 'STDIN ' , 'CGI ' , 'PHPDBG ' ,
3827
3827
'INI ' , 'ENV ' , 'EXTENSIONS ' ,
3828
3828
'SKIPIF ' , 'XFAIL ' , 'XLEAK ' , 'CLEAN ' ,
3829
- 'CREDITS ' , 'DESCRIPTION ' , 'CONFLICTS ' , 'WHITESPACE_SENSITIVE ' ,
3829
+ 'TEST ' , ' CREDITS ' , 'DESCRIPTION ' , 'CONFLICTS ' , 'WHITESPACE_SENSITIVE ' ,
3830
3830
];
3831
3831
3832
3832
/**
@@ -3917,41 +3917,40 @@ private function readFile(): void
3917
3917
{
3918
3918
$ fp = fopen ($ this ->fileName , "rb " ) or error ("Cannot open test file: {$ this ->fileName }" );
3919
3919
3920
- if (!feof ($ fp )) {
3921
- $ line = fgets ($ fp );
3922
-
3923
- if ($ line === false ) {
3924
- throw new BorkageException ("cannot read test " );
3925
- }
3926
- } else {
3927
- throw new BorkageException ("empty test [ {$ this ->fileName }] " );
3928
- }
3929
- if (strncmp ('--TEST-- ' , $ line , 8 )) {
3930
- throw new BorkageException ("tests must start with --TEST-- [ {$ this ->fileName }] " );
3920
+ if (feof ($ fp )) {
3921
+ throw new BorkageException ("empty test " );
3931
3922
}
3932
3923
3933
- $ section = 'TEST ' ;
3934
- $ secfile = false ;
3935
- $ secdone = false ;
3924
+ $ section = false ;
3936
3925
3937
3926
while (!feof ($ fp )) {
3938
3927
$ line = fgets ($ fp );
3939
3928
3929
+ if ($ section === false ) {
3930
+ if ($ line === false ) {
3931
+ throw new BorkageException ("cannot read test " );
3932
+ }
3933
+
3934
+ if (rtrim ($ line , "\n\r" ) !== '--TEST-- ' ) {
3935
+ throw new BorkageException ("test must start with --TEST-- " );
3936
+ }
3937
+ }
3938
+
3940
3939
if ($ line === false ) {
3941
3940
break ;
3942
3941
}
3943
3942
3944
3943
// Match the beginning of a section.
3945
3944
if (preg_match ('/^--([_A-Z]+)--/ ' , $ line , $ r )) {
3946
- $ section = ( string ) $ r [1 ];
3945
+ $ section = $ r [1 ];
3947
3946
3948
- if (isset ($ this ->sections [$ section ]) && $ this -> sections [ $ section ] ) {
3947
+ if (isset ($ this ->sections [$ section ])) {
3949
3948
throw new BorkageException ("duplicated $ section section " );
3950
3949
}
3951
3950
3952
3951
// check for unknown sections
3953
3952
if (!in_array ($ section , self ::ALLOWED_SECTIONS )) {
3954
- throw new BorkageException ('Unknown section " ' . $ section . '" ' );
3953
+ throw new BorkageException ('unknown section " ' . $ section . '" ' );
3955
3954
}
3956
3955
3957
3956
$ this ->sections [$ section ] = '' ;
0 commit comments