Diff
Modified: trunk/Tools/BuildSlaveSupport/ews-build/factories.py (233920 => 233921)
--- trunk/Tools/BuildSlaveSupport/ews-build/factories.py 2018-07-18 18:40:14 UTC (rev 233920)
+++ trunk/Tools/BuildSlaveSupport/ews-build/factories.py 2018-07-18 18:40:20 UTC (rev 233921)
@@ -88,7 +88,9 @@
class iOSSimulatorFactory(BuildFactory):
- pass
+ def __init__(self, platform, configuration=None, architectures=None, additionalArguments=None, **kwargs):
+ BuildFactory.__init__(self, platform, configuration, architectures, additionalArguments)
+ self.addStep(RunWebKitTests())
class MacWK1Factory(BuildFactory):
Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps.py (233920 => 233921)
--- trunk/Tools/BuildSlaveSupport/ews-build/steps.py 2018-07-18 18:40:14 UTC (rev 233920)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps.py 2018-07-18 18:40:20 UTC (rev 233921)
@@ -258,3 +258,29 @@
def __init__(self, **kwargs):
super(KillOldProcesses, self).__init__(timeout=60, **kwargs)
+
+
+class RunWebKitTests(shell.Test):
+ name = 'layout-tests'
+ description = ['layout-tests running']
+ descriptionDone = ['layout-tests']
+ resultDirectory = 'layout-test-results'
+ command = ['python', 'Tools/Scripts/run-webkit-tests',
+ '--no-build',
+ '--no-new-test-results',
+ '--no-show-results',
+ '--exit-after-n-failures', '30',
+ '--skip-failing-tests',
+ WithProperties('--%(configuration)s')]
+
+ def start(self):
+ platform = self.getProperty('platform')
+ appendCustomBuildFlags(self, platform, self.getProperty('fullPlatform'))
+ additionalArguments = self.getProperty('additionalArguments')
+
+ self.setCommand(self.command + ['--results-directory', self.resultDirectory])
+ self.setCommand(self.command + ['--debug-rwt-logging'])
+
+ if additionalArguments:
+ self.setCommand(self.command + additionalArguments)
+ return shell.Test.start(self)
Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py (233920 => 233921)
--- trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py 2018-07-18 18:40:14 UTC (rev 233920)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py 2018-07-18 18:40:20 UTC (rev 233921)
@@ -709,5 +709,41 @@
return self.runStep()
+class TestRunWebKitTests(BuildStepMixinAdditions, unittest.TestCase):
+ def setUp(self):
+ self.longMessage = True
+ return self.setUpBuildStep()
+
+ def tearDown(self):
+ return self.tearDownBuildStep()
+
+ def test_success(self):
+ self.setupStep(RunWebKitTests())
+ self.setProperty('fullPlatform', 'ios-simulator')
+ self.setProperty('configuration', 'release')
+ self.expectRemoteCommands(
+ ExpectShell(workdir='wkdir',
+ command=['python', 'Tools/Scripts/run-webkit-tests', '--no-build', '--no-new-test-results', '--no-show-results', '--exit-after-n-failures', '30', '--skip-failing-tests', '--release', '--results-directory', 'layout-test-results', '--debug-rwt-logging'],
+ )
+ + 0,
+ )
+ self.expectOutcome(result=SUCCESS, state_string='layout-tests')
+ return self.runStep()
+
+ def test_failure(self):
+ self.setupStep(RunWebKitTests())
+ self.setProperty('fullPlatform', 'ios-simulator')
+ self.setProperty('configuration', 'release')
+ self.expectRemoteCommands(
+ ExpectShell(workdir='wkdir',
+ command=['python', 'Tools/Scripts/run-webkit-tests', '--no-build', '--no-new-test-results', '--no-show-results', '--exit-after-n-failures', '30', '--skip-failing-tests', '--release', '--results-directory', 'layout-test-results', '--debug-rwt-logging'],
+ )
+ + ExpectShell.log('stdio', stdout='9 failures found.')
+ + 2,
+ )
+ self.expectOutcome(result=FAILURE, state_string='layout-tests (failure)')
+ return self.runStep()
+
+
if __name__ == '__main__':
unittest.main()
Modified: trunk/Tools/ChangeLog (233920 => 233921)
--- trunk/Tools/ChangeLog 2018-07-18 18:40:14 UTC (rev 233920)
+++ trunk/Tools/ChangeLog 2018-07-18 18:40:20 UTC (rev 233921)
@@ -1,3 +1,15 @@
+2018-07-18 Aakash Jain <aakash_j...@apple.com>
+
+ [ews-build] Add build step to run layout-test
+ https://bugs.webkit.org/show_bug.cgi?id=187674
+
+ Reviewed by Lucas Forschler.
+
+ * BuildSlaveSupport/ews-build/steps.py:
+ (RunWebKitTests): Added build step to run layout-tests. This is similar to current EWS.
+ * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
+ * BuildSlaveSupport/ews-build/factories.py: Added build-step to run layout-test in iOSSimulatorFactory.
+
2018-07-18 Wenson Hsieh <wenson_hs...@apple.com>
Add SPI to defer running async script until after document load