Simplify command building logic
Categories
(Testing :: XPCShell Harness, enhancement, P3)
Tracking
(Not tracked)
People
(Reporter: ahal, Unassigned, Mentored)
Details
(Whiteboard: [lang=py])
Updated•6 years ago
|
Reporter | ||
Updated•5 years ago
|
Comment 1•4 years ago
|
||
I will like to work on this issue, Can you guide me where can I start understanding this bug, I did try to read Bug 1470914 but there is no description or no comments there.
(Requesting info from :gbrown since :ahal is PTO until march)
Comment 2•4 years ago
|
||
The desktop xpcshell harness is mostly implemented in runxpcshelltests.py. The harness runs the xpcshell binary to run each test in a separate process. The xpcshell command line is fairly complicated and varies (slightly) for different tests and harness options.
I think the focus of this bug is how self.command (the xpcshell command line) is built up here:
https://searchfox.org/mozilla-central/rev/7067bbd8194f4346ec59d77c33cd88f06763e090/testing/xpcshell/runxpcshelltests.py#760-781
Can you find a way to generate the same self.command with less code, or in a better organized way? (If you cannot, and you think there are good reasons to organize the code the way it is, that's fine too - we can probably just close this bug as WONTFIX, with an explanation.)
An important complication is that the desktop xpcshell harness is sub-classed in remotexpcshelltests.py, in order to run tests on Android. For instance, buildXpcsCmd is implemented differently for Android:
https://searchfox.org/mozilla-central/rev/7067bbd8194f4346ec59d77c33cd88f06763e090/testing/xpcshell/remotexpcshelltests.py#138-158
Structural changes to runxpcshelltests.py may require similar changes to remotexpcshelltests.py, to ensure that tests continue to work both on desktop and Android.
Updated•2 years ago
|
Description
•