Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 8 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,15 @@ jobs:
- mediawiki_version: '1.39'
smw_version: dev-master
php_version: 8.1
mm_version: 6.0.0
database_type: mysql
database_image: "mariadb:10"
database_image: "mariadb:11.2"
coverage: false
experimental: false
- mediawiki_version: '1.40'
smw_version: dev-master
php_version: 8.1
mm_version: 6.0.0
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@gesinn-it-gea Why this addition?

database_type: mysql
database_image: "mariadb:11.2"
coverage: true
Expand All @@ -36,6 +38,7 @@ jobs:
pf_version: 5.9
sfs_version: dev-master
php_version: 8.1
mm_version: 6.0.0
database_type: mysql
database_image: "mariadb:11.2"
coverage: false
Expand All @@ -45,15 +48,17 @@ jobs:
pf_version: 5.9
sfs_version: dev-master
php_version: 8.1
mm_version: 6.0.0
database_type: mysql
database_image: "mariadb:11.2"
coverage: false
experimental: false
- mediawiki_version: '1.43'
- mediawiki_version: '1.43.1'
smw_version: dev-master
pf_version: 5.9
sfs_version: dev-master
php_version: 8.1
mm_version: 6.0.0
database_type: mysql
database_image: "mariadb:11.2"
coverage: false
Expand All @@ -67,6 +72,7 @@ jobs:
PHP_VERSION: ${{ matrix.php_version }}
DB_TYPE: ${{ matrix.database_type }}
DB_IMAGE: ${{ matrix.database_image }}
MM_VERSION: ${{ matrix.mm_version }}


steps:
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ DB_IMAGE?="mariadb:10"
SMW_VERSION?=dev-master
PF_VERSION ?= 5.5.1
SFS_VERSION ?= 4.0.0-beta
MM_VERSION ?= 3.1.0
MM_VERSION ?= 6.0.0

