$path = realpath('spec/Fixture/Reporter/Coverage/Functions.php'); expect(isset($files[$path]))->toBe(true); }); it("returns empty for unknown metric", function () { $code = new ExtraEmptyLine(); $this->collector->start(); $code->shallNotPass(); $this->collector->stop(); $metrics = $this->collector->metrics(); $actual = $metrics->get('some\\unknown\\name\\space'); expect($actual)->toBe(null); }); it("ignores interfaces metrics", function () { $path = ['spec/Fixture/Reporter/Coverage/ImplementsCoverage.php', 'spec/Fixture/Reporter/Coverage/ImplementsCoverageInterface.php']; $collector = new Collector(['driver' => $this->driver, 'path' => $path]); $code = new ImplementsCoverage(); $collector->start(); $code->foo(); $collector->stop(); $metrics = $collector->metrics(); $actual = $metrics->get('Kahlan\\Spec\\Fixture\\Reporter\\Coverage\\ImplementsCoverage')->data(); $files = $actual['files']; unset($actual['files']); expect($actual)->toBe(['loc' => 6, 'nlloc' => 5, 'lloc' => 1, 'cloc' => 1, 'coverage' => 1, 'methods' => 1, 'cmethods' => 1, 'percent' => 100]); $path = realpath('spec/Fixture/Reporter/Coverage/ImplementsCoverage.php'); expect(isset($files[$path]))->toBe(true); expect($metrics->get('Kahlan\\Spec\\Fixture\\Reporter\\Coverage\\ImplementsCoverageInterface'))->toBe(null); expect($collector->export())->toBe([str_replace('/', DS, 'spec/Fixture/Reporter/Coverage/ImplementsCoverage.php') => [7 => 1]]); }); describe("->children()", function () { beforeEach(function () {