def reset_courses(self, courses: List['course.Course']) -> None:
        self.courses = courses

    def filter_courses(self,
                       desired_filter: 'courseFilter.CourseFilter',
                       degree: 'degree.Degree',
                       eq: bool = False) -> List['course.Course']:
        return list(
            filter(lambda x: desired_filter.accepts_course(x, degree, eq),
                   self.courses))


uni = MockUniversity()

t1 = term.Term(2019, 1)
t2 = term.Term(2019, 2)
t3 = term.Term(2019, 3)
t4 = term.Term(2020, 1)
t5 = term.Term(2020, 2)
t6 = term.Term(2020, 3)
t7 = term.Term(2021, 1)
t8 = term.Term(2021, 2)
t9 = term.Term(2021, 3)

faculty = 'SubjFaculty'


def test_one():
    # Make some courses
    # subj1001
from classes import uocReq
from classes import yearReq
from classes import orReq
from classes import course
from classes import courseFilter
from classes import specificCourseFilter
from classes import orFilter
from classes import andReq
from classes import minDegreeReq
from classes import degree
from classes import program
from classes import term
from classes import generator
from classes import courseEnrollment

t1 = term.Term(2019, 1)
t2 = term.Term(2019, 2)

faculty = 'SubjFaculty'

degree1 = degree.Degree('1', 'Bachelor of Testing', 2019, 3, faculty, [],
                        'BAT1')


def test_eq():
    subj1001 = course.Course('SUBJ', '1001', 'Subject1', 6, [t1, t2], faculty)
    subj1001_2 = course.Course('SUBJ', '1001', 'Subject1', 6, [t1, t2],
                               faculty)
    subj1002 = course.Course('SUBJ', '1002', 'Subject2', 6, [t1, t2], faculty)

    assert subj1001 == subj1001
Example #3
0
George Fidler (z5160384), Kevin Ni (z5025098)

test_enrollmentReq.py
Test the functions defined in enrollmentReq.py
'''

import pytest
from typing import List

from classes import degree
from classes import program
from classes import term
from classes import enrollmentReq

faculty = 'SubjFaculty'
t1 = term.Term(2019, 1)
degree1 = degree.Degree('1', 'Bachelor of Testing', 2019, 3, faculty, [],
                        'BAT1')
degree2 = degree.Degree('2', 'Bachelor of Testing2', 2019, 3, faculty, [],
                        'BAT2')
prog1 = program.Program(degree1, [], [])
prog2 = program.Program(degree2, [], [])
req = enrollmentReq.EnrollmentReq(degree1.num_code, degree1.name)


def test_fulfilled():
    assert req.fulfilled(prog1, t1)


def test_not_fulfilled():
    assert not req.fulfilled(prog2, t1)
Example #4
0
 def parse_terms(self, string: str, year: int) -> List['term.Term']:
     terms: List['term.Term'] = []
     for i in range(1, 4):
         if str(i) in string:
             terms.append(term.Term(year, i))
     return terms
                       eq: bool = True) -> List['course.Course']:
        return list(
            filter(lambda x: desired_filter.accepts_course(x, degree, eq),
                   self.courses))

    def find_course(self, code: str) -> Optional['course.Course']:
        for course in self.courses:
            if course.course_code == code:
                return course

        return None


uni = MockUniversity()

t1 = term.Term(2019, 1)
t2 = term.Term(2019, 2)
t3 = term.Term(2019, 3)
t4 = term.Term(2020, 1)
t5 = term.Term(2020, 2)
t6 = term.Term(2020, 3)

faculty = 'SubjFaculty'

# Make some courses
# subj1001
subj1001 = course.Course('SUBJ', '1001', 'Subject1', 6,
                         [t1, t2, t3, t4, t5, t6], faculty)

# subj1002, prereq subj1001
prereq1001 = subjectReq.SubjectReq(subj1001)