示例#1
0
def create_form_data():
    unit = Unit.objects.get(slug='cmpt')
    fg = FormGroup(name="Admins", unit=unit)
    fg.save()
    FormGroupMember(formgroup=fg, person=Person.objects.get(userid='ggbaker')).save()
    FormGroupMember(formgroup=fg, person=Person.objects.get(userid='classam')).save()

    f1 = Form(title="Simple Form", owner=fg, unit=fg.unit, description="Simple test form.", initiators='ANY')
    f1.save()
    s1 = Sheet(form=f1, title="Initial sheet")
    s1.save()
    fld1 = Field(label='Favorite Color', sheet=s1, fieldtype='SMTX', config={"min_length": 1, "required": True, "max_length": "100", 'label': 'Favorite Color', "help_text":''})
    fld1.save()
    fld2 = Field(label='Reason', sheet=s1, fieldtype='MDTX', config={"min_length": 10, "required": True, "max_length": "400", 'label': 'Reason', "help_text":'Why?'})
    fld2.save()
    fld3 = Field(label='Second Favorite Color', sheet=s1, fieldtype='SMTX', config={"min_length": 1, "required": False, "max_length": "100", 'label': 'Second Favorite Color', "help_text":''})
    fld3.save()

    f2 = Form(title="Appeal Form", owner=fg, unit=fg.unit, description="An all-purpose appeal form to appeal things with", initiators='LOG', advisor_visible=True)
    f2.save()
    s2 = Sheet(form=f2, title="Student Appeal")
    s2.save()
    fld4 = Field(label='Appeal', sheet=s2, fieldtype='SMTX', config={"min_length": 1, "required": True, "max_length": "100", 'label': 'Appeal', "help_text":'What do you want to appeal?'})
    fld4.save()
    fld4 = Field(label='Reasons', sheet=s2, fieldtype='LGTX', config={"min_length": 1, "required": True, "max_length": "1000", 'label': 'Reasons', "help_text":'Why do you think you deserve it?'})
    fld4.save()
    fld5 = Field(label='Prediction', sheet=s2, fieldtype='RADI', config={ "required": False, 'label': 'Prediction', "help_text":"Do you think it's likely this will be approved?", "choice_1": "Yes", "choice_2": "No", "choice_3": "Huh?"})
    fld5.save()
    s3 = Sheet(form=f2, title="Decision", can_view="ALL")
    s3.save()
    fld5 = Field(label='Decision', sheet=s3, fieldtype='RADI', config={ "required": True, 'label': 'Decision', "help_text":"Do you approve this appeal?", "choice_1": "Yes", "choice_2": "No", "choice_3": "See comments"})
    fld5.save()
    fld6 = Field(label='Comments', sheet=s3, fieldtype='MDTX', config={"min_length": 1, "required": False, "max_length": "1000", 'label': 'Comments', "help_text":'Any additional comments'})
    fld6.save()
示例#2
0
文件: tests.py 项目: avacariu/coursys
    def test_coherence_mixin(self):
        """
        Make sure .active and .original are getting manipulated correctly.
        """
        # create new form
        form = Form(title="Test Form", unit=self.unit, owner=FormGroup.objects.all()[0])
        form.save()
        orig_form_id = form.id
        self.assertEqual(form.active, True)
        self.assertEqual(form.original_id, orig_form_id)

        # make a clone and save
        form = form.clone()
        form.save()

        # check the state of the forms
        self.assertEqual(form.active, True)
        self.assertEqual(form.original_id, orig_form_id)
        self.assertNotEqual(form.id, orig_form_id)
        orig_form = Form.objects.get(id=orig_form_id)
        self.assertEqual(orig_form.original_id, orig_form_id)
        self.assertEqual(orig_form.active, False)

        # create a sheet
        sheet = Sheet(form=form, title="Test Sheet", is_initial=True)
        sheet.save()
        orig_sheet_id = sheet.id
        self.assertEqual(sheet.active, True)
        self.assertEqual(sheet.original_id, orig_sheet_id)
        # fake a same-original sheet on another version of the form
        sheetX = Sheet(form=orig_form, title="Test Sheet", is_initial=True, original=sheet.original)
        sheetX.save()

        # make a clone and save
        sheet = sheet.clone()
        sheet.save()

        # check the state of the forms
        self.assertEqual(sheet.active, True)
        self.assertEqual(sheet.original_id, orig_sheet_id)
        self.assertNotEqual(sheet.id, orig_sheet_id)
        orig_sheet = Sheet.objects.get(id=orig_sheet_id)
        self.assertEqual(orig_sheet.original_id, orig_sheet_id)
        self.assertEqual(orig_sheet.active, False)
        self.assertEqual(sheetX.active, True)  # cousin shouldn't be deactivated, since it's on a different version of the form
示例#3
0
def create_form_data():
    unit = Unit.objects.get(slug='cmpt')
    fg = FormGroup(name="Admins", unit=unit)
    fg.save()
    FormGroupMember(formgroup=fg,
                    person=Person.objects.get(userid='ggbaker')).save()
    FormGroupMember(formgroup=fg,
                    person=Person.objects.get(userid='classam')).save()

    f1 = Form(title="Simple Form",
              owner=fg,
              unit=fg.unit,
              description="Simple test form.",
              initiators='ANY')
    f1.save()
    s1 = Sheet(form=f1, title="Initial sheet")
    s1.save()
    fld1 = Field(label='Favorite Color',
                 sheet=s1,
                 fieldtype='SMTX',
                 config={
                     "min_length": 1,
                     "required": True,
                     "max_length": "100",
                     'label': 'Favorite Color',
                     "help_text": ''
                 })
    fld1.save()
    fld2 = Field(label='Reason',
                 sheet=s1,
                 fieldtype='MDTX',
                 config={
                     "min_length": 10,
                     "required": True,
                     "max_length": "400",
                     'label': 'Reason',
                     "help_text": 'Why?'
                 })
    fld2.save()
    fld3 = Field(label='Second Favorite Color',
                 sheet=s1,
                 fieldtype='SMTX',
                 config={
                     "min_length": 1,
                     "required": False,
                     "max_length": "100",
                     'label': 'Second Favorite Color',
                     "help_text": ''
                 })
    fld3.save()

    f2 = Form(title="Appeal Form",
              owner=fg,
              unit=fg.unit,
              description="An all-purpose appeal form to appeal things with",
              initiators='LOG',
              advisor_visible=True)
    f2.save()
    s2 = Sheet(form=f2, title="Student Appeal")
    s2.save()
    fld4 = Field(label='Appeal',
                 sheet=s2,
                 fieldtype='SMTX',
                 config={
                     "min_length": 1,
                     "required": True,
                     "max_length": "100",
                     'label': 'Appeal',
                     "help_text": 'What do you want to appeal?'
                 })
    fld4.save()
    fld4 = Field(label='Reasons',
                 sheet=s2,
                 fieldtype='LGTX',
                 config={
                     "min_length": 1,
                     "required": True,
                     "max_length": "1000",
                     'label': 'Reasons',
                     "help_text": 'Why do you think you deserve it?'
                 })
    fld4.save()
    fld5 = Field(label='Prediction',
                 sheet=s2,
                 fieldtype='RADI',
                 config={
                     "required": False,
                     'label': 'Prediction',
                     "help_text":
                     "Do you think it's likely this will be approved?",
                     "choice_1": "Yes",
                     "choice_2": "No",
                     "choice_3": "Huh?"
                 })
    fld5.save()
    s3 = Sheet(form=f2, title="Decision", can_view="ALL")
    s3.save()
    fld5 = Field(label='Decision',
                 sheet=s3,
                 fieldtype='RADI',
                 config={
                     "required": True,
                     'label': 'Decision',
                     "help_text": "Do you approve this appeal?",
                     "choice_1": "Yes",
                     "choice_2": "No",
                     "choice_3": "See comments"
                 })
    fld5.save()
    fld6 = Field(label='Comments',
                 sheet=s3,
                 fieldtype='MDTX',
                 config={
                     "min_length": 1,
                     "required": False,
                     "max_length": "1000",
                     'label': 'Comments',
                     "help_text": 'Any additional comments'
                 })
    fld6.save()
示例#4
0
文件: tests.py 项目: csvenja/coursys
    def test_coherence_mixin(self):
        """
        Make sure .active and .original are getting manipulated correctly.
        """
        # create new form
        form = Form(title="Test Form",
                    unit=self.unit,
                    owner=FormGroup.objects.all()[0])
        form.save()
        orig_form_id = form.id
        self.assertEqual(form.active, True)
        self.assertEqual(form.original_id, orig_form_id)

        # make a clone and save
        form = form.clone()
        form.save()

        # check the state of the forms
        self.assertEqual(form.active, True)
        self.assertEqual(form.original_id, orig_form_id)
        self.assertNotEqual(form.id, orig_form_id)
        orig_form = Form.objects.get(id=orig_form_id)
        self.assertEqual(orig_form.original_id, orig_form_id)
        self.assertEqual(orig_form.active, False)

        # create a sheet
        sheet = Sheet(form=form, title="Test Sheet", is_initial=True)
        sheet.save()
        orig_sheet_id = sheet.id
        self.assertEqual(sheet.active, True)
        self.assertEqual(sheet.original_id, orig_sheet_id)
        # fake a same-original sheet on another version of the form
        sheetX = Sheet(form=orig_form,
                       title="Test Sheet",
                       is_initial=True,
                       original=sheet.original)
        sheetX.save()

        # make a clone and save
        sheet = sheet.clone()
        sheet.save()

        # check the state of the forms
        self.assertEqual(sheet.active, True)
        self.assertEqual(sheet.original_id, orig_sheet_id)
        self.assertNotEqual(sheet.id, orig_sheet_id)
        orig_sheet = Sheet.objects.get(id=orig_sheet_id)
        self.assertEqual(orig_sheet.original_id, orig_sheet_id)
        self.assertEqual(orig_sheet.active, False)
        self.assertEqual(
            sheetX.active, True
        )  # cousin shouldn't be deactivated, since it's on a different version of the form