howardjones/network-weathermap

View on GitHub
lib/Weathermap/Tests/MapScaleTest.php

Summary

Maintainability
A
1 hr
Test Coverage

Method testScaleManagement has 33 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    public function testScaleManagement()
    {
        $this->object->populateDefaultsIfNecessary();
        $this->assertEquals(9, $this->object->spanCount());

Severity: Minor
Found in lib/Weathermap/Tests/MapScaleTest.php - About 1 hr to fix

    Remove this commented out code.
    Open

    //require_once dirname(__FILE__) . '/../lib/all.php';

    Programmers should not comment out code as it bloats programs and reduces readability.

    Unused code should be deleted and can be retrieved from source control history if required.

    See

    • MISRA C:2004, 2.4 - Sections of code should not be "commented out".
    • MISRA C++:2008, 2-7-2 - Sections of code shall not be "commented out" using C-style comments.
    • MISRA C++:2008, 2-7-3 - Sections of code should not be "commented out" using C++ comments.
    • MISRA C:2012, Dir. 4.4 - Sections of code should not be "commented out"

    Remove this commented out code.
    Open

    // require_once 'PHPUnit/Framework.php';

    Programmers should not comment out code as it bloats programs and reduces readability.

    Unused code should be deleted and can be retrieved from source control history if required.

    See

    • MISRA C:2004, 2.4 - Sections of code should not be "commented out".
    • MISRA C++:2008, 2-7-2 - Sections of code shall not be "commented out" using C-style comments.
    • MISRA C++:2008, 2-7-3 - Sections of code should not be "commented out" using C++ comments.
    • MISRA C:2012, Dir. 4.4 - Sections of code should not be "commented out"

    Define a constant instead of duplicating this literal "Weathermap\Core\Colour" 4 times.
    Open

            $this->assertInstanceOf("Weathermap\\Core\\Colour", $c);
    Severity: Critical
    Found in lib/Weathermap/Tests/MapScaleTest.php by sonar-php

    Duplicated string literals make the process of refactoring error-prone, since you must be sure to update all occurrences.

    On the other hand, constants can be referenced from many places, but only need to be updated in a single place.

    Noncompliant Code Example

    With the default threshold of 3:

    function run() {
      prepare('action1');                              // Non-Compliant - 'action1' is duplicated 3 times
      execute('action1');
      release('action1');
    }
    

    Compliant Solution

    ACTION_1 = 'action1';
    
    function run() {
      prepare(ACTION_1);
      execute(ACTION_1);
      release(ACTION_1);
    }
    

    Exceptions

    To prevent generating some false-positives, literals having less than 5 characters are excluded.

    There are no issues that match your filters.

    Category
    Status