From ca79c61950ae84cd36c5ae0d0cd06e38bff9f3ba Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Fri, 11 Dec 2020 17:08:53 +0000 Subject: [PATCH 1/2] Added a 'dumptime' entry to the JSON return from /api/version, in order to be able to make sure that running 'test-crawl --diff' will use database data from the same dump to avoid false page diff positives. Commit ready for merge. - Legacy-Id: 18752 --- ietf/api/views.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ietf/api/views.py b/ietf/api/views.py index 03101eb50..2bfdb75e2 100644 --- a/ietf/api/views.py +++ b/ietf/api/views.py @@ -3,6 +3,7 @@ import json +import pytz from jwcrypto.jwk import JWK @@ -36,6 +37,7 @@ from ietf.meeting.models import Meeting from ietf.stats.models import MeetingRegistration from ietf.utils.decorators import require_api_key from ietf.utils.log import log +from ietf.utils.models import DumpInfo def top_level(request): @@ -202,10 +204,13 @@ def api_new_meeting_registration(request): def version(request): + dumpinfo = DumpInfo.objects.order_by('-date').first() + dumptime = pytz.timezone(dumpinfo.tz).localize(dumpinfo.date).strftime('%Y-%m-%d %H:%M:%S %z') if dumpinfo else None return HttpResponse( - json.dumps({ + json.dumps({ 'version': ietf.__version__+ietf.__patch__, 'date': ietf.__date__[7:-2], + 'dumptime': dumptime, }), content_type='application/json', ) From bca7a5d128770f2fb098c2c9415f2ab7b9c9fbe7 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Fri, 11 Dec 2020 19:06:16 +0000 Subject: [PATCH 2/2] Added test case setUp() and tearDown() code to create yang model test directories for ApiSubmitTests. Commit ready for merge. - Legacy-Id: 18753 --- ietf/submit/tests.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/ietf/submit/tests.py b/ietf/submit/tests.py index 07beee539..5648f4c93 100644 --- a/ietf/submit/tests.py +++ b/ietf/submit/tests.py @@ -1878,16 +1878,41 @@ class ApiSubmitTests(TestCase): self.archive_dir = self.tempdir('submit-archive') settings.INTERNET_DRAFT_ARCHIVE_DIR = self.archive_dir + self.saved_yang_rfc_model_dir = settings.SUBMIT_YANG_RFC_MODEL_DIR + self.rfc_model_dir = self.tempdir('yang-rfcmod') + settings.SUBMIT_YANG_RFC_MODEL_DIR = self.rfc_model_dir + + self.saved_yang_draft_model_dir = settings.SUBMIT_YANG_DRAFT_MODEL_DIR + self.draft_model_dir = self.tempdir('yang-draftmod') + settings.SUBMIT_YANG_DRAFT_MODEL_DIR = self.draft_model_dir + + self.saved_yang_iana_model_dir = settings.SUBMIT_YANG_IANA_MODEL_DIR + self.iana_model_dir = self.tempdir('yang-ianamod') + settings.SUBMIT_YANG_IANA_MODEL_DIR = self.iana_model_dir + + self.saved_yang_catalog_model_dir = settings.SUBMIT_YANG_CATALOG_MODEL_DIR + self.catalog_model_dir = self.tempdir('yang-catalogmod') + settings.SUBMIT_YANG_CATALOG_MODEL_DIR = self.catalog_model_dir + MeetingFactory(type_id='ietf', date=datetime.date.today()+datetime.timedelta(days=60)) def tearDown(self): shutil.rmtree(self.staging_dir) shutil.rmtree(self.repository_dir) shutil.rmtree(self.archive_dir) + shutil.rmtree(self.rfc_model_dir) + shutil.rmtree(self.draft_model_dir) + shutil.rmtree(self.iana_model_dir) + shutil.rmtree(self.catalog_model_dir) + settings.IDSUBMIT_STAGING_PATH = self.saved_idsubmit_staging_path settings.INTERNET_DRAFT_PATH = self.saved_internet_draft_path settings.IDSUBMIT_REPOSITORY_PATH = self.saved_idsubmit_repository_path settings.INTERNET_DRAFT_ARCHIVE_DIR = self.saved_archive_dir + settings.SUBMIT_YANG_RFC_MODEL_DIR = self.saved_yang_rfc_model_dir + settings.SUBMIT_YANG_DRAFT_MODEL_DIR = self.saved_yang_draft_model_dir + settings.SUBMIT_YANG_IANA_MODEL_DIR = self.saved_yang_iana_model_dir + settings.SUBMIT_YANG_CATALOG_MODEL_DIR = self.saved_yang_catalog_model_dir def do_post_submission(self, rev, author=None, name=None, group=None, email=None, title=None, year=None): url = urlreverse('ietf.submit.views.api_submit')