fix: Only POST to rfceditor in production (#7241)
* fix: Only POST to rfceditor in production * test: Test server mode checking
This commit is contained in:
parent
79416cfa0a
commit
cf21b8f236
|
@ -802,6 +802,10 @@ def post_approved_draft(url, name):
|
|||
the data from the Datatracker and start processing it. Returns
|
||||
response and error (empty string if no error)."""
|
||||
|
||||
if settings.SERVER_MODE != "production":
|
||||
log(f"In production, would have posted RFC-Editor notification of approved I-D '{name}' to '{url}'")
|
||||
return "", ""
|
||||
|
||||
# HTTP basic auth
|
||||
username = "dtracksync"
|
||||
password = settings.RFC_EDITOR_SYNC_PASSWORD
|
||||
|
|
|
@ -597,6 +597,29 @@ class RFCSyncTests(TestCase):
|
|||
auth48_docurl = draft.documenturl_set.filter(tag_id='auth48').first()
|
||||
self.assertIsNone(auth48_docurl)
|
||||
|
||||
def test_post_approved_draft_in_production_only(self):
|
||||
self.requests_mock.post("https://rfceditor.example.com/", status_code=200, text="OK")
|
||||
|
||||
# be careful playing with SERVER_MODE!
|
||||
with override_settings(SERVER_MODE="test"):
|
||||
self.assertEqual(
|
||||
rfceditor.post_approved_draft("https://rfceditor.example.com/", "some-draft"),
|
||||
("", "")
|
||||
)
|
||||
self.assertFalse(self.requests_mock.called)
|
||||
with override_settings(SERVER_MODE="development"):
|
||||
self.assertEqual(
|
||||
rfceditor.post_approved_draft("https://rfceditor.example.com/", "some-draft"),
|
||||
("", "")
|
||||
)
|
||||
self.assertFalse(self.requests_mock.called)
|
||||
with override_settings(SERVER_MODE="production"):
|
||||
self.assertEqual(
|
||||
rfceditor.post_approved_draft("https://rfceditor.example.com/", "some-draft"),
|
||||
("", "")
|
||||
)
|
||||
self.assertTrue(self.requests_mock.called)
|
||||
|
||||
|
||||
class DiscrepanciesTests(TestCase):
|
||||
def test_discrepancies(self):
|
||||
|
@ -636,6 +659,7 @@ class DiscrepanciesTests(TestCase):
|
|||
r = self.client.get(urlreverse("ietf.sync.views.discrepancies"))
|
||||
self.assertContains(r, doc.name)
|
||||
|
||||
|
||||
class RFCEditorUndoTests(TestCase):
|
||||
def test_rfceditor_undo(self):
|
||||
draft = WgDraftFactory()
|
||||
|
|
Loading…
Reference in a new issue