llaville / php-compatinfo

Library that find out the minimum version and the extensions required for a piece of code to run
https://llaville.github.io/php-compatinfo/7.1/
Other
369 stars 21 forks source link

Failed tests in upcomming 4.0.0 #174

Closed remicollet closed 9 years ago

remicollet commented 9 years ago

Bug tracker for failed tests

 PHPUnit 4.5.1 by Sebastian Bergmann and contributors.

 Configuration read from /work/GIT/php-compat-info/phpunit.xml.dist

 .............................................................   61 / 4590 (  1%)
 .........................................S..........S........  122 / 4590 (  2%)
 .............................................................  183 / 4590 (  3%)
 .............................................................  244 / 4590 (  5%)
 ....................S........................................  305 / 4590 (  6%)
 .............................................................  366 / 4590 (  7%)
 .............................................................  427 / 4590 (  9%)
 .............................................................  488 / 4590 ( 10%)
 .............................................................  549 / 4590 ( 11%)
 .............................................................  610 / 4590 ( 13%)
 .............................................................  671 / 4590 ( 14%)
 .............................................................  732 / 4590 ( 15%)
 .............................................................  793 / 4590 ( 17%)
 ..............S..............................................  854 / 4590 ( 18%)
 .............................................................  915 / 4590 ( 19%)
 .............................................................  976 / 4590 ( 21%)
 ..........................................................S.. 1037 / 4590 ( 22%)
 ...................................S......................... 1098 / 4590 ( 23%)
 ......S................................................SSSSSS 1159 / 4590 ( 25%)
 SSSSSS....................................................... 1220 / 4590 ( 26%)
 ............................................................. 1281 / 4590 ( 27%)
 .......................................FFFF.................. 1342 / 4590 ( 29%)
 ........S.......F..S.F....................................... 1403 / 4590 ( 30%)
 ................................................S............ 1464 / 4590 ( 31%)
 ............................................................. 1525 / 4590 ( 33%)
 ............................................................. 1586 / 4590 ( 34%)
 .....................................................SSSSSSSS 1647 / 4590 ( 35%)
 SSSSSSS...................................................... 1708 / 4590 ( 37%)
 ....................SSSSSSSSSSSSSSSSSSSSSSS.................. 1769 / 4590 ( 38%)
 .......................S................F.................... 1830 / 4590 ( 39%)
 ............................................................. 1891 / 4590 ( 41%)
 ........................S.................................... 1952 / 4590 ( 42%)
 ..................................................S..FF...... 2013 / 4590 ( 43%)
 ............................................................. 2074 / 4590 ( 45%)
 ............................................................. 2135 / 4590 ( 46%)
 ............................................................. 2196 / 4590 ( 47%)
 ...............F............................................. 2257 / 4590 ( 49%)
 ............................................................. 2318 / 4590 ( 50%)
 ............................................................. 2379 / 4590 ( 51%)
 ............................................................. 2440 / 4590 ( 53%)
 .....................................................S..F.... 2501 / 4590 ( 54%)
 ...S......................................................... 2562 / 4590 ( 55%)
 .........................S.........................SSSSSSSSSS 2623 / 4590 ( 57%)
 SSSSSSSSSSS.............FF..................S..........S...F. 2684 / 4590 ( 58%)
 .....S..........S..F......................S..........S....... 2745 / 4590 ( 59%)
 ............................................................. 2806 / 4590 ( 61%)
 ............................................................. 2867 / 4590 ( 62%)
 ............................................................. 2928 / 4590 ( 63%)
 ............................................................. 2989 / 4590 ( 65%)
 ............................................................. 3050 / 4590 ( 66%)
 ............................................................. 3111 / 4590 ( 67%)
 ...............F.......S..................................... 3172 / 4590 ( 69%)
 ............................................................. 3233 / 4590 ( 70%)
 ............................................................. 3294 / 4590 ( 71%)
 ............................................................. 3355 / 4590 ( 73%)
 ............................................................. 3416 / 4590 ( 74%)
 ............................................................. 3477 / 4590 ( 75%)
 ............................................................. 3538 / 4590 ( 77%)
 ............................................................. 3599 / 4590 ( 78%)
 ..............S..F..SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS 3660 / 4590 ( 79%)
 SSSSSSSSSSSSSSSSSSSSSSS....S..........................S...... 3721 / 4590 ( 81%)
 ....S........................................................ 3782 / 4590 ( 82%)
 ............................................................. 3843 / 4590 ( 83%)
 ............................................................. 3904 / 4590 ( 85%)
 ............................................................. 3965 / 4590 ( 86%)
 ............................................................. 4026 / 4590 ( 87%)
 ...................................S......................... 4087 / 4590 ( 89%)
 ........F......S.....SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS 4148 / 4590 ( 90%)
 SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS 4209 / 4590 ( 91%)
 SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS 4270 / 4590 ( 93%)
 SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS............. 4331 / 4590 ( 94%)
 ............................................................. 4392 / 4590 ( 95%)
 .S..........S..........S..........S.......................... 4453 / 4590 ( 97%)
 ............................................................. 4514 / 4590 ( 98%)
 S..........S..FF...................

 Time: 25,39 seconds, Memory: 184,00Mb

 There were 20 failures:

 1) Bartlett\Tests\CompatInfo\Reference\Extension\HttpExtensionTest::testGetConstantsFromReference with data set #151 ('http\Url\PARSE_MBLOC', array('http', '2.2.0RC1', '', '5.3.0', '', ''))
 Constant 'http\Url\PARSE_MBLOC', found in Reference, does not exists.
 Failed asserting that false is true.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:377

 2) Bartlett\Tests\CompatInfo\Reference\Extension\HttpExtensionTest::testGetConstantsFromReference with data set #152 ('http\Url\PARSE_MBUTF8', array('http', '2.2.0RC1', '', '5.3.0', '', ''))
 Constant 'http\Url\PARSE_MBUTF8', found in Reference, does not exists.
 Failed asserting that false is true.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:377

 3) Bartlett\Tests\CompatInfo\Reference\Extension\HttpExtensionTest::testGetConstantsFromReference with data set #153 ('http\Url\PARSE_TOIDN', array('http', '2.2.0RC1', '', '5.3.0', '', ''))
 Constant 'http\Url\PARSE_TOIDN', found in Reference, does not exists.
 Failed asserting that false is true.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:377

 4) Bartlett\Tests\CompatInfo\Reference\Extension\HttpExtensionTest::testGetConstantsFromReference with data set #154 ('http\Url\PARSE_TOPCT', array('http', '2.2.0RC1', '', '5.3.0', '', ''))
 Constant 'http\Url\PARSE_TOPCT', found in Reference, does not exists.
 Failed asserting that false is true.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:377

 5) Bartlett\Tests\CompatInfo\Reference\Extension\ImagickExtensionTest::testGetIniEntriesFromExtension
 Defined INI 'imagick.skip_version_check' not known in Reference.
 Failed asserting that an array has the key 'imagick.skip_version_check'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:233

 6) Bartlett\Tests\CompatInfo\Reference\Extension\ImagickExtensionTest::testGetClassesFromExtension
 Defined class 'ImagickKernelException' not known in Reference.
 Failed asserting that an array has the key 'ImagickKernelException'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:505

 7) Bartlett\Tests\CompatInfo\Reference\Extension\MailparseExtensionTest::testGetClassMethodsFromExtension
 Defined method 'mimemessage::mimemessage' not known in Reference.
 Failed asserting that an array has the key 'mimemessage'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:582

 8) Bartlett\Tests\CompatInfo\Reference\Extension\MsgpackExtensionTest::testGetClassMethodsFromExtension
 Defined method 'MessagePack::__construct' not known in Reference.
 Failed asserting that an array has the key 'MessagePack'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:582

 9) Bartlett\Tests\CompatInfo\Reference\Extension\MsgpackExtensionTest::testGetClassConstantsFromExtension
 Defined class constant 'MessagePack::OPT_PHPONLY' not known in Reference.
 Failed asserting that an array has the key 'OPT_PHPONLY'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:637

 10) Bartlett\Tests\CompatInfo\Reference\Extension\OauthExtensionTest::testGetClassMethodsFromExtension
 Defined method 'OAuth::__construct' not known in Reference.
 Failed asserting that an array has the key 'OAuth'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:582

 11) Bartlett\Tests\CompatInfo\Reference\Extension\PdflibExtensionTest::testGetClassMethodsFromExtension
 Defined method 'PDFlibException::get_apiname' not known in Reference.
 Failed asserting that an array has the key 'PDFlibException'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:582

 12) Bartlett\Tests\CompatInfo\Reference\Extension\RarExtensionTest::testGetClassMethodsFromExtension
 Defined static method 'RarArchive::open' not known in Reference.
 Failed asserting that an array has the key 'RarArchive'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:571

 13) Bartlett\Tests\CompatInfo\Reference\Extension\RarExtensionTest::testGetClassConstantsFromExtension
 Defined class constant 'RarEntry::HOST_MSDOS' not known in Reference.
 Failed asserting that an array has the key 'HOST_MSDOS'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:637

 14) Bartlett\Tests\CompatInfo\Reference\Extension\RedisExtensionTest::testGetClassConstantsFromExtension
 Defined class constant 'Redis::SERIALIZER_IGBINARY' not known in Reference.
 Failed asserting that an array has the key 'SERIALIZER_IGBINARY'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:637

 15) Bartlett\Tests\CompatInfo\Reference\Extension\RiakExtensionTest::testGetClassMethodsFromExtension
 Defined method 'Riak\Connection::__construct' not known in Reference.
 Failed asserting that an array has the key 'Riak\Connection'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:582

 16) Bartlett\Tests\CompatInfo\Reference\Extension\SphinxExtensionTest::testGetClassMethodsFromExtension
 Defined method 'SphinxClient::__construct' not known in Reference.
 Failed asserting that an array has the key 'SphinxClient'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:582

 17) Bartlett\Tests\CompatInfo\Reference\Extension\StompExtensionTest::testGetClassMethodsFromExtension
 Defined method 'Stomp::__construct' not known in Reference.
 Failed asserting that an array has the key 'Stomp'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:582

 18) Bartlett\Tests\CompatInfo\Reference\Extension\VarnishExtensionTest::testGetClassConstantsFromExtension
 Defined class constant 'VarnishLog::TAG_Debug' not known in Reference.
 Failed asserting that an array has the key 'TAG_Debug'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:637

 19) Bartlett\Tests\CompatInfo\Reference\Extension\ZipExtensionTest::testGetClassMethodsFromExtension
 Defined method 'ZipArchive::open' not known in Reference.
 Failed asserting that an array has the key 'open'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:587

 20) Bartlett\Tests\CompatInfo\Reference\Extension\ZipExtensionTest::testGetClassConstantsFromExtension
 Defined class constant 'ZipArchive::CREATE' not known in Reference.
 Failed asserting that an array has the key 'CREATE'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:637

 FAILURES!
 Tests: 4216, Assertions: 15187, Failures: 20, Skipped: 380.
