Beispiel #1
0
def test_insert_subject(client, numSubjects):
  with app.app_context():
    # insertSubject(subjectCode, term, subjectType, subjectName, components, pillar, cohortnum, totalenrollment, sessionnum):
    numSubjects = len(Subjects.query.all())

    subjectCode = 50.999
    term = 5
    subjectType = "Core"
    subjectName = "Test Subject"
    components = "[]"
    pillar = 1
    cohortnum = 1
    totalenrollment = 1
    sessionnum = 1

    Subjects.insertSubject(subjectCode, term, subjectType, subjectName, components, pillar, cohortnum, totalenrollment, sessionnum)

    print("\n[INFO] Inserting new subject with following fields:")
    print("[INFO] Subject Code: {}".format(subjectCode))
    print("[INFO] Term: {}".format(term))
    print("[INFO] Subject Type: {}".format(subjectType))
    print("[INFO] Components: {}".format(components))
    print("[INFO] Pillar: {}".format(pillar))
    print("[INFO] Cohort No.: {}".format(cohortnum))
    print("[INFO] Total Enrollment: {}".format(totalenrollment))
    print("[INFO] Session No.: {}".format(sessionnum))

    new_numSubjects = len(Subjects.query.all())
    print("[INFO] Current no. of Subjects: {}".format(numSubjects))
    print("[INFO] No. of Subjects after insert: {}".format(new_numSubjects))
    subjects = Subjects.query.all()
    assert len(subjects) == int(numSubjects) + 1
Beispiel #2
0
def subjects():
    available_rooms = Rooms.query.all()
    room_list = [(-1,'No Preference')]
    for room in available_rooms:
        room_list.append((room.room_id, room.location))
    form = SubjectForm()
    
    if form.add_more_component.data:
        print("came here instead")
        form.component.append_entry(u'default value')
    for entry in form.component.entries:
        entry.classroom.choices = room_list

    if form.validate_on_submit():
        print("came here")
        if form.term_no.data == '-1' or form.pillar.data == '-1' or form.subject_type.data == '-1':
            print("Please choose an option for term, pillar and subject type")
        else:
            subjectname = form.subject_name.data
            subjectid = form.subject_id.data
            termno = dict(form.terms).get(form.term_no.data)
            subjecttype = dict(form.subject_types).get(form.subject_type.data)
            pillar = form.pillar.data
            cohort_num = form.cohort_num.data
            total_enrollment = form.total_enrollment.data
            session_nums = len(form.component.entries)
            components = []
            for each_entry in form.component.entries:
                temp  = {"duration":each_entry.data['duration'],"sessionType": int(each_entry.data['session']),"classroom":each_entry.data['classroom'], 'cohorts':[]}
                if int(each_entry.data['session']) == -1:
                    print("Please choose an option for session type")
                    return render_template('subjects.html',form=form)
                if int(each_entry.data['session']) == 1:
                    for i in range(cohort_num):
                        temp['cohorts'].append(i)
                components.append(temp)
                print(temp)
            Subjects.insertSubject(subjectid,termno,subjecttype,subjectname, str(components), pillar, cohort_num, total_enrollment, session_nums)
            return redirect(url_for('subjectsTable'))
            
        
    return render_template('subjects.html',form=form)