|
Note
|
Fork of the MediaWiki extension PageForms, aimed at simplifying contributions by hosting on GitHub instead of Gerrit, improving quality through better test coverage and continuous integration. From time to time, changes in the upstream repository may be cherry-picked and integrated. |
Page Forms, previously known as Semantic Forms, is a MediaWiki extension aimed at simplifying data management through forms. In essence, Page Forms allows users to create, edit, and query data on a wiki without the need for coding. The central feature of Page Forms is the form definition pages, located in the 'Form:' namespace. These pages utilize markup code to define forms, empowering users to create and modify forms without requiring programming knowledge. Forms populate predefined templates and page sections, facilitating data storage and querying, especially when used with Semantic MediaWiki.
For focused test runs (for example autocomplete-related API tests), use:
make install composer-phpunit COMPOSER_PARAMS="-- --filter=autocomplete"After the first run, you can use this faster variant for repeated runs:
make composer-phpunit COMPOSER_PARAMS="-- --filter=autocomplete"Run the default JS test pipeline (ESLint + i18n + Node QUnit):
make npm-testRun only Node QUnit tests (faster feedback loop):
docker compose -f build/docker-compose.yml --project-name pageforms-mysql --profile mysql exec -T wiki bash -lc "cd /var/www/html/extensions/PageForms && ./node_modules/.bin/qunit --require ./tests/node-qunit/setup.js 'tests/node-qunit/**/*.test.js'"Run one specific JS test file:
docker compose -f build/docker-compose.yml --project-name pageforms-mysql --profile mysql exec -T wiki bash -lc "cd /var/www/html/extensions/PageForms && ./node_modules/.bin/qunit --require ./tests/node-qunit/setup.js tests/node-qunit/simpleupload.test.js"New or renamed test files are copied into the Docker image at build time.
After changing test files, run commands via make install … at least once,
then you can use make composer-phpunit …, make npm-test, or direct
qunit runs in the container for repeated runs.
This extension is part of semantic::core - Enterprise Class MediaWiki distribution.
.