remicollet commented 9 years ago
llaville commented 9 years ago

other related to incomplete classe reference

I think you should rebuild the database (I did not published sqlite db for a long time), and push only a new version with a release now

5 related to Imagick 3.3.0RC1

Only Imagick 3.1.2 (stable) is supported. See reference:list command

remicollet commented 9 years ago

5-6 fixed by pr #175

llaville commented 9 years ago

On my windows laptop, with a fresh built DB and your PR #173 only, I got these results

PHPUnit 4.5.1 by Sebastian Bergmann and contributors.

Configuration read from C:\home\github\php-compat-info\phpunit.xml

............................................................   60 / 1368 (  4%)
............................................................  120 / 1368 (  8%)
............................................................  180 / 1368 ( 13%)
............................................................  240 / 1368 ( 17%)
............................................................  300 / 1368 ( 21%)
......................SSSSSSSSSSSS..........................  360 / 1368 ( 26%)
.....................SSSSSSSSSSSS...........................  420 / 1368 ( 30%)
....................SSSSSSSSSSSS.......................SSSSS  480 / 1368 ( 35%)
SSSSSSS.......................SSSSSSSSSSSSSSSSSSSSSSSS......  540 / 1368 ( 39%)
.............................SSSSSSSSSSSSSSSSSSSSSSSS.......  600 / 1368 ( 43%)
........................................SSSSSSSSSSSS........  660 / 1368 ( 48%)
...SSSSSSSSSSSS...................................SSSSSSSSSS  720 / 1368 ( 52%)
SS.......................SSSSSSSSSSSSSSSSSSSSSSSS...........  780 / 1368 ( 57%)
............................................................  840 / 1368 ( 61%)
............................................................  900 / 1368 ( 65%)
............SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS...........S  960 / 1368 ( 70%)
SSSSSSSSSSSSSSSSSSSSSSS...........SSSSSSSSSSSSSSSSSSSSSSSSSS 1020 / 1368 ( 74%)
SSSSSSSSSS.................................................. 1080 / 1368 ( 78%)
.............................................SSSSSSSSSSSS... 1140 / 1368 ( 83%)
............................................................ 1200 / 1368 ( 87%)
............................................................ 1260 / 1368 ( 92%)
............................................................ 1320 / 1368 ( 96%)
..................................

