Classes

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 50 100 150 Line Coverage (%) Cyclomatic Complexity BlueprintAU\Radiant\Database\Query\QueryBuilder — Coverage: 98.2% | Lines: 283 | Complexity: 125 BlueprintAU\Radiant\Database\Query\SqlFeature — Coverage: 100.0% | Lines: 51 | Complexity: 30 BlueprintAU\Radiant\Database\Query\Aggregate — Coverage: 100.0% | Lines: 18 | Complexity: 11 BlueprintAU\Radiant\Database\Query\WhereBuilder — Coverage: 88.9% | Lines: 9 | Complexity: 9 BlueprintAU\Radiant\Database\Query\Enums\WhereOperator — Coverage: 100.0% | Lines: 6 | Complexity: 1 BlueprintAU\Radiant\Database\Query\SubquerySelect — Coverage: 83.3% | Lines: 6 | Complexity: 4 BlueprintAU\Radiant\Database\Query\Enums\ColumnOperator — Coverage: 100.0% | Lines: 5 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Enums\SortDirection — Coverage: 100.0% | Lines: 5 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Expression — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereGroup — Coverage: 100.0% | Lines: 1 | Complexity: 1

Sorted by descending CRAP index.

Methods

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 10 20 30 40 Line Coverage (%) Cyclomatic Complexity BlueprintAU\Radiant\Database\Query\QueryBuilder::where — Coverage: 100.0% | Lines: 54 | Complexity: 20 BlueprintAU\Radiant\Database\Query\SqlFeature::usedBy — Coverage: 100.0% | Lines: 51 | Complexity: 30 BlueprintAU\Radiant\Database\Query\QueryBuilder::addJoin — Coverage: 100.0% | Lines: 16 | Complexity: 3 BlueprintAU\Radiant\Database\Query\QueryBuilder::whereNested — Coverage: 100.0% | Lines: 16 | Complexity: 3 BlueprintAU\Radiant\Database\Query\QueryBuilder::addOn — Coverage: 100.0% | Lines: 15 | Complexity: 3 BlueprintAU\Radiant\Database\Query\Aggregate::__construct — Coverage: 100.0% | Lines: 13 | Complexity: 6 BlueprintAU\Radiant\Database\Query\QueryBuilder::assertHomogeneousList — Coverage: 100.0% | Lines: 12 | Complexity: 6 BlueprintAU\Radiant\Database\Query\QueryBuilder::aggregateBy — Coverage: 100.0% | Lines: 11 | Complexity: 3 BlueprintAU\Radiant\Database\Query\QueryBuilder::assertSupports — Coverage: 100.0% | Lines: 11 | Complexity: 2 BlueprintAU\Radiant\Database\Query\QueryBuilder::select — Coverage: 100.0% | Lines: 8 | Complexity: 4 BlueprintAU\Radiant\Database\Query\QueryBuilder::countBy — Coverage: 100.0% | Lines: 8 | Complexity: 3 BlueprintAU\Radiant\Database\Query\QueryBuilder::fromSub — Coverage: 100.0% | Lines: 7 | Complexity: 2 BlueprintAU\Radiant\Database\Query\Enums\WhereOperator::fromChecked — Coverage: 100.0% | Lines: 6 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::normalizeTableReference — Coverage: 100.0% | Lines: 6 | Complexity: 3 BlueprintAU\Radiant\Database\Query\QueryBuilder::having — Coverage: 100.0% | Lines: 6 | Complexity: 5 BlueprintAU\Radiant\Database\Query\QueryBuilder::orderBy — Coverage: 100.0% | Lines: 6 | Complexity: 2 BlueprintAU\Radiant\Database\Query\QueryBuilder::value — Coverage: 83.3% | Lines: 6 | Complexity: 2 BlueprintAU\Radiant\Database\Query\QueryBuilder::getBindings — Coverage: 100.0% | Lines: 6 | Complexity: 3 BlueprintAU\Radiant\Database\Query\Enums\ColumnOperator::fromChecked — Coverage: 100.0% | Lines: 5 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Enums\SortDirection::fromChecked — Coverage: 100.0% | Lines: 5 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::aggregates — Coverage: 100.0% | Lines: 5 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::whereRaw — Coverage: 100.0% | Lines: 4 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::whereColumn — Coverage: 100.0% | Lines: 4 | Complexity: 2 BlueprintAU\Radiant\Database\Query\QueryBuilder::whereExists — Coverage: 100.0% | Lines: 4 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::whereInQuery — Coverage: 100.0% | Lines: 4 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::union — Coverage: 100.0% | Lines: 4 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::insertIdColumn — Coverage: 100.0% | Lines: 4 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::markLastWhereTraitScope — Coverage: 75.0% | Lines: 4 | Complexity: 2 BlueprintAU\Radiant\Database\Query\SubquerySelect::__construct — Coverage: 100.0% | Lines: 4 | Complexity: 2 BlueprintAU\Radiant\Database\Query\QueryBuilder::distinct — Coverage: 100.0% | Lines: 3 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::groupBy — Coverage: 100.0% | Lines: 3 | Complexity: 2 BlueprintAU\Radiant\Database\Query\QueryBuilder::limit — Coverage: 100.0% | Lines: 3 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::offset — Coverage: 100.0% | Lines: 3 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::lockForUpdate — Coverage: 100.0% | Lines: 3 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::sharedLock — Coverage: 100.0% | Lines: 3 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Aggregate::count — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Aggregate::max — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Aggregate::min — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Aggregate::sum — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Aggregate::avg — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\Expression::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::join — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::leftJoin — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::rightJoin — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::crossJoin — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::on — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::orOn — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::whereNotExists — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereExists — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereNotExists — Coverage: 0.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::whereNotInQuery — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereInQuery — Coverage: 0.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereNotInQuery — Coverage: 0.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::newNestedBuilder — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::get — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::cursor — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::first — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::pluck — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::scalarColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::count — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::exists — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::max — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::min — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::sum — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::avg — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::insert — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::insertGetId — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::update — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::delete — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getColumns — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::isDistinct — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getFrom — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getFromAlias — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getJoins — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getWheres — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getGroups — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getHavings — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getOrders — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getUnions — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getLock — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getLimit — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getOffset — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::getInsertIdColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\QueryBuilder::isInsertIdAutoIncrement — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\SubquerySelect::bindings — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\SubquerySelect::bindingCategory — Coverage: 0.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::where — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::whereNested — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::whereExists — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::whereInQuery — Coverage: 0.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::whereRaw — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::whereColumn — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::getWheres — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereBuilder::getNestedQuery — Coverage: 100.0% | Lines: 1 | Complexity: 1 BlueprintAU\Radiant\Database\Query\WhereGroup::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1

