Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't get Code Coverage #7

Closed
kenjis opened this issue Nov 28, 2015 · 5 comments
Closed

Can't get Code Coverage #7

kenjis opened this issue Nov 28, 2015 · 5 comments

Comments

@kenjis
Copy link
Member

kenjis commented Nov 28, 2015

$ phpunit --colors --coverage-text=coverage.txt --coverage-html=coverage/
PHPUnit 5.0.9 by Sebastian Bergmann and contributors.

...............................................................  63 / 145 ( 43%)
............................................................... 126 / 145 ( 86%)
...................                                             145 / 145 (100%)

Time: 11.14 seconds, Memory: 10.00Mb

OK (145 tests, 268 assertions)

Generating code coverage report in HTML format ...PHP Notice:  Constant CI_VERSION already defined in /mnt/project/system/CodeIgniter.php on line 17
PHP Stack trace:
PHP   1. {main}() /home/vagrant/.composer/vendor/phpunit/phpunit/phpunit:0
PHP   2. PHPUnit_TextUI_Command::main() /home/vagrant/.composer/vendor/phpunit/phpunit/phpunit:47
PHP   3. PHPUnit_TextUI_Command->run() /home/vagrant/.composer/vendor/phpunit/phpunit/src/TextUI/Command.php:105
PHP   4. PHPUnit_TextUI_TestRunner->doRun() /home/vagrant/.composer/vendor/phpunit/phpunit/src/TextUI/Command.php:154
PHP   5. PHP_CodeCoverage_Report_HTML->process() /home/vagrant/.composer/vendor/phpunit/phpunit/src/TextUI/TestRunner.php:486
PHP   6. PHP_CodeCoverage->getReport() /home/vagrant/.composer/vendor/phpunit/php-code-coverage/src/CodeCoverage/Report/HTML.php:68
PHP   7. PHP_CodeCoverage_Report_Factory->create() /home/vagrant/.composer/vendor/phpunit/php-code-coverage/src/CodeCoverage.php:126
PHP   8. PHP_CodeCoverage->getData() /home/vagrant/.composer/vendor/phpunit/php-code-coverage/src/CodeCoverage/Report/Factory.php:24
PHP   9. PHP_CodeCoverage->addUncoveredFilesFromWhitelist() /home/vagrant/.composer/vendor/phpunit/php-code-coverage/src/CodeCoverage.php:160
PHP  10. PHP_CodeCoverage->processUncoveredFileFromWhitelist() /home/vagrant/.composer/vendor/phpunit/php-code-coverage/src/CodeCoverage.php:618
PHP  11. include_once() /home/vagrant/.composer/vendor/phpunit/php-code-coverage/src/CodeCoverage.php:645
PHP  12. define() /mnt/project/system/CodeIgniter.php:17

Notice: Constant CI_VERSION already defined in /mnt/project/system/CodeIgniter.php on line 17
@sv3tli0
Copy link
Contributor

sv3tli0 commented Nov 28, 2015

Come on.. you report issue on dev version of something which doesn't have Alpha version..

@lonnieezell
Copy link
Member

To be honest - I've been waiting until a final PHP 7 is released to build a proper box. My current box doesn't have debug installed so haven't had a chance to test that yet. It will all happen in time. :)

@kenjis
Copy link
Member Author

kenjis commented Nov 29, 2015

This error is because of processUncoveredFilesFromWhitelist="true", which is noted:

Please note that the loading of sourcecode files that is performed when processUncoveredFilesFromWhitelist="true" is set can cause problems when a sourcecode file contains code outside the scope of a class or function, for instance.
https://phpunit.de/manual/current/en/code-coverage-analysis.html#code-coverage-analysis.whitelisting-files

@kenjis
Copy link
Member Author

kenjis commented Nov 29, 2015

I don't think we need processUncoveredFilesFromWhitelist="true".
See http://stackoverflow.com/questions/29041254/phpunit-coverage-what-is-the-difference-between-adduncoveredfilesfromwhitelist

We can get Code Coverage with the following diff:

--- a/phpunit.xml
+++ b/phpunit.xml
@@ -15,7 +15,7 @@
     </testsuites>

     <filter>
