Details

    • Sub-task
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 3.11.7, 3.11.9, 4.0.1, 4.0.3
    • 3.11.10, 4.0.4
    • General, Unit tests
    • MOODLE_311_STABLE, MOODLE_400_STABLE
    • MOODLE_311_STABLE, MOODLE_400_STABLE
    • MDL-75111_311
    • MDL-75111_400
    • Hide

      Important Note: the HEAD in the commands below assume that the branches have been integrated without any merge commit. You may need to replace them by the real commits if the issue has been integrated with merge commit. Here there are the commit details:

      • 311_STABLE:
        • HEAD = 61cedbd56e68eb785ee26f2c744e0732c70eb258
      • 400_STABLE
        • HEAD = 5c884e835ef1315bf9da29c516be3cf27907bba0
      • master:
        • HEAD = 83b490a5947642a3f6e73520402bb5e63edf8022

      A) General

      1. Verify that complete PHPUnit runs are passing (GHA, ToBiC...) for all branches.

      B) Testing instructions for 311, 400 and master

      1. Install local_codechecker in the site.
      2. Run this (see the important note above about the HEAD alternatives and commits):

        git show --pretty="" --name-only HEAD  | \
            xargs local/codechecker/phpcs/bin/phpcs --standard=moodle  --extensions=php  \
            --sniffs=moodle.PHPUnit.TestCaseNames,moodle.Files.MoodleInternal -p \
            && echo "Yay"
        

      3. Verify that you get 125 dots in the output, without any error and with "Yay" printed at the end.
      4. Init phpunit: php admin/tool/phpunit/cli/init.php
      5. Run this (see the important note above about the HEAD alternatives and commits):

        git show --pretty="" --name-only HEAD | \
            xargs -n 1 -I {} bash -c "echo {}; vendor/bin/phpunit {} > /dev/null || echo ERROR"
        

      6. Verify that you don't get any "ERROR" output, that means that all the tests modified can be run individually.
        • Note: if you get an ERROR on lib/tests/environment_test.php it means you need to enable and increase your max_input_vars to 5000, for more information see this doc page
      7. Run this (see the important note above about the HEAD alternatives and commits):

        git show --pretty="" --name-only HEAD | \
            grep -v '/tests/.*_test.php'
        

      8. Verify that no files are returned.
      Show
      Important Note : the HEAD in the commands below assume that the branches have been integrated without any merge commit. You may need to replace them by the real commits if the issue has been integrated with merge commit. Here there are the commit details: 311_STABLE: HEAD = 61cedbd56e68eb785ee26f2c744e0732c70eb258 400_STABLE HEAD = 5c884e835ef1315bf9da29c516be3cf27907bba0 master: HEAD = 83b490a5947642a3f6e73520402bb5e63edf8022 A) General Verify that complete PHPUnit runs are passing (GHA, ToBiC...) for all branches. B) Testing instructions for 311, 400 and master Install local_codechecker in the site. Run this (see the important note above about the HEAD alternatives and commits): git show --pretty="" --name-only HEAD | \ xargs local/codechecker/phpcs/bin/phpcs --standard=moodle --extensions=php \ --sniffs=moodle.PHPUnit.TestCaseNames,moodle.Files.MoodleInternal -p \ && echo "Yay" Verify that you get 125 dots in the output, without any error and with "Yay" printed at the end. Init phpunit: php admin/tool/phpunit/cli/init.php Run this (see the important note above about the HEAD alternatives and commits): git show --pretty="" --name-only HEAD | \ xargs -n 1 -I {} bash -c "echo {}; vendor/bin/phpunit {} > /dev/null || echo ERROR" Verify that you don't get any "ERROR" output, that means that all the tests modified can be run individually. Note: if you get an ERROR on lib/tests/environment_test.php it means you need to enable and increase your max_input_vars to 5000, for more information see this doc page Run this (see the important note above about the HEAD alternatives and commits): git show --pretty="" --name-only HEAD | \ grep -v '/tests/.*_test.php' Verify that no files are returned.

    Description

      This corresponds to the progress of point B of MDL-71049.

      In this case applied to more testcases, they are a bunch, so no worth listing them like in previous issues that were for testcases with many repetitions.

      I'll be creating a few (5-6) issues like this to advance with the remaining cases (80-100 files on each) to keep it more or less manageable (review, rebase...).

      Changes include:

      • Add or fix namespaces to be correct component ones. With sub-namespaces when the tests belong to a known API.
      • Fixing incorrect use \xxx statements with leading backslash.
      • Remove file phpdoc blocks.
      • Remove MOODLE_INTERNAL if not needed.
      • Changing code to point to global scope when needed (when referencing to classes belonging to other components) or adding new use xxx statements (for classes corresponding to the same component/area).
      • Change testcase class names to match file name (_test.

      Goals:

      • Verify that there aren't remaining files and classes to be processed.
      • Verify that all the files can be run individually.
      • Verify that complete runs continue passing ok.
      • Apply the changes to both 311 (where PHPUnit was introduced) and master.

      Notes:

      • The changes should be 99.99% contained within phpunit /tests/ files. If something out from there is detected, it will be handled in separate commit, with justifications.

      Attachments

        Issue Links

          Activity

            People

              stronk7 Eloy Lafuente (stronk7)
              stronk7 Eloy Lafuente (stronk7)
              Simey Lameze Simey Lameze
              Jun Pataleta Jun Pataleta
              Carlos Escobedo Carlos Escobedo
              Adrian Greeve, David Woloszyn, Huong Nguyen, Jake Dallimore, Meirza, Michael Hawkins, Raquel Ortega, Safat Shahin, Stevani Andolo
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                12/Sep/22

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 2 days, 28 minutes
                  2d 28m