Sorted by descending CRAP index.

Method CRAP Coverage
BlueprintAU\Radiant\Database\Query\SqlFeature::usedBy30100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::where20100.0%
BlueprintAU\Radiant\Database\Query\Aggregate::__construct6100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::assertHomogeneousList6100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::having5100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::select4100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::normalizeTableReference3100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::addOn3100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::addJoin3100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::whereNested3100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::aggregateBy3100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::countBy3100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getBindings3100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::markLastWhereTraitScope2.0675.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::value2.0283.3%
BlueprintAU\Radiant\Database\Query\QueryBuilder::fromSub2100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::whereColumn2100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereNotExists20.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereInQuery20.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereNotInQuery20.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::groupBy2100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::orderBy2100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::assertSupports2100.0%
BlueprintAU\Radiant\Database\Query\SubquerySelect::__construct2100.0%
BlueprintAU\Radiant\Database\Query\SubquerySelect::bindingCategory20.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::whereInQuery20.0%
BlueprintAU\Radiant\Database\Query\Aggregate::count1100.0%
BlueprintAU\Radiant\Database\Query\Aggregate::max1100.0%
BlueprintAU\Radiant\Database\Query\Aggregate::min1100.0%
BlueprintAU\Radiant\Database\Query\Aggregate::sum1100.0%
BlueprintAU\Radiant\Database\Query\Aggregate::avg1100.0%
BlueprintAU\Radiant\Database\Query\Enums\ColumnOperator::fromChecked1100.0%
BlueprintAU\Radiant\Database\Query\Enums\SortDirection::fromChecked1100.0%
BlueprintAU\Radiant\Database\Query\Enums\WhereOperator::fromChecked1100.0%
BlueprintAU\Radiant\Database\Query\Expression::__construct1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::__construct1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::distinct1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::join1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::leftJoin1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::rightJoin1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::crossJoin1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::on1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::orOn1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::whereRaw1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::whereExists1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::whereNotExists1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::orWhereExists1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::whereInQuery1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::whereNotInQuery1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::newNestedBuilder1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::limit1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::offset1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::union1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::lockForUpdate1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::sharedLock1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::get1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::cursor1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::first1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::pluck1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::scalarColumn1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::count1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::exists1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::max1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::min1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::sum1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::avg1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::aggregates1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::insert1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::insertGetId1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::update1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::delete1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::insertIdColumn1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getColumns1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::isDistinct1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getFrom1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getFromAlias1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getJoins1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getWheres1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getGroups1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getHavings1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getOrders1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getUnions1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getLock1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getLimit1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getOffset1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::getInsertIdColumn1100.0%
BlueprintAU\Radiant\Database\Query\QueryBuilder::isInsertIdAutoIncrement1100.0%
BlueprintAU\Radiant\Database\Query\SubquerySelect::bindings1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::__construct1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::where1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::whereNested1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::whereExists1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::whereRaw1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::whereColumn1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::getWheres1100.0%
BlueprintAU\Radiant\Database\Query\WhereBuilder::getNestedQuery1100.0%
BlueprintAU\Radiant\Database\Query\WhereGroup::__construct1100.0%