Time: 3.34 minutes, Memory: 29.00Mb

OK, but incomplete, skipped, or risky tests!
Tests: 1126, Assertions: 14766, Skipped: 264.
llaville commented 9 years ago

I'm still analysing your PR #172 to see why we have 4590 tests while previously we have only 1368

remicollet commented 9 years ago

I'm still analysing your PR #172 to see why we have 4590 tests while previously we have only 1368

Because 1 test per constant instead of 1 test per extension (but number of assertion should be nearly the same)

remicollet commented 9 years ago

Ok, with a fresh db (1 and 2 are Gmp + Http)

 3) Bartlett\Tests\CompatInfo\Reference\Extension\RedisExtensionTest::testGetClassConstantsFromExtension
 Defined class constant 'Redis::SERIALIZER_IGBINARY' not known in Reference.
 Failed asserting that an array has the key 'SERIALIZER_IGBINARY'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:616

 4) Bartlett\Tests\CompatInfo\Reference\Extension\SphinxExtensionTest::testGetClassMethodsFromExtension
 Defined method 'SphinxClient::close' not known in Reference.
 Failed asserting that an array has the key 'close'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:566

 5) Bartlett\Tests\CompatInfo\Reference\Extension\StompExtensionTest::testGetClassMethodsFromExtension
 Defined method 'Stomp::nack' not known in Reference.
 Failed asserting that an array has the key 'nack'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:566

 6) Bartlett\Tests\CompatInfo\Reference\Extension\VarnishExtensionTest::testGetClassConstantsFromExtension
 Defined class constant 'VarnishLog::TAG_Debug' not known in Reference.
 Failed asserting that an array has the key 'TAG_Debug'.

 /work/GIT/php-compat-info/tests/Reference/GenericTest.php:616