# composer
# Enables "composer update" inside of extension
Expand Down
59 changes: 1 addition & 58 deletions tests/phpunit/Integration/JSONScript/TestCases/gantt-01.json
Original file line number Diff line number Diff line change
Expand Up @@ -117,9 +117,6 @@
"type": "parser",
"about": "Test gantt min config",
"subject": "Example/Gantt Diagram min config",
"skip-on": {
"mediawiki": [ "<1.32.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat %m\\/%d\\/%Y\\nsection First Section\\nTask01\\t :2019-01-01, 2019-01-15\\nTask03\\t :2019-02-01, 2019-02-15\\nTask04\\t :2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t :2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;default&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:75,&quot;titleTopMargin&quot;:25,&quot;barHeight&quot;:20,&quot;barGap&quot;:4&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
Expand All @@ -130,22 +127,16 @@
"type": "parser",
"about": "Test gantt when all config params set",
"subject": "Example/Gantt Diagram config all",
"skip-on": {
"mediawiki": [ ">1.31.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat&#160;%m\\/%d\\/%Y\\nsection First Section\\nTask01\\t&#160;:2019-01-01, 2019-01-15\\nTask03\\t&#160;:2019-02-01, 2019-02-15\\nTask04\\t&#160;:2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t&#160;:2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;forest&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:130,&quot;titleTopMargin&quot;:30,&quot;barHeight&quot;:40,&quot;barGap&quot;:15&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat %m\\/%d\\/%Y\\nsection First Section\\nTask01\\t :2019-01-01, 2019-01-15\\nTask03\\t :2019-02-01, 2019-02-15\\nTask04\\t :2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t :2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;forest&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:130,&quot;titleTopMargin&quot;:30,&quot;barHeight&quot;:40,&quot;barGap&quot;:15&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
]
}
},
{
"type": "parser",
"about": "Test gantt when all config params set",
"subject": "Example/Gantt Diagram config all",
"skip-on": {
"mediawiki": [ "<1.32.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat %m\\/%d\\/%Y\\nsection First Section\\nTask01\\t :2019-01-01, 2019-01-15\\nTask03\\t :2019-02-01, 2019-02-15\\nTask04\\t :2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t :2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;forest&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:130,&quot;titleTopMargin&quot;:30,&quot;barHeight&quot;:40,&quot;barGap&quot;:15&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
Expand All @@ -156,22 +147,6 @@
"type": "parser",
"about": "Test axis forma %m/%d/%Y",
"subject": "Example/Gantt Diagram test axis format 1",
"skip-on": {
"mediawiki": [ ">1.31.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"axisFormat&#160;%m\\/%d\\/%Y"
]
}
},
{
"type": "parser",
"about": "Test axis forma %m/%d/%Y",
"subject": "Example/Gantt Diagram test axis format 1",
"skip-on": {
"mediawiki": [ "<1.32.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"axisFormat %m\\/%d\\/%Y"
Expand All @@ -182,22 +157,6 @@
"type": "parser",
"about": "Test priority mapping",
"subject": "Example/Gantt priority mapping test",
"skip-on": {
"mediawiki": [ ">1.31.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat&#160;%m\\/%d\\/%Y\\nsection First Section\\nTask01\\t&#160;:2019-01-01, 2019-01-15\\nTask03\\t&#160;:crit, 2019-02-01, 2019-02-15\\nTask04\\t&#160;:crit, 2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t&#160;:2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;forest&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:130,&quot;titleTopMargin&quot;:30,&quot;barHeight&quot;:40,&quot;barGap&quot;:15&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
]
}
},
{
"type": "parser",
"about": "Test priority mapping",
"subject": "Example/Gantt priority mapping test",
"skip-on": {
"mediawiki": [ "<1.32.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat %m\\/%d\\/%Y\\nsection First Section\\nTask01\\t :2019-01-01, 2019-01-15\\nTask03\\t :crit, 2019-02-01, 2019-02-15\\nTask04\\t :crit, 2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t :2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;forest&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:130,&quot;titleTopMargin&quot;:30,&quot;barHeight&quot;:40,&quot;barGap&quot;:15&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
Expand All @@ -208,22 +167,6 @@
"type": "parser",
"about": "Test priority mapping",
"subject": "Example/Gantt status mapping test",
"skip-on": {
"mediawiki": [ ">1.31.x", "MediaWiki changed handling of spaces &#160 vs. &nbsp; vs \" \"" ]
},
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat&#160;%m\\/%d\\/%Y\\nsection First Section\\nTask01\\t&#160;:2019-01-01, 2019-01-15\\nTask03\\t&#160;:active, 2019-02-01, 2019-02-15\\nTask04\\t&#160;:done, 2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t&#160;:active, 2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;forest&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:130,&quot;titleTopMargin&quot;:30,&quot;barHeight&quot;:40,&quot;barGap&quot;:15&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
]
}
},
{
"type": "parser",
"about": "Test priority mapping",
"subject": "Example/Gantt status mapping test",
"skip-on": {
"mediawiki": [ "<1.32.x", "MediaWiki changed ..." ]
},
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt\\ndateFormat YYYY-MM-DD\\naxisFormat %m\\/%d\\/%Y\\nsection First Section\\nTask01\\t :2019-01-01, 2019-01-15\\nTask03\\t :active, 2019-02-01, 2019-02-15\\nTask04\\t :done, 2019-02-15, 2019-02-28\\nsection Second Section\\nTask02\\t :active, 2019-01-15, 2019-01-31\\n&quot;,&quot;config&quot;:&#123;&quot;theme&quot;:&quot;forest&quot;,&quot;gantt&quot;:&#123;&quot;leftPadding&quot;:130,&quot;titleTopMargin&quot;:30,&quot;barHeight&quot;:40,&quot;barGap&quot;:15&#125;&#125;&#125;\"><div class=\"mermaid-dots\"></div></div>"
Expand Down
129 changes: 129 additions & 0 deletions tests/phpunit/Integration/JSONScript/TestCases/gantt-02.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
{
"description": "Extended test cases for the Gantt format in SRF",
"requires": {
"Mermaid": ">= 2.0"
},
"setup": [
{
"namespace": "SMW_NS_PROPERTY",
"page": "Display Title",
"contents": "[[Has type::Text]]"
},
{
"namespace": "SMW_NS_PROPERTY",
"page": "Start Date",
"contents": "[[Has type::Date]]"
},
{
"namespace": "SMW_NS_PROPERTY",
"page": "End Date",
"contents": "[[Has type::Date]]"
},
{
"namespace": "SMW_NS_PROPERTY",
"page": "Status",
"contents": "[[Has type::Text]]"
},
{
"namespace": "SMW_NS_PROPERTY",
"page": "Priority",
"contents": "[[Has type::Text]]"
},
{
"namespace": "SMW_NS_PROPERTY",
"page": "Related To Section",
"contents": "[[Has type::Page]]"
},
{
"namespace": "NS_TEMPLATE",
"page": "Task",
"contents": "[[Category:Task]][[Display Title::{{{title|}}}]][[Start Date::{{{start|}}}]][[End Date::{{{end|}}}]][[Status::{{{status|}}}]][[Priority::{{{priority|}}}]][[Related To Section::{{{section|}}}]]"
},
{
"page": "Gantt/TaskA",
"contents": "{{Task |title=Task A |start=2025-07-01 |end=2025-07-05 |status=done |priority=medium |section=Planning}}"
},
{
"page": "Gantt/TaskB",
"contents": "{{Task |title=Task B |start=2025-07-06 |end=2025-07-12 |status=in progress |priority=critical |section=Execution}}"
},
{
"page": "Gantt/TaskC",
"contents": "{{Task |title=Task C |start=2025-07-13 |end=2025-07-20 |status=backlog |priority=low |section=Execution}}"
},
{
"page": "Gantt/TaskD",
"contents": "{{Task |title=Task D |start=2025-07-21 |end=2025-07-30 |status=open |priority=very high |section=Review}}"
},
{
"page": "Gantt/TaskE",
"contents": "{{Task |title=Task E |start=2025-08-01 |end=2025-08-10 |status=completed |priority=high |section=Closure}}"
},
{
"page": "Gantt/Diagram/Basic",
"contents": "{{#ask:[[Category:Task]] |?Display Title=task |?Status=status |?Start Date=startdate |?End Date=enddate |?Related To Section=section |?Priority=priority |format=gantt}}"
},
{
"page": "Gantt/Diagram/WithTheme",
"contents": "{{#ask:[[Category:Task]] |?Display Title=task |?Status=status |?Start Date=startdate |?End Date=enddate |?Related To Section=section |?Priority=priority |format=gantt |theme=base |bargap=5 |barheight=30}}"
},
{
"page": "Gantt/Diagram/CustomAxis",
"contents": "{{#ask:[[Category:Task]] |?Display Title=task |?Status=status |?Start Date=startdate |?End Date=enddate |?Related To Section=section |?Priority=priority |format=gantt |axisformat=%B %Y}}"
},
{
"page": "Gantt/Diagram/StatusPriorityMap",
"contents": "{{#ask:[[Category:Task]] |?Display Title=task |?Status=status |?Start Date=startdate |?End Date=enddate |?Related To Section=section |?Priority=priority |format=gantt |statusmapping=backlog=>active;in progress=>active;completed=>done |prioritymapping=critical=>crit;very high=>crit}}"
}
],
"tests": [
{
"type": "parser-html",
"about": "Ensure SVG structure exists",
"subject": "Gantt/Diagram/Basic",
"assert-output": {
"to-contain": [["div.mw-parser-output > div.srf-gantt", 1]]
}
},
{
"type": "parser",
"about": "Validate axis format %B %Y",
"subject": "Gantt/Diagram/CustomAxis",
"assert-output": {
"to-contain": ["axisFormat %B %Y"]
}
},
{
"type": "parser",
"about": "Priority and status mapping test",
"subject": "Gantt/Diagram/StatusPriorityMap",
"assert-output": {
"to-contain": [
"data-mermaid=\"&#123;&quot;content&quot;:&quot;gantt",
"section Planning",
"Task A\\t :2025-07-01, 2025-07-05",
"section Execution",
"Task B\\t :crit, active, 2025-07-06, 2025-07-12",
"Task C\\t :active, 2025-07-13, 2025-07-20",
"section Review",
"Task D\\t :crit, 2025-07-21, 2025-07-30",
"section Closure",
"Task E\\t :done, 2025-08-01, 2025-08-10"
]
}
}
],
"settings": {
"wgContLang": "en",
"wgLang": "en",
"smwgNamespacesWithSemanticLinks": {
"NS_MAIN": true,
"SMW_NS_PROPERTY": true
}
},
"meta": {
"version": "2",
"is-incomplete": false,
"debug": true
}
}