-        <whitelist processUncoveredFilesFromWhitelist="true">
+        <whitelist addUncoveredFilesFromWhitelist="true">
             <directory suffix=".php">./system</directory>
         </whitelist>
     </filter>

The default value of addUncoveredFilesFromWhitelist is true. So it is the same as just <whitelist>.

@lonnieezell
Copy link
Member

Actually, that stackoverflow comment makes it sound like leaving it to the default processUncoveredFilesFromWhitelist=false is a faster method that is just as accurate when the answer is 0. So, it seems we can just do the whitelist tag without any attributes here.

Thanks. Will push a change.

Sosko added a commit to Sosko/CodeIgniter4 that referenced this issue Sep 24, 2020
If thy table haven't primary key, and i pass $returnID = false, than the ci4 throw this error:
```
CRITICAL - 2020-09-24 00:47:00 --> pg_query(): Query failed: ERROR:  lastval is not yet defined in this session
#0 [internal function]: CodeIgniter\Debug\Exceptions->errorHandler(2, 'pg_query(): Que...', '/var/www/ci4/sy...', 196, Array)
codeigniter4#1 /var/www/ci4/system/Database/Postgre/Connection.php(196): pg_query(Resource id codeigniter4#9, 'SELECT LASTVAL(...')
codeigniter4#2 /var/www/ci4/system/Database/BaseConnection.php(741): CodeIgniter\Database\Postgre\Connection->execute('SELECT LASTVAL(...')
codeigniter4#3 /var/www/ci4/system/Database/BaseConnection.php(669): CodeIgniter\Database\BaseConnection->simpleQuery('SELECT LASTVAL(...')
codeigniter4#4 /var/www/ci4/system/Database/Postgre/Connection.php(519): CodeIgniter\Database\BaseConnection->query('SELECT LASTVAL(...')
codeigniter4#5 /var/www/ci4/system/Model.php(887): CodeIgniter\Database\Postgre\Connection->insertID()
codeigniter4#6 /var/www/ci4/app/Models/MyModel.php(46): CodeIgniter\Model->insert(Array, false)
codeigniter4#7 /var/www/ci4/app/Controllers/MyController.php(113): App\Models\MyModel->new_connection('1', '1')
codeigniter4#8 /var/www/ci4/app/Controllers/MyController.php(54): App\Controllers\MyController->do_create_connection()
codeigniter4#9 /var/www/ci4/system/CodeIgniter.php(918): App\Controllers\MyController->create_connection()
codeigniter4#10 /var/www/ci4/system/CodeIgniter.php(404): CodeIgniter\CodeIgniter->runController(Object(App\Controllers\MyController))
codeigniter4#11 /var/www/ci4/system/CodeIgniter.php(312): CodeIgniter\CodeIgniter->handleRequest(NULL, Object(Config\Cache), false)
codeigniter4#12 /var/www/ci4/public/index.php(45): CodeIgniter\CodeIgniter->run()
codeigniter4#13 {main}
CRITICAL - 2020-09-24 00:47:00 --> Uncaught CodeIgniter\Format\Exceptions\FormatException: Failed to parse json string, error: "Type is not supported". in /var/www/ci4/system/Format/Exceptions/FormatException.php:9
Stack trace:
#0 /var/www/ci4/system/Format/JSONFormatter.php(71): CodeIgniter\Format\Exceptions\FormatException::forInvalidJSON('Type is not sup...')
codeigniter4#1 /var/www/ci4/system/API/ResponseTrait.php(414): CodeIgniter\Format\JSONFormatter->format(Array)
codeigniter4#2 /var/www/ci4/system/API/ResponseTrait.php(134): CodeIgniter\Debug\Exceptions->format(Array)
codeigniter4#3 /var/www/ci4/system/Debug/Exceptions.php(168): CodeIgniter\Debug\Exceptions->respond(Array, 500)
codeigniter4#4 [internal function]: CodeIgniter\Debug\Exceptions->exceptionHandler(Object(ErrorException))
codeigniter4#5 {main}
  thrown
#0 [internal function]: CodeIgniter\Debug\Exceptions->shutdownHandler()
codeigniter4#1 {main}
```
This will skip to getting inserted ID
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants