mac os enforced with mac. test about this. bugfix: remore renamed and
switched in meaning
This commit is contained in:
parent
bbd1e7ff6d
commit
20a38b5a82
4
TODO
4
TODO
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
* use new it support adress in evapp/settings.py
|
* use new it support adress in evapp/settings.py
|
||||||
|
|
||||||
* enforce Mac OS if Mac is choosen?
|
|
||||||
|
|
||||||
* better error handling with mail sending.
|
* better error handling with mail sending.
|
||||||
|
|
||||||
|
* test for complete run with all forms
|
||||||
|
|
|
@ -35,18 +35,25 @@ class WorkingForm(EvaForm):
|
||||||
|
|
||||||
def clean(self):
|
def clean(self):
|
||||||
data = self.cleaned_data
|
data = self.cleaned_data
|
||||||
if not data['remote'] and data['desk'] is None:
|
if data['works_in_gs'] and data['desk'] is None:
|
||||||
raise ValidationError('Wer nicht remote arbeitet braucht einen Schreibtisch!')
|
raise ValidationError('Wer nicht remote arbeitet braucht einen Schreibtisch!')
|
||||||
return data
|
return data
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Employee
|
model = Employee
|
||||||
fields = ['firstdate_employment', 'firstdate_presence', 'jobdescription_german',
|
fields = ['firstdate_employment', 'firstdate_presence', 'jobdescription_german',
|
||||||
'jobdescription_english', 'remote', 'desk',]
|
'jobdescription_english', 'works_in_gs', 'desk',]
|
||||||
widgets = {'firstdate_employment': DateInput(attrs={'type': 'date'}),
|
widgets = {'firstdate_employment': DateInput(attrs={'type': 'date'}),
|
||||||
'firstdate_presence': DateInput(attrs={'type': 'date'}),}
|
'firstdate_presence': DateInput(attrs={'type': 'date'}),}
|
||||||
|
|
||||||
class ITForm(EvaForm):
|
class ITForm(EvaForm):
|
||||||
|
|
||||||
|
def clean(self):
|
||||||
|
data = self.cleaned_data
|
||||||
|
if data['vendor'] == 'MAC' and data['os'] != 'MOS':
|
||||||
|
raise ValidationError('Ein MAC sollte Mac OS installiert haben')
|
||||||
|
return data
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Employee
|
model = Employee
|
||||||
fields = [
|
fields = [
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 3.1.4 on 2021-09-14 10:55
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('evapp', '0001_initial'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RenameField(
|
||||||
|
model_name='employee',
|
||||||
|
old_name='remote',
|
||||||
|
new_name='works_in_gs',
|
||||||
|
),
|
||||||
|
]
|
|
@ -56,7 +56,7 @@ class Employee(models.Model):
|
||||||
firstdate_presence = models.DateField(null=True, verbose_name="Erster Tag der Anwesenheit in der Geschäftsstelle")
|
firstdate_presence = models.DateField(null=True, verbose_name="Erster Tag der Anwesenheit in der Geschäftsstelle")
|
||||||
jobdescription_german = models.CharField(null=True, max_length=100, verbose_name="Stellenbezeichnung(deutsch)")
|
jobdescription_german = models.CharField(null=True, max_length=100, verbose_name="Stellenbezeichnung(deutsch)")
|
||||||
jobdescription_english = models.CharField(null=True, max_length=100, verbose_name="Job description(english)")
|
jobdescription_english = models.CharField(null=True, max_length=100, verbose_name="Job description(english)")
|
||||||
remote = models.BooleanField(verbose_name='Braucht Arbeitsplatz in der Geschäftsstelle?', default=True)
|
works_in_gs = models.BooleanField(verbose_name='Braucht Arbeitsplatz in der Geschäftsstelle?', default=True)
|
||||||
desk = models.CharField(max_length=100, null=True, blank=True, verbose_name="Wo soll der Arbeitsplatz sein?")
|
desk = models.CharField(max_length=100, null=True, blank=True, verbose_name="Wo soll der Arbeitsplatz sein?")
|
||||||
|
|
||||||
# IT related stuff
|
# IT related stuff
|
||||||
|
|
|
@ -13,7 +13,7 @@ MAILS = {
|
||||||
'MAIL': 'wmde-it@wikimedia.de',
|
'MAIL': 'wmde-it@wikimedia.de',
|
||||||
'DATA': [
|
'DATA': [
|
||||||
'laptop', 'os', 'comment', 'email', 'landline', 'lists', 'mobile',
|
'laptop', 'os', 'comment', 'email', 'landline', 'lists', 'mobile',
|
||||||
'department', 'accounts', 'language', 'screen', 'remote', 'desk',
|
'department', 'accounts', 'language', 'screen', 'works_in_gs', 'desk',
|
||||||
'keyboard',
|
'keyboard',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
@ -21,7 +21,7 @@ MAILS = {
|
||||||
'MAIL': 'office@wikimedia.de',
|
'MAIL': 'office@wikimedia.de',
|
||||||
'DATA': [
|
'DATA': [
|
||||||
'transponder', 'special', 'post_office_box', 'sim', 'sim2',
|
'transponder', 'special', 'post_office_box', 'sim', 'sim2',
|
||||||
'remote', 'desk',
|
'works_in_gs', 'desk',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
'KOMM': {
|
'KOMM': {
|
||||||
|
|
|
@ -32,5 +32,10 @@ class NoLoginTestCase(TestCase):
|
||||||
class ITFORMTestCase(TestCase):
|
class ITFORMTestCase(TestCase):
|
||||||
def test_mac(self):
|
def test_mac(self):
|
||||||
form = ITForm(data={"vendor": 'MAC', 'os': 'UBU'})
|
form = ITForm(data={"vendor": 'MAC', 'os': 'UBU'})
|
||||||
print (form.errors)
|
#print (form.errors)
|
||||||
self.assertEqual(form.errors['os'], ['A MAC should have Mac OS installed'])
|
self.assertEqual(form.non_field_errors(), ['Ein MAC sollte Mac OS installiert haben'])
|
||||||
|
|
||||||
|
def test_ubu(self):
|
||||||
|
form = ITForm(data={"vendor": 'STANDARD', 'os': 'UBU'})
|
||||||
|
#print (form.errors)
|
||||||
|
self.assertNotEqual(form.non_field_errors(), ['Ein MAC sollte Mac OS installiert haben'])
|
||||||
|
|
Loading…
Reference in New Issue