jenkins-bot has submitted this change and it was merged.
Change subject: Add parser tests, fix warning they discovered
......................................................................
Add parser tests, fix warning they discovered
PHP Warning: First parameter must either be an object or the name of
an existing class in includes/Graph.body.php on line 138
Change-Id: I62d8ae49143ebab70fb636fe87a4c0ed21ad79d1
---
M extension.json
M includes/Graph.body.php
A tests/parserTests.txt
3 files changed, 44 insertions(+), 0 deletions(-)
Approvals:
Yurik: Looks good to me, approved
jenkins-bot: Verified
diff --git a/extension.json b/extension.json
index 336b229..34866da 100644
--- a/extension.json
+++ b/extension.json
@@ -194,5 +194,8 @@
"ExtensionMessagesFiles": {
"GraphAliases": "Graph.alias.php"
},
+ "ParserTestFiles": [
+ "tests/parserTests.txt"
+ ],
"manifest_version": 1
}
diff --git a/includes/Graph.body.php b/includes/Graph.body.php
index bcb2872..c3f8260 100644
--- a/includes/Graph.body.php
+++ b/includes/Graph.body.php
@@ -132,6 +132,10 @@
$isInteractive = isset( $args['mode'] ) && $args['mode'] ===
'interactive';
$graphTitle = isset( $args['title'] ) ? $args['title'] : '';
$data = $status->getValue();
+ if ( !is_object( $data ) ) {
+ // @todo: Output an error message instead?
+ $data = (object)[ 'width' => 200, 'height' => 200 ];
+ }
// Figure out which vega version to use
global $wgGraphDefaultVegaVer;
diff --git a/tests/parserTests.txt b/tests/parserTests.txt
new file mode 100644
index 0000000..428311b
--- /dev/null
+++ b/tests/parserTests.txt
@@ -0,0 +1,37 @@
+!! test
+<graph>
+!! input
+<graph>
+{}
+</graph>
+<graph>
+{
+ "width": 100,
+ "height": 200
+}
+</graph>
+!! result
+<div class="mw-graph mw-graph-always"
data-graph-id="cb66159a7f0070f4faaef2f353cb67c0d178d678"></div>
+<div class="mw-graph mw-graph-always" style="min-width:100px;min-height:200px"
data-graph-id="35d4ad35da17b39e7e4464fd7af741dadda01a91"></div>
+
+!! end
+
+!! test
+<graph> - error handling
+!! input
+<graph/>
+<graph></graph>
+<graph>
+{fail
+</graph>
+<graph>
+[ "foo", "bar" ]
+</graph>
+!! result
+<div class="mw-graph mw-graph-always" style="min-width:200px;min-height:200px"
data-graph-id="4406ae21fb62ba4a67e041d0f9e026a2819e48a8"></div>
+<div class="mw-graph mw-graph-always" style="min-width:200px;min-height:200px"
data-graph-id="4406ae21fb62ba4a67e041d0f9e026a2819e48a8"></div>
+<p>Syntax error
+</p>
+<div class="mw-graph mw-graph-always" style="min-width:200px;min-height:200px"
data-graph-id="4406ae21fb62ba4a67e041d0f9e026a2819e48a8"></div>
+
+!! end
--
To view, visit https://gerrit.wikimedia.org/r/315831
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I62d8ae49143ebab70fb636fe87a4c0ed21ad79d1
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Graph
Gerrit-Branch: master
Gerrit-Owner: MaxSem <[email protected]>
Gerrit-Reviewer: Yurik <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits