Syncing up with what's in production :-/
[margebot.git] / tests / test_marge.py
index bb53f9d..8aed0ba 100644 (file)
@@ -38,6 +38,10 @@ class TestMarge(object):
         testbot.push_message("!plugin config Webserver {'HOST': '0.0.0.0', 'PORT':3141, 'SSL': {'certificate': '', 'enabled': False, 'host': '0.0.0.0', 'key': '', 'port': 3142}}")
         testbot.pop_message()
 
+        def mock_get(self, key):
+            return {}
+        monkeypatch.setattr(errbot.storage.StoreMixin, '__getitem__', mock_get, raising=False)
+
         def mock_keys(self):
             return ['OPEN_MRS']
         monkeypatch.setattr(errbot.storage.StoreMixin, 'keys', mock_keys, raising=False)
@@ -46,11 +50,6 @@ class TestMarge(object):
 
     @pytest.fixture
     def margebot_no_reviews(self, margebot, monkeypatch):
-
-        def mock_get(self, key):
-            return {}
-
-        monkeypatch.setattr(errbot.storage.StoreMixin, '__getitem__', mock_get, raising=False)
         return margebot
 
     @pytest.fixture
@@ -151,6 +150,7 @@ class TestMarge(object):
         def mock_getmergerequest(self, project, iid):
             return {}
         monkeypatch.setattr(gitlab, 'getuser', mock_getmergerequest)
+        return gitlab
 
     @pytest.fixture
     def gitlab_one_review(self, gitlab, monkeypatch):
@@ -163,6 +163,7 @@ class TestMarge(object):
                     'web_url': 'http://gitlab.example.com/sample/mr/2001',
                     'work_in_progress': False}
         monkeypatch.setattr(gitlab, 'getmergerequest', mock_getmergerequest)
+        return gitlab
 
     # ============================================================================
 
@@ -211,13 +212,14 @@ class TestMarge(object):
                                   'title': 'title',
                                   'author_id': 'author_id',
                                   'target_project_id': 'project_id',
+                                  'id': 'id',
                                   'iid': 'iid'},
                               'project': {
                                   'homepage': 'url'}})
         margebot.push_message("!webhook test /margebot/room1,room2 " + request)
-        assert 'New Review: author_id username has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
+        assert 'Hi there ! author_id username has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
         margebot.push_message('!reviews')
-        assert 'New Review: author_id username has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
+        assert 'Hi there ! author_id username has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
 
     def test_gitlab_hook_wip(self, margebot, gitlab):
         request = json.dumps({'object_kind': 'merge_request',
@@ -227,13 +229,14 @@ class TestMarge(object):
                                   'title': 'title',
                                   'author_id': 'author_id',
                                   'target_project_id': 'project_id',
+                                  'id': 'id',
                                   'iid': 'iid'},
                               'project': {
                                   'homepage': 'url'}})
         margebot.push_message("!webhook test /margebot/room1,room2 " + request)
-        assert 'New Review: author_id username has opened a new WIP MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
+        assert 'Hi there ! author_id username has opened a new WIP MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
         margebot.push_message('!reviews')
-        assert 'New Review: author_id username has opened a new WIP MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
+        assert 'Hi there ! author_id username has opened a new WIP MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
 
     def test_gitlab_hook_unexpected_user(self, margebot, gitlab):
         request = json.dumps({'object_kind': 'merge_request',
@@ -243,16 +246,17 @@ class TestMarge(object):
                                   'title': 'title',
                                   'author_id': '(missing)',
                                   'target_project_id': 'project_id',
+                                  'id': 'id',
                                   'iid': 'iid'},
                               'project': {
                                   'homepage': 'url'}})
 
         margebot.push_message("!webhook test /margebot/room1,room2 " + request)
-        assert 'New Review: (missing) has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
+        assert 'Hi there ! (missing) has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
         margebot.push_message('!reviews')
-        assert 'New Review: (missing) has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
+        assert 'Hi there ! (missing) has opened a new MR: \"title\"\nurl/merge_requests/iid' in margebot.pop_message()
 
-    def test_gitlab_hook_unexpected_object_kind(self, margebot_no_reviews, gitlab, caplog):
+    def test_gitlab_hook_unexpected_object_kind(self, margebot, gitlab, caplog):
         request = json.dumps({'object_kind': 'not_merge_request',
                               'object_attributes': {
                                   'state': 'opened',
@@ -260,19 +264,20 @@ class TestMarge(object):
                                   'title': 'title',
                                   'author_id': 'author_id',
                                   'target_project_id': 'project_id',
+                                  'id': 'id',
                                   'iid': 'iid'},
                               'project': {
                                   'homepage': 'url'}})
 
-        margebot_no_reviews.push_message("!webhook test /margebot/room1,room2 " + request)
-        margebot_no_reviews.pop_message()
-        margebot_no_reviews.push_message('!reviews')
-        assert 'Hi gbin: I found no open MRs for you.' in margebot_no_reviews.pop_message()
+        margebot.push_message("!webhook test /margebot/room1,room2 " + request)
+        margebot.pop_message()
+        margebot.push_message('!reviews')
+        assert 'Hi gbin: I found no open MRs for you.' in margebot.pop_message()
         assert 'unexpecting object_kind: not_merge_request' in caplog.text  # Has to be at end of method
 
-    def test_nothing_to_review(self, margebot_no_reviews, gitlab_no_reviews):
-        margebot_no_reviews.push_message('!reviews')
-        assert 'Hi gbin: I found no open MRs for you.' in margebot_no_reviews.pop_message()
+    def test_nothing_to_review(self, margebot, gitlab_no_reviews):
+        margebot.push_message('!reviews')
+        assert 'Hi gbin: I found no open MRs for you.' in margebot.pop_message()
 
     def test_get_one_open_mr(self, margebot_one_review, gitlab_one_review):
         margebot_one_review.push_message('!reviews')