jenkins-bot has submitted this change and it was merged.

Change subject: tests: speed up TestZuulLayout
......................................................................


tests: speed up TestZuulLayout

Move Zuul scheduler initialization from __init__ to setUpClass() this
way it is only generated once for all the tests in TestZuulLayout.
Previously we would spawn a new Zuul instances for each test which
dramatically slowdown the run.  Went from a minute to 15 seconds on my
setup.

Change-Id: I87a20a3fa38643a84f9d0633f299e80ba7e88204
---
M tests/test_zuul_layout.py
1 file changed, 12 insertions(+), 9 deletions(-)

Approvals:
  Legoktm: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/tests/test_zuul_layout.py b/tests/test_zuul_layout.py
index eb67576..449bdc8 100644
--- a/tests/test_zuul_layout.py
+++ b/tests/test_zuul_layout.py
@@ -34,9 +34,8 @@
     zuul_config = None
     sched = None
 
-    def __init__(self, *args, **kwargs):
-        super(TestZuulLayout, self).__init__(*args, **kwargs)
-
+    @classmethod
+    def setUpClass(cls):
         # Craft our own zuul.conf
         wmf_zuul_layout = os.path.join(
             os.path.dirname(os.path.abspath(__file__)),
@@ -44,15 +43,19 @@
         cfg = ConfigParser.ConfigParser()
         cfg.add_section('zuul')
         cfg.set('zuul', 'layout_config', wmf_zuul_layout)
-        self.zuul_config = cfg
+        cls.zuul_config = cfg
 
-        self.sched = zuul.scheduler.Scheduler()
+        cls.sched = zuul.scheduler.Scheduler()
         # Reporters and Triggers are registered by zuul-server, not the
         # Scheduler class:
-        self.sched.registerTrigger(FakeTrigger(), 'gerrit')
-        self.sched.registerTrigger(FakeTrigger(), 'timer')
-        self.sched.registerTrigger(FakeTrigger(), 'zuul')
-        self.sched._doReconfigureEvent(ReconfigureEvent(self.zuul_config))
+        cls.sched.registerTrigger(FakeTrigger(), 'gerrit')
+        cls.sched.registerTrigger(FakeTrigger(), 'timer')
+        cls.sched.registerTrigger(FakeTrigger(), 'zuul')
+        cls.sched._doReconfigureEvent(ReconfigureEvent(cls.zuul_config))
+
+    @classmethod
+    def tearDownClass(cls):
+        cls.sched.exit()
 
     # Helpers
 

-- 
To view, visit https://gerrit.wikimedia.org/r/233709
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I87a20a3fa38643a84f9d0633f299e80ba7e88204
Gerrit-PatchSet: 1
Gerrit-Project: integration/config
Gerrit-Branch: master
Gerrit-Owner: Hashar <has...@free.fr>
Gerrit-Reviewer: Hashar <has...@free.fr>
Gerrit-Reviewer: Legoktm <legoktm.wikipe...@gmail.com>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to