Page MenuHomePhabricator

Add round-trip test mode using selser and web interfaces
Closed, ResolvedPublic

Description

Selective serialization is currently only covered by parser tests, which are insufficient in particular for selective serialization. Even without any simulated changes, simple selser round-tripping will provide a valuable sanity check for diffing and top-level selser.


Version: unspecified
Severity: normal
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=56730
https://bugzilla.wikimedia.org/show_bug.cgi?id=64901

Details

Reference
bz56601

Event Timeline

bzimport raised the priority of this task from to High.Nov 22 2014, 2:39 AM
bzimport added a project: Parsoid-Tests.
bzimport set Reference to bz56601.

Ideally this testing would also be done through the web API end points so that we are testing the entire stack.

  • Bug 56730 has been marked as a duplicate of this bug. ***

Now that bug #56590 is fixed, and we're using the web API for round-trip testing, enabling selser should be just a matter of changing tests/test.localsettings.js. Of course, that would switch all the rt tests to use selser.

To get results with selser active and without, we'll need to add support for getting two results for the same page+commit (or just send a different hash for selser results?). Is this what we want?

Omitting the oldid in html2wt testing will disable selser even if that's enabled in localsettings.

Could the tag field be included in default searches too? Right now this requires an advanced search, which makes tags less useful than the old add-them-to-the-title work-around.

(In reply to Gabriel Wicke from comment #6)

Could the tag field be included in default searches too? Right now this
requires an advanced search, which makes tags less useful than the old
add-them-to-the-title work-around.

Eh, sorry. Was meant for bug 61292.

(In reply to Gabriel Wicke from comment #5)

Omitting the oldid in html2wt testing will disable selser even if that's
enabled in localsettings.

That does make it easier, but I'm still not sure about what we should do in round-trip testing:

(In reply to Marc Ordinas i Llopis from comment #4)

To get results with selser active and without, we'll need to add support for
getting two results for the same page+commit (or just send a different hash
for selser results?). Is this what we want?

(In reply to Marc Ordinas i Llopis from comment #8)

To get results with selser active and without, we'll need to add support for
getting two results for the same page+commit (or just send a different hash
for selser results?). Is this what we want?

According to http://windyroad.com.au/dl/Open%20Source/JUnit.xsd there can be any number of testsuite elements. We can use this to represent normal rt test results and selser rt test results.

Change 115419 had a related patch set uploaded by GWicke:
Simulate minor edit in _rtselser end point

https://gerrit.wikimedia.org/r/115419

Change 115419 merged by jenkins-bot:
Simulate minor edit in _rtselser end point

https://gerrit.wikimedia.org/r/115419

Reopening as our rt test setup is not yet doing any selser testing. We should be able to use the same code as in the _rtselser end point there.

Change 135575 had a related patch set uploaded by Marcoil:
Bug 56601: Add round-trip test mode using selser and web interfaces

https://gerrit.wikimedia.org/r/135575

Change 135575 merged by jenkins-bot:
Bug 56601: Add round-trip test mode using selser and web interfaces

https://gerrit.wikimedia.org/r/135575

Change 137680 had a related patch set uploaded by Marcoil:
Bug 56601: Keep number of rt selser errors in new column in stat table

https://gerrit.wikimedia.org/r/137680

Change 137680 merged by jenkins-bot:
Bug 56601: Keep number of rt selser errors in new column in stat table

https://gerrit.wikimedia.org/r/137680