Commit graph

157 commits

Author SHA1 Message Date
jenkins-bot ad668a6e69 Merge "Fix for sideset case" 2023-03-13 15:57:52 +00:00
Stegmujo b7d909e0a2 Fix for sideset case
* example "\sideset{_1^2}{_3^4}\sum"
* case 3 phabricator "sideset"
* index: 90
* since result has multiscripts which is not generated by mathoid, there is an explicit test in MMLRenderTest and the previous test is in MMLTexVCUtilTest is skipped
* in MMLGenerationTexUtilTest test for sideset is deactivated
* adds a case from FullCoverageTest for sideset with FQ
* fixes an issue which occured during Phan checks for merging that genFrac throws an error

Bug : T327391

Change-Id: I4c5a5f5a901dbc906f5a1b168d3a8d04f25b9290
2023-03-13 15:38:04 +00:00
libraryupgrader dcce2100d0 build: Updating dependencies
composer:
* mediawiki/mediawiki-codesniffer: 39.0.0 → 41.0.0

npm:
* cookiejar: 2.1.3 → 2.1.4
  * https://github.com/advisories/GHSA-h452-7996-h45h
* http-cache-semantics: 4.1.0 → 4.1.1
  * https://github.com/advisories/GHSA-rc47-6667-2j5j
* ua-parser-js: 1.0.2 → 1.0.34
  * https://github.com/advisories/GHSA-fhg7-m89q-25r3

Change-Id: I4198e1cbdc115d27c9fe5b8d0ce813b514524796
2023-03-12 05:44:17 +00:00
Moritz Schubotz (physikerwelt) 88a4c8bc1d
Add minimal native MML mode
* Add minimal POC for native MathML rendering.
* (minor) convert string-based reference to MathConfig to proper access
  method.

Missing:
 *  Error handling
 *  Image fallbacks

Bug: T331047

Change-Id: I7e644c4688cca7fc9af0d54bdc260268c1f6b9df
2023-03-02 20:50:29 +01:00
Stegmujo 8101c8f136
Fix for tex-statement definecolor
* example "\definecolor{ultramarine}{RGB}{0,32,96} a {b \color{ultramarine} c} d"
* case 2 phabricator: "colors"
* index: 22
* some test for parsing color statements

Bug: T327391
Change-Id: I98fdf011a2089dad4e7cb5a7a6aa8433fafe4a94
2023-03-02 11:35:27 +01:00
Stegmujo 8f81eabc83 Add more detailed testcases for Color, Pagecolor and Definecolor
* case 2: "colors"
* in MMLGenerationTexUtilTest.php
* Updated the keyfiles etc

Bug: T327391
Change-Id: Id3232f21dea9813ec5adcacca58e912cf116ab72
2023-03-01 15:25:50 +00:00
jenkins-bot 64c3f6893a Merge "Add native MathML rendering mode to MathConfig" 2023-03-01 14:25:05 +00:00
Moritz Schubotz (physikerwelt) 642e54c51b Add native MathML rendering mode to MathConfig
Add a new rendering mode option.

Change-Id: I36e2cc542ae89bff03f779a71ddceb77dfac99a9
2023-03-01 13:39:35 +00:00
Moritz Schubotz (physikerwelt) 9340b09c03
Expose parsetree in local checker
In perparation to the PHP only native MathML rendering mode, we expose
the parsetree of the checker.

Change-Id: I8da8d0e236c2b001e664ce707c7469ebe8a91eb8
2023-03-01 08:30:46 +01:00
Stegmujo ef2f59eed5
Fix exceptions thrown by LocalChecker
* for more consistency with the other Checker initialisations in
InputCheckFactory

Bug: T327098
Change-Id: Ia85775dea6a7dda5fcf42d66a161da49515ba0aa
2023-02-27 17:52:28 +01:00
Stegmujo 6ffaed440c
Remove additional mi for Hbox cases in TexUtilTest
* fix results for tests
* testindices 53 to 58
* formerly this contained a comparator fix (rolled back)

Bug: T327392
Change-Id: I1af65d5d8a4625d164630254da285830f4c9e0a3
2023-02-16 20:25:48 +01:00
Stegmujo 14c38c8f46
Fix vline in Matrix in TexUtilTest
* case index 654

Bug: T327392
Change-Id: I3f7d22ff501a30eef79baf82236406d8f5e450ae
2023-02-16 17:16:19 +01:00
jenkins-bot d6de86cba3 Merge "Allow \circ command in bonds in TexVCPHP" 2023-02-16 09:03:23 +00:00
Stegmujo bcc066de21 Fix GenerationParserTest for texvctreebugs check
* fix the testfile so it can be read correctly for texvctreebugs category
* fix the test that category can be selected dynamically

Bug: T327391

Change-Id: I51508bddb83ba925c739962df41c04f1ccfd311b
2023-02-15 14:07:05 +00:00
Stegmujo 65b3114e5b
Allow \circ command in bonds in TexVCPHP
Add \circ to mhchem macros to allow them in bonds.

Bug: T328833
Change-Id: I3100033904e28a181a2e674da388832678eb0db3
2023-02-15 14:25:30 +01:00
Stegmujo 1865fbf31b Fix low scores for oint statements
Bug: T327392

Change-Id: Ia4afc6d6674793ee5d120b20d1ce6f60a12d5e4a
2023-02-13 15:11:54 +00:00
Stegmujo 39c400a431 Fix Parsing of Mod elements with and without params
* some adaptions to test and comparator
* minor fix in mappings for ncong
* introduce a LaTeXML Fallback for the tex-cases:
** "\ce{\ca}"
** "\mod"

Bug: T327392

Change-Id: Ie2efa392bd517a28fe8b6e8d0cecdba64cd1c415
2023-02-13 12:23:44 +00:00
Stegmujo dbf15a72c6 Fix parsing functions for MMLGenerationTexVCUtilTest
* for "oint","ointctrclockwise", "varointclockwise."
* some ignored attributes added to similarity algorithm

Bug: T327392
Change-Id: Id4cf720bb2d2c8aeb524c2303bdf0d4be3547404
2023-02-08 14:30:46 +00:00
Stegmujo 5eba9b74a0
Optimize Test Parametrization
* For MMLGenTexVCUtilTest and the MMLComparator
* Also skip some inputs which are not supported

Bug: T327392
Change-Id: Ifac913e2b8e4c70c7222f769c0e7cf93e65de5b8
2023-02-06 17:13:38 +01:00
Stegmujo be8725c1d2
Add New TexUtil-Reference which also has Chem
* Update maintanance script with Chem-Fallback
* delete obsolete MML Lookup (was from mathjax-full)
* TexUtil-Ref is created without chem fallback

Bug: T327388
Change-Id: Id603d66feccf3716828c2aac57acac7d23131ddf
2023-02-06 16:30:25 +01:00
Stegmujo 17d9ade3f2 Insert MathML-Comparator features in MathML-Tests
Bug: T327393
Change-Id: I1d781587cf62d034493a06a4a9640d0dd14c8386
2023-02-03 14:58:52 +00:00
Stegmujo a1cddd7e0d Add MathML-Comparator algorithm for the automated tests
* Compares two MathML trees
* Calculates F-Score and Diffs

Bug: T885309
Change-Id: Iabdb5b12054e4c1ce6e2c756643bafd371da6fb0
2023-02-03 10:24:17 +00:00
Stegmujo 8d522c4022 New lookups for tests enabling reference MathML
* For the existing MMLGeneration...Tests, reference MathML has been generated
for mathoid and latexml within reference files in json.
* The creation of json files was done with JsonToMathML script
* The test-classes have been adapted a bit, so they can read the new reference files.
* MMLGenerationTexUtil test has export function for input
for maintenance-script for

Bug: T327388
Change-Id: I05a8c7bb5e37cf75faf09ec43e9ce2acc7bf2040
2023-01-27 20:52:10 +00:00
Stegmujo ada1d6e3db
Add Full-Coverage Test TexVC-MMLGeneration for Mathoid-LateXML
* Implemented multiple-column generation for the HTML-Generator
* Items can be skipped in test by defining index

Bug: T327386
Change-Id: I13148d58246ddcc1f2e6dcd14fa5b4255a1fb8e7
2023-01-26 13:12:19 +01:00
jenkins-bot 347dcbd3fe Merge "Fix significant typo in grammar" 2023-01-03 16:02:27 +00:00
jenkins-bot 6153004078 Merge "Improve security of MathML output" 2023-01-03 15:28:24 +00:00
Moritz Schubotz (physikerwelt) 7b425a5500
Improve security of MathML output
Avoid that user input is passed to the HTML output directly by using
HTML methods for tag generation. This also enables additional phan checks.

Change-Id: Iff584ac829c190e413a36331c53d6835a86bc0d5
2023-01-03 15:47:54 +01:00
Moritz Schubotz (physikerwelt) 0aecf2ab10
Expand texvcjs comparison test
* Currently the regression test only tests if all formulae that passed the test before still pass the test

* This change also compares the output

Change-Id: Ib667de2e7e512cf7d045e28a19c6a5f7d994dfc6
2022-12-30 19:53:31 +01:00
Moritz Schubotz (physikerwelt) 81fa5b0c97
Fix significant typo in grammar
* Uq and Dq was mixed
* Simplify regeneration of grammar for node developers
* Speed up npm test by ignoring local test json files

Change-Id: Iec273dcc967be46d3df52260fc56f1969667e497
2022-12-30 16:58:39 +01:00
Moritz Schubotz (physikerwelt) e4affc08ec
Fix HTML testtable generation
* Do not generate a new table for every case

Change-Id: I0352a30e66fc7c43ac18e5a09b5794bc50a9b98c
2022-12-29 11:03:29 +01:00
jenkins-bot 5ad3a47d0d Merge "Improve test coverage for nodes" 2022-12-28 20:45:52 +00:00
jenkins-bot 98aeec1201 Merge "Add tests for more TeX statements" 2022-12-28 19:40:11 +00:00
Moritz Schubotz (physikerwelt) b9e297c4ec Improve test coverage for nodes
* Use merror instead of plain strings for not implemented functions

Change-Id: If20559e05f3b0c8921a28c623102b8f4788a3c94
2022-12-28 19:18:21 +00:00
Moritz Schubotz (physikerwelt) 469c698e47
Improve checking performance
* Report only on used packages if requested

Change-Id: I5b4fc6d7e571206f5b5d41d3bf268251ed1a8677
2022-12-28 13:34:23 +01:00
Stegmujo 6581889158
Add tests for more TeX statements
* These can be used for development purposes

Bug: T302628
Change-Id: I620b0a44b30b88a68f8f806b9c20ddabfe227573
2022-12-28 11:34:45 +01:00
jenkins-bot 00e7d44ec6 Merge "Use named data sets in AllTest" 2022-12-28 09:30:57 +00:00
Moritz Schubotz (physikerwelt) b0cacbc1a6
Use named data sets in AllTest
Change-Id: Ia8ceb06f2d2ec5a4f5935fb0d4b6e95e466ce002
2022-12-28 09:46:19 +01:00
Moritz Schubotz (physikerwelt) 70acbd7ea4
Fix missing curlies in chem nodes
* the php implementation had fewer curlies compared to the
  js implmenetation

* remove unused function name (could be replace get_class)

* Add testcase for declh

Change-Id: I8132604a659d7ddf98e1f73686b40ff0591229f3
2022-12-28 00:56:47 +01:00
Stegmujo 783797bb9a
Add test for basic MML Methods
Bug: T302628
Change-Id: Ib3d781a516e53392fb09a2c70b322805dcb43fcf
2022-12-23 22:46:59 +01:00
Umherirrender 6e424c2e4a Replace comment about deprecated Http::post
Bug: T305813
Change-Id: I1975fd473c8d57ab7e43a47ea4da3d4f33fac68c
2022-12-11 15:04:59 +01:00
Moritz Schubotz (physikerwelt) cbd67195f5
Update positive regression tests
Adapt test running structure to the new structure for good tests
coming from texvcjs.

Change-Id: I330bb3f8f0c6f379d624986827f96946af1d4c12
2022-12-06 10:59:39 +01:00
thiemowmde 566944c42d Fix broken/incomplete regex patterns in TexNode::texContainsFunc
I compared with
6c6988c4f6/lib/astutil.js
and found two mistakes:
* Missing space at the end of the color regex.
* Not enough backslash escaping in the last regex.

Note how the code in lines #116 and #130 is now identical.

Change-Id: I13b75ad4a1e4da0766c0d73b8786b21865945697
2022-12-01 17:05:30 +01:00
thiemowmde f09ce3134b Add many more testcases for TexNode::texContainsFunc()
Positive as well as negative tests. This patch intentionally doesn't
touch the implementation but simply documents how the code currently
behaves.

Change-Id: Ib670ad680087e520f4a99e932e5a2a9fd2d115de
2022-12-01 16:57:28 +01:00
thiemowmde f459b0b305 Rewrite TexNodeTest to use @dataProviders
Personally I find this easier to read. It allows to maintain a compact
list of input values with the expected output.

Change-Id: Ifeb532e2b94c674b512b3c40f101977939b83cd5
2022-12-01 16:34:40 +01:00
jenkins-bot 99b1b231c5 Merge "Fix assert functions in En-MediaWiki-Testcase" 2022-11-29 20:12:52 +00:00
jenkins-bot 04c839d680 Merge "Skip tests that are known to fail" 2022-11-29 19:38:44 +00:00
Stegmujo d4418049c8
Fix assert functions in En-MediaWiki-Testcase
Change-Id: I9355d86e9a482fa2f86aac19a2018a6ad149ef20
2022-11-29 20:29:11 +01:00
thiemowmde f4ed725712 Fix and add test for "0" special case in TexNode
We fixed this in I47b6d5b but broke it again in Ie8d8106. Let's
finally add a test for this edge-case.

Change-Id: I9a43518f9edf0fab05e76bbb02a30fefd039b77d
2022-11-29 12:11:15 +01:00
jenkins-bot a58d9c39d3 Merge "Various code cleanups, more compact syntax and such" 2022-11-29 10:21:02 +00:00
Moritz Schubotz (physikerwelt) 7ecce2a104
Skip tests that are known to fail
* don't return on skipped tests
* add some additional non math test cases

Change-Id: Ia389141693a2e2ed6dea4294549674402e109d64
2022-11-27 15:08:56 +01:00