diff --git a/ietf/nomcom/test_data.py b/ietf/nomcom/test_data.py index 20397c00b..eb0469f8e 100644 --- a/ietf/nomcom/test_data.py +++ b/ietf/nomcom/test_data.py @@ -3,8 +3,11 @@ import os from django.contrib.auth.models import User from django.core.files import File +from django.core.files.storage import FileSystemStorage from django.conf import settings +import debug # pyflakes:ignore + from ietf.group.models import Group, ChangeStateGroupEvent from ietf.nomcom.models import NomCom, Position, Nominee from ietf.person.models import Email, Person @@ -106,6 +109,8 @@ def nomcom_test_data(): global nomcom_test_cert_file if not nomcom_test_cert_file: nomcom_test_cert_file, privatekey_file = generate_cert() + + nomcom.public_key.storage = storage=FileSystemStorage(location=settings.NOMCOM_PUBLIC_KEYS_DIR) nomcom.public_key.save('cert', File(open(nomcom_test_cert_file.name, 'r'))) # chair and member diff --git a/ietf/nomcom/tests.py b/ietf/nomcom/tests.py index 06827cca4..28470b722 100644 --- a/ietf/nomcom/tests.py +++ b/ietf/nomcom/tests.py @@ -1,13 +1,17 @@ # -*- coding: UTF-8-No-BOM -*- import tempfile import datetime +import os +import shutil +from pyquery import PyQuery from django.db import IntegrityError +from django.conf import settings from django.core.urlresolvers import reverse from django.core.files import File from django.contrib.auth.models import User -from pyquery import PyQuery +import debug # pyflakes:ignore from ietf.utils.test_utils import login_testing_unauthorized, TestCase from ietf.utils.mail import outbox @@ -46,6 +50,11 @@ class NomcomViewsTest(TestCase): return response def setUp(self): + self.nomcom_public_keys_dir = os.path.abspath("tmp-nomcom-public-keys-dir") + if not os.path.exists(self.nomcom_public_keys_dir): + os.mkdir(self.nomcom_public_keys_dir) + settings.NOMCOM_PUBLIC_KEYS_DIR = self.nomcom_public_keys_dir + nomcom_test_data() self.cert_file, self.privatekey_file = get_cert_files() self.year = NOMCOM_YEAR @@ -67,6 +76,9 @@ class NomcomViewsTest(TestCase): self.public_feedback_url = reverse('nomcom_public_feedback', kwargs={'year': self.year}) self.public_nominate_url = reverse('nomcom_public_nominate', kwargs={'year': self.year}) + def tearDown(self): + shutil.rmtree(self.nomcom_public_keys_dir) + def access_member_url(self, url): login_testing_unauthorized(self, COMMUNITY_USER, url) login_testing_unauthorized(self, CHAIR_USER, url) @@ -633,9 +645,17 @@ class NomineePositionStateSaveTest(TestCase): perma_fixtures = ['nomcom_templates'] def setUp(self): + self.nomcom_public_keys_dir = os.path.abspath("tmp-nomcom-public-keys-dir") + if not os.path.exists(self.nomcom_public_keys_dir): + os.mkdir(self.nomcom_public_keys_dir) + settings.NOMCOM_PUBLIC_KEYS_DIR = self.nomcom_public_keys_dir + nomcom_test_data() self.nominee = Nominee.objects.get(email__person__user__username=COMMUNITY_USER) + def tearDown(self): + shutil.rmtree(self.nomcom_public_keys_dir) + def test_state_autoset(self): """Verify state is autoset correctly""" position = Position.objects.get(name='APP') @@ -665,9 +685,17 @@ class FeedbackTest(TestCase): perma_fixtures = ['nomcom_templates'] def setUp(self): + self.nomcom_public_keys_dir = os.path.abspath("tmp-nomcom-public-keys-dir") + if not os.path.exists(self.nomcom_public_keys_dir): + os.mkdir(self.nomcom_public_keys_dir) + settings.NOMCOM_PUBLIC_KEYS_DIR = self.nomcom_public_keys_dir + nomcom_test_data() self.cert_file, self.privatekey_file = get_cert_files() + def tearDown(self): + shutil.rmtree(self.nomcom_public_keys_dir) + def test_encrypted_comments(self): nominee = Nominee.objects.get(email__person__user__username=COMMUNITY_USER) @@ -694,6 +722,11 @@ class ReminderTest(TestCase): perma_fixtures = ['nomcom_templates'] def setUp(self): + self.nomcom_public_keys_dir = os.path.abspath("tmp-nomcom-public-keys-dir") + if not os.path.exists(self.nomcom_public_keys_dir): + os.mkdir(self.nomcom_public_keys_dir) + settings.NOMCOM_PUBLIC_KEYS_DIR = self.nomcom_public_keys_dir + nomcom_test_data() self.nomcom = get_nomcom_by_year(NOMCOM_YEAR) self.cert_file, self.privatekey_file = get_cert_files() @@ -732,6 +765,9 @@ class ReminderTest(TestCase): feedback.positions.add(gen) feedback.nominees.add(n) + def tearDown(self): + shutil.rmtree(self.nomcom_public_keys_dir) + def test_is_time_to_send(self): self.nomcom.reminder_interval = 4 today = datetime.date.today()