llaville commented 9 years ago

Defined class constant 'Redis::SERIALIZER_IGBINARY' not known in Reference.

Probably a wrong windows version build. I have the latest version 2.2.7 got from pecl.php.net And only php --re redis

- Classes [3] {
Class [ <internal:redis> class Redis ] {

  - Constants [19] {
    Constant [ integer REDIS_NOT_FOUND ] { 0 }
    Constant [ integer REDIS_STRING ] { 1 }
    Constant [ integer REDIS_SET ] { 2 }
    Constant [ integer REDIS_LIST ] { 3 }
    Constant [ integer REDIS_ZSET ] { 4 }
    Constant [ integer REDIS_HASH ] { 5 }
    Constant [ integer ATOMIC ] { 0 }
    Constant [ integer MULTI ] { 1 }
    Constant [ integer PIPELINE ] { 2 }
    Constant [ integer OPT_SERIALIZER ] { 1 }
    Constant [ integer OPT_PREFIX ] { 2 }
    Constant [ integer OPT_READ_TIMEOUT ] { 3 }
    Constant [ integer SERIALIZER_NONE ] { 0 }
    Constant [ integer SERIALIZER_PHP ] { 1 }
    Constant [ integer OPT_SCAN ] { 4 }
    Constant [ integer SCAN_RETRY ] { 1 }
    Constant [ integer SCAN_NORETRY ] { 0 }
    Constant [ string AFTER ] { after }
    Constant [ string BEFORE ] { before }
  }
llaville commented 9 years ago

Defined method 'SphinxClient::close' not known in Reference.

Can't test, due to a wrong windows build. I've the latest version 1.3.2 get from pecl.php.net Even after load test

deplister.exe php_sphinx.dll
php5ts.dll,OK
WS2_32.dll,OK
MSVCR110.dll,OK
KERNEL32.dll,OK

I have no results with php re --sphinx

Exception: Extension sphinx does not exist
llaville commented 9 years ago

Forget my previous comment about sphinx. I've redownloaded the win ver from pecl and now it's loadable

llaville commented 9 years ago

Even if my windows version of sphinx is now loadable. There are differences between the reflection I got and your https://github.com/remicollet/remirepo/blob/master/php/pecl/php-pecl-sphinx/REFLECTION

Missing in Windows version 1.3.2

Constant [ integer SPH_RANK_PROXIMITY ] { 4 }
Constant [ integer SPH_RANK_MATCHANY ] { 5 }
Constant [ integer SPH_RANK_FIELDMASK ] { 6 }
Constant [ integer SPH_RANK_SPH04 ] { 7 }
Constant [ integer SPH_RANK_EXPR ] { 8 }
Constant [ integer SPH_RANK_TOTAL ] { 9 }

And

    Method [ <internal:sphinx> public method close ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:sphinx> public method open ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:sphinx> public method setSelect ] {

      - Parameters [1] {
        Parameter #0 [ <required> $clause ]
      }
    }

    Method [ <internal:sphinx> public method setOverride ] {

      - Parameters [3] {
        Parameter #0 [ <required> $attribute ]
        Parameter #1 [ <required> $type ]
        Parameter #2 [ <required> $values ]
      }
    }

    Method [ <internal:sphinx> public method status ] {

      - Parameters [0] {
      }
    }
llaville commented 9 years ago

Of course, there is a quick solution, to solve this situation. Not the best one, but the faster. Deactivated reference "fully documented" in https://github.com/llaville/php-compat-info/blob/4.0/tests/Reference/GenericTest.php#L57

What do you think of this one ?

remicollet commented 9 years ago

SERIALIZER_IGBINARY is an optional constant, only defined when build with --enable-redis-igbinary option

remicollet commented 9 years ago

About sphinx, those constants are optional (depend on libsphinx client)

llaville commented 9 years ago

About varnish and your PR #176, the windows version 1.2.1 did not inclued them

Class [ <internal:varnish> class VarnishLog ] {

  - Constants [0] {
  }

And comparing with your REFLECTION file, I see also a diff on visibility method (public on my side) https://github.com/remicollet/remirepo/blob/master/php/pecl/php-pecl-varnish/REFLECTION#L251

remicollet commented 9 years ago

About varnish and your PR #176, the windows version 1.2.1 did not inclued them

See comment on PR #176 and additioonal commit on PR #172

llaville commented 9 years ago

Ok I read and see comment on PR #176. Sorry but I can't merge yet the PR #172. I'd like to have a separate commit that fixed only varnish class constant on VarnishExtensionTest.php

llaville commented 9 years ago

Nevermind, class constants are not yet checked with the GenericTest::testGetConstantsFromReference() method (excluding your PR #172)

llaville commented 9 years ago

About sphinx methods missing (previous comment https://github.com/llaville/php-compat-info/issues/174#issuecomment-88409783), I just see that there are optional (depend on libsphinxclient ) E.g: http://php.net/manual/en/sphinxclient.close.php

remicollet commented 9 years ago

All are fixed now.