| app/__init__.py | new_execute | 7 | 5 | 0 | 29% | 
            
                | app/__init__.py | inject_environment | 1 | 1 | 0 | 0% | 
            
                | app/__init__.py | queryCount | 2 | 2 | 0 | 0% | 
            
                | app/__init__.py | load_user | 6 | 6 | 0 | 0% | 
            
                | app/__init__.py | load_currentTerm | 6 | 6 | 0 | 0% | 
            
                | app/__init__.py | load_currentDateTime | 1 | 1 | 0 | 0% | 
            
                | app/__init__.py | load_visibleAccordion | 2 | 2 | 0 | 0% | 
            
                | app/__init__.py | handle_bad_request | 1 | 1 | 0 | 0% | 
            
                | app/__init__.py | handle_bad_request | 1 | 1 | 0 | 0% | 
            
                | app/__init__.py | handle_bad_request | 1 | 1 | 0 | 0% | 
            
                | app/__init__.py | (no function) | 53 | 0 | 0 | 100% | 
            
                | app/controllers/__init__.py | (no function) | 2 | 0 | 0 | 100% | 
            
                | app/controllers/admin/__init__.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/controllers/admin/graduationManagement.py | graduationManagement | 4 | 4 | 0 | 0% | 
            
                | app/controllers/admin/graduationManagement.py | setGraduationStatus | 5 | 5 | 0 | 0% | 
            
                | app/controllers/admin/graduationManagement.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/controllers/admin/minor.py | manageMinor | 15 | 15 | 0 | 0% | 
            
                | app/controllers/admin/minor.py | downloadSpreadsheet | 4 | 4 | 0 | 0% | 
            
                | app/controllers/admin/minor.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/controllers/admin/routes.py | reports | 3 | 3 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | downloadFile | 3 | 3 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | switchUser | 6 | 6 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | templateSelect | 5 | 5 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | createEvent | 74 | 74 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | rsvpLogDisplay | 5 | 5 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | renewEvent | 29 | 29 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | eventDisplay | 72 | 72 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | cancelRoute | 8 | 8 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | undoBackgroundCheck | 9 | 9 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | undoEvent | 19 | 19 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | deleteRoute | 8 | 8 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | deleteEventAndAllFollowingRoute | 7 | 7 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | deleteAllEventsInSeriesRoute | 7 | 7 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | addRepeatingEvents | 2 | 2 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | userProfile | 7 | 7 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | studentSearchPage | 3 | 3 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | activityLogs | 4 | 4 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | deleteEventFile | 4 | 4 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | addCourseFile | 6 | 6 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | manageServiceLearningCourses | 13 | 13 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | getSidebarInformation | 3 | 3 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | removeFromSession | 5 | 5 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | alterImportedCourse | 20 | 20 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | manageBonner | 3 | 3 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | updatecohort | 19 | 19 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | getBonnerXls | 4 | 4 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | saveRequirements | 4 | 4 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | displayEventFile | 5 | 5 | 0 | 0% | 
            
                | app/controllers/admin/routes.py | (no function) | 100 | 0 | 0 | 100% | 
            
                | app/controllers/admin/userManagement.py | manageUsers | 31 | 31 | 0 | 0% | 
            
                | app/controllers/admin/userManagement.py | deleteProgramFile | 3 | 3 | 0 | 0% | 
            
                | app/controllers/admin/userManagement.py | updateProgramInfo | 11 | 11 | 0 | 0% | 
            
                | app/controllers/admin/userManagement.py | getProgramInfo | 14 | 14 | 0 | 0% | 
            
                | app/controllers/admin/userManagement.py | userManagement | 10 | 10 | 0 | 0% | 
            
                | app/controllers/admin/userManagement.py | changeTerm | 4 | 4 | 0 | 0% | 
            
                | app/controllers/admin/userManagement.py | addNewTerm | 2 | 2 | 0 | 0% | 
            
                | app/controllers/admin/userManagement.py | (no function) | 30 | 0 | 0 | 100% | 
            
                | app/controllers/admin/volunteers.py | getVolunteers | 1 | 1 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | manageVolunteersPage | 23 | 23 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | volunteerDetailsPage | 12 | 12 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | addVolunteer | 28 | 28 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | rsvpFromWaitlist | 8 | 8 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | isVolunteerBanned | 1 | 1 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | removeVolunteerFromEvent | 13 | 13 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | addBackgroundCheck | 8 | 8 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | deleteBackgroundCheck | 7 | 7 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | updateProgramManager | 8 | 8 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | updatePhone | 3 | 3 | 0 | 0% | 
            
                | app/controllers/admin/volunteers.py | (no function) | 41 | 0 | 0 | 100% | 
            
                | app/controllers/events/__init__.py | (no function) | 3 | 0 | 0 | 100% | 
            
                | app/controllers/events/email.py | email | 12 | 12 | 0 | 0% | 
            
                | app/controllers/events/email.py | retrieveSenderList | 11 | 11 | 0 | 0% | 
            
                | app/controllers/events/email.py | retrieveEmailTemplate | 5 | 5 | 0 | 0% | 
            
                | app/controllers/events/email.py | retrievePlaceholderList | 1 | 1 | 0 | 0% | 
            
                | app/controllers/events/email.py | fetchEmailLogData | 4 | 4 | 0 | 0% | 
            
                | app/controllers/events/email.py | getProgramSender | 2 | 2 | 0 | 0% | 
            
                | app/controllers/events/email.py | (no function) | 20 | 0 | 0 | 100% | 
            
                | app/controllers/events/routes.py | loadKiosk | 2 | 2 | 0 | 0% | 
            
                | app/controllers/events/routes.py | kioskSignin | 18 | 18 | 0 | 0% | 
            
                | app/controllers/events/routes.py | (no function) | 16 | 0 | 0 | 100% | 
            
                | app/controllers/main/__init__.py | (no function) | 3 | 0 | 0 | 100% | 
            
                | app/controllers/main/routes.py | redirectToLogout | 1 | 1 | 0 | 0% | 
            
                | app/controllers/main/routes.py | landingPage | 4 | 4 | 0 | 0% | 
            
                | app/controllers/main/routes.py | goToEventsList | 1 | 1 | 0 | 0% | 
            
                | app/controllers/main/routes.py | events | 42 | 42 | 0 | 0% | 
            
                | app/controllers/main/routes.py | viewUsersProfile | 40 | 40 | 0 | 0% | 
            
                | app/controllers/main/routes.py | emergencyContactInfo | 18 | 18 | 0 | 0% | 
            
                | app/controllers/main/routes.py | insuranceInfo | 16 | 16 | 0 | 0% | 
            
                | app/controllers/main/routes.py | travelForm | 8 | 8 | 0 | 0% | 
            
                | app/controllers/main/routes.py | eventTravelForm | 20 | 20 | 0 | 0% | 
            
                | app/controllers/main/routes.py | addNote | 9 | 9 | 0 | 0% | 
            
                | app/controllers/main/routes.py | deleteNote | 7 | 7 | 0 | 0% | 
            
                | app/controllers/main/routes.py | ban | 13 | 13 | 0 | 0% | 
            
                | app/controllers/main/routes.py | unban | 12 | 12 | 0 | 0% | 
            
                | app/controllers/main/routes.py | addInterest | 9 | 9 | 0 | 0% | 
            
                | app/controllers/main/routes.py | removeInterest | 9 | 9 | 0 | 0% | 
            
                | app/controllers/main/routes.py | volunteerRegister | 20 | 20 | 0 | 0% | 
            
                | app/controllers/main/routes.py | RemoveRSVP | 11 | 11 | 0 | 0% | 
            
                | app/controllers/main/routes.py | serviceTranscript | 10 | 10 | 0 | 0% | 
            
                | app/controllers/main/routes.py | updateTranscript | 14 | 14 | 0 | 0% | 
            
                | app/controllers/main/routes.py | searchUser | 11 | 11 | 0 | 0% | 
            
                | app/controllers/main/routes.py | contributors | 1 | 1 | 0 | 0% | 
            
                | app/controllers/main/routes.py | getDietInfo | 10 | 10 | 0 | 0% | 
            
                | app/controllers/main/routes.py | indicateMinorInterest | 6 | 6 | 0 | 0% | 
            
                | app/controllers/main/routes.py | updateMinorDeclaration | 7 | 7 | 0 | 0% | 
            
                | app/controllers/main/routes.py | (no function) | 88 | 0 | 0 | 100% | 
            
                | app/controllers/minor/__init__.py | (no function) | 3 | 0 | 0 | 100% | 
            
                | app/controllers/minor/routes.py | viewCceMinor | 5 | 5 | 0 | 0% | 
            
                | app/controllers/minor/routes.py | requestOtherEngagement | 10 | 10 | 0 | 0% | 
            
                | app/controllers/minor/routes.py | requestSummerExperience | 7 | 7 | 0 | 0% | 
            
                | app/controllers/minor/routes.py | getEngagementInformation | 4 | 4 | 0 | 0% | 
            
                | app/controllers/minor/routes.py | withdrawProposal | 9 | 9 | 0 | 0% | 
            
                | app/controllers/minor/routes.py | returnMinorSpreadsheet | 2 | 2 | 0 | 0% | 
            
                | app/controllers/minor/routes.py | modifyCommunityEngagement | 8 | 8 | 0 | 0% | 
            
                | app/controllers/minor/routes.py | (no function) | 23 | 0 | 0 | 100% | 
            
                | app/controllers/serviceLearning/__init__.py | (no function) | 3 | 0 | 0 | 100% | 
            
                | app/controllers/serviceLearning/routes.py | serviceCourseManagement | 11 | 11 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | slcEditProposal | 19 | 19 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | slcCreateCourse | 2 | 2 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | slcCancelProposal | 6 | 6 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | slcExitView | 3 | 3 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | slcSaveContinue | 11 | 11 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | slcCreateOrEdit | 9 | 9 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | approveCourse | 11 | 11 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | unapproveCourse | 11 | 11 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | updateInstructorPhone | 3 | 3 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | withdrawCourse | 9 | 9 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | reviewProposal | 4 | 4 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | renewCourse | 13 | 13 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | printCourse | 16 | 16 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | uploadCourseFile | 8 | 8 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | deleteCourseFile | 4 | 4 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | downloadApprovedCourses | 10 | 10 | 0 | 0% | 
            
                | app/controllers/serviceLearning/routes.py | (no function) | 56 | 0 | 0 | 100% | 
            
                | app/logic/bonner.py | makeBonnerXls | 52 | 52 | 0 | 0% | 
            
                | app/logic/bonner.py | getBonnerCohorts | 9 | 0 | 0 | 100% | 
            
                | app/logic/bonner.py | rsvpForBonnerCohort | 1 | 0 | 0 | 100% | 
            
                | app/logic/bonner.py | addBonnerCohortToRsvpLog | 4 | 0 | 0 | 100% | 
            
                | app/logic/bonner.py | (no function) | 19 | 0 | 0 | 100% | 
            
                | app/logic/celtsLabor.py | getCeltsLaborFromLsf | 10 | 10 | 0 | 0% | 
            
                | app/logic/celtsLabor.py | updateCeltsLaborFromLsf | 9 | 2 | 0 | 78% | 
            
                | app/logic/celtsLabor.py | collapsePositions | 4 | 0 | 0 | 100% | 
            
                | app/logic/celtsLabor.py | refreshCeltsLaborRecords | 16 | 3 | 0 | 81% | 
            
                | app/logic/celtsLabor.py | getCeltsLaborHistory | 5 | 0 | 0 | 100% | 
            
                | app/logic/celtsLabor.py | (no function) | 13 | 0 | 0 | 100% | 
            
                | app/logic/certification.py | getCertRequirementsWithCompletion | 1 | 0 | 0 | 100% | 
            
                | app/logic/certification.py | getCertRequirements | 20 | 0 | 0 | 100% | 
            
                | app/logic/certification.py | updateCertRequirements | 16 | 0 | 0 | 100% | 
            
                | app/logic/certification.py | updateCertRequirementForEvent | 3 | 0 | 0 | 100% | 
            
                | app/logic/certification.py | (no function) | 9 | 0 | 0 | 100% | 
            
                | app/logic/config.py | deep_update | 10 | 0 | 0 | 100% | 
            
                | app/logic/config.py | load_config_files | 3 | 0 | 0 | 100% | 
            
                | app/logic/config.py | update_config_from_yaml | 5 | 2 | 0 | 60% | 
            
                | app/logic/config.py | (no function) | 5 | 0 | 0 | 100% | 
            
                | app/logic/createLogs.py | createRsvpLog | 2 | 0 | 0 | 100% | 
            
                | app/logic/createLogs.py | createActivityLog | 2 | 0 | 0 | 100% | 
            
                | app/logic/createLogs.py | (no function) | 6 | 0 | 0 | 100% | 
            
                | app/logic/downloadFile.py | fileMaker.__init__ | 6 | 0 | 0 | 100% | 
            
                | app/logic/downloadFile.py | fileMaker.makeFile | 14 | 4 | 0 | 71% | 
            
                | app/logic/downloadFile.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.__init__ | 18 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.process_data | 19 | 1 | 0 | 95% | 
            
                | app/logic/emailHandler.py | EmailHandler.getSenderInfo | 13 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.update_sender_config | 1 | 1 | 0 | 0% | 
            
                | app/logic/emailHandler.py | EmailHandler.retrieve_recipients | 11 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.replaceDynamicPlaceholders | 3 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.retrieve_and_modify_email_template | 5 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.getAttachmentFullPath | 11 | 11 | 0 | 0% | 
            
                | app/logic/emailHandler.py | EmailHandler.saveAttachment | 8 | 6 | 0 | 25% | 
            
                | app/logic/emailHandler.py | EmailHandler.store_sent_email | 5 | 1 | 0 | 80% | 
            
                | app/logic/emailHandler.py | EmailHandler.build_email | 4 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.send_email | 17 | 5 | 0 | 71% | 
            
                | app/logic/emailHandler.py | EmailHandler.update_email_template | 7 | 3 | 0 | 57% | 
            
                | app/logic/emailHandler.py | EmailHandler.retrieve_last_email | 5 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | EmailHandler.retrievePlaceholderList | 2 | 2 | 0 | 0% | 
            
                | app/logic/emailHandler.py | EmailHandler.replaceStaticPlaceholders | 3 | 0 | 0 | 100% | 
            
                | app/logic/emailHandler.py | (no function) | 34 | 0 | 0 | 100% | 
            
                | app/logic/events.py | cancelEvent | 6 | 0 | 0 | 100% | 
            
                | app/logic/events.py | deleteEvent | 18 | 1 | 0 | 94% | 
            
                | app/logic/events.py | deleteEventAndAllFollowing | 8 | 0 | 0 | 100% | 
            
                | app/logic/events.py | deleteAllEventsInSeries | 8 | 6 | 0 | 25% | 
            
                | app/logic/events.py | attemptSaveMultipleOfferings | 20 | 0 | 0 | 100% | 
            
                | app/logic/events.py | attemptSaveEvent | 12 | 4 | 0 | 67% | 
            
                | app/logic/events.py | saveEventToDb | 18 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getVolunteerOpportunities | 5 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getEngagementEvents | 2 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getUpcomingVolunteerOpportunitiesCount | 5 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getTrainingEvents | 5 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getBonnerEvents | 2 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getCeltsLabor | 2 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getUpcomingEventsForUser | 15 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getParticipatedEventsForUser | 5 | 0 | 0 | 100% | 
            
                | app/logic/events.py | validateNewEventData | 18 | 3 | 0 | 83% | 
            
                | app/logic/events.py | calculateNewSeriesId | 4 | 1 | 0 | 75% | 
            
                | app/logic/events.py | getPreviousSeriesEventData | 2 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getRepeatingEventsData | 1 | 0 | 0 | 100% | 
            
                | app/logic/events.py | preprocessEventData | 34 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getTomorrowsEvents | 3 | 0 | 0 | 100% | 
            
                | app/logic/events.py | addEventView | 2 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getEventRsvpCountsForTerm | 3 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getEventRsvpCount | 1 | 0 | 0 | 100% | 
            
                | app/logic/events.py | getCountdownToEvent | 42 | 1 | 0 | 98% | 
            
                | app/logic/events.py | copyRsvpToNewEvent | 7 | 0 | 0 | 100% | 
            
                | app/logic/events.py | inviteCohortsToEvent | 15 | 3 | 0 | 80% | 
            
                | app/logic/events.py | updateEventCohorts | 17 | 3 | 0 | 82% | 
            
                | app/logic/events.py | (no function) | 53 | 0 | 0 | 100% | 
            
                | app/logic/fileHandler.py | FileHandler.__init__ | 16 | 1 | 0 | 94% | 
            
                | app/logic/fileHandler.py | FileHandler.makeDirectory | 7 | 2 | 0 | 71% | 
            
                | app/logic/fileHandler.py | FileHandler.getFileFullPath | 8 | 4 | 0 | 50% | 
            
                | app/logic/fileHandler.py | FileHandler.saveFiles | 37 | 11 | 0 | 70% | 
            
                | app/logic/fileHandler.py | FileHandler.retrievePath | 4 | 0 | 0 | 100% | 
            
                | app/logic/fileHandler.py | FileHandler.deleteFile | 5 | 0 | 0 | 100% | 
            
                | app/logic/fileHandler.py | FileHandler.changeDisplay | 4 | 0 | 0 | 100% | 
            
                | app/logic/fileHandler.py | (no function) | 15 | 0 | 0 | 100% | 
            
                | app/logic/graduationManagement.py | getGraduationManagementUsers | 7 | 0 | 0 | 100% | 
            
                | app/logic/graduationManagement.py | setGraduatedStatus | 3 | 0 | 0 | 100% | 
            
                | app/logic/graduationManagement.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/logic/landingPage.py | getManagerProgramDict | 18 | 2 | 0 | 89% | 
            
                | app/logic/landingPage.py | getActiveEventTab | 6 | 0 | 0 | 100% | 
            
                | app/logic/landingPage.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/logic/loginManager.py | logout | 7 | 7 | 0 | 0% | 
            
                | app/logic/loginManager.py | getUsernameFromEnvironment | 10 | 10 | 0 | 0% | 
            
                | app/logic/loginManager.py | getLoginUser | 9 | 9 | 0 | 0% | 
            
                | app/logic/loginManager.py | getCurrentTerm | 1 | 1 | 0 | 0% | 
            
                | app/logic/loginManager.py | (no function) | 9 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | createSummerExperience | 7 | 3 | 0 | 57% | 
            
                | app/logic/minor.py | getCCEMinorProposals | 5 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | getEngagementTotal | 1 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | getMinorInterest | 3 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | getMinorProgress | 4 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | getMinorSpreadsheet | 23 | 23 | 0 | 0% | 
            
                | app/logic/minor.py | toggleMinorInterest | 10 | 4 | 0 | 60% | 
            
                | app/logic/minor.py | declareMinorInterest | 8 | 3 | 0 | 62% | 
            
                | app/logic/minor.py | getDeclaredMinorStudents | 3 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | getCourseInformation | 4 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | getProgramEngagementHistory | 8 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | setCommunityEngagementForUser | 11 | 11 | 0 | 0% | 
            
                | app/logic/minor.py | getCommunityEngagementByTerm | 10 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | createOtherEngagementRequest | 3 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | saveSummerExperience | 6 | 6 | 0 | 0% | 
            
                | app/logic/minor.py | getSummerExperience | 4 | 4 | 0 | 0% | 
            
                | app/logic/minor.py | removeSummerExperience | 2 | 2 | 0 | 0% | 
            
                | app/logic/minor.py | removeProposal | 6 | 0 | 0 | 100% | 
            
                | app/logic/minor.py | (no function) | 41 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | trainedParticipants | 5 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | addBnumberAsParticipant | 14 | 6 | 0 | 57% | 
            
                | app/logic/participants.py | checkUserRsvp | 1 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | checkUserVolunteer | 1 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | addPersonToEvent | 21 | 4 | 0 | 81% | 
            
                | app/logic/participants.py | unattendedRequiredEvents | 10 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | getEventParticipants | 2 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | getParticipationStatusForTrainings | 16 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | sortParticipantsByStatus | 10 | 0 | 0 | 100% | 
            
                | app/logic/participants.py | (no function) | 23 | 0 | 0 | 100% | 
            
                | app/logic/searchUsers.py | searchUsers | 19 | 1 | 0 | 95% | 
            
                | app/logic/searchUsers.py | (no function) | 3 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | getSLProposalInfoForUser | 7 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | createCourseDisplayName | 8 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | saveCourseParticipantsToDatabase | 28 | 17 | 0 | 39% | 
            
                | app/logic/serviceLearningCourses.py | unapprovedCourses | 2 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | approvedCourses | 2 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | getImportedCourses | 2 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | getInstructorCourses | 6 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | renewProposal | 14 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | withdrawProposal | 8 | 3 | 0 | 62% | 
            
                | app/logic/serviceLearningCourses.py | deleteCourseObject | 8 | 0 | 0 | 100% | 
            
                | app/logic/serviceLearningCourses.py | createCourse | 4 | 4 | 0 | 0% | 
            
                | app/logic/serviceLearningCourses.py | updateCourse | 21 | 6 | 0 | 71% | 
            
                | app/logic/serviceLearningCourses.py | editImportedCourses | 17 | 4 | 0 | 76% | 
            
                | app/logic/serviceLearningCourses.py | parseUploadedFile | 57 | 9 | 0 | 84% | 
            
                | app/logic/serviceLearningCourses.py | (no function) | 35 | 0 | 0 | 100% | 
            
                | app/logic/term.py | addNextTerm | 15 | 0 | 0 | 100% | 
            
                | app/logic/term.py | addPastTerm | 13 | 1 | 0 | 92% | 
            
                | app/logic/term.py | changeCurrentTerm | 8 | 8 | 0 | 0% | 
            
                | app/logic/term.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/logic/transcript.py | getProgramTranscript | 8 | 0 | 0 | 100% | 
            
                | app/logic/transcript.py | getSlCourseTranscript | 2 | 0 | 0 | 100% | 
            
                | app/logic/transcript.py | getTotalHours | 6 | 0 | 0 | 100% | 
            
                | app/logic/transcript.py | getStartYear | 4 | 0 | 0 | 100% | 
            
                | app/logic/transcript.py | (no function) | 15 | 0 | 0 | 100% | 
            
                | app/logic/userManagement.py | addCeltsAdmin | 4 | 0 | 0 | 100% | 
            
                | app/logic/userManagement.py | addCeltsStudentStaff | 4 | 0 | 0 | 100% | 
            
                | app/logic/userManagement.py | removeCeltsAdmin | 4 | 0 | 0 | 100% | 
            
                | app/logic/userManagement.py | removeCeltsStudentStaff | 7 | 0 | 0 | 100% | 
            
                | app/logic/userManagement.py | changeProgramInfo | 19 | 3 | 0 | 84% | 
            
                | app/logic/userManagement.py | getAllowedPrograms | 3 | 0 | 0 | 100% | 
            
                | app/logic/userManagement.py | getAllowedTemplates | 3 | 0 | 0 | 100% | 
            
                | app/logic/userManagement.py | (no function) | 17 | 0 | 0 | 100% | 
            
                | app/logic/users.py | isEligibleForProgram | 4 | 0 | 0 | 100% | 
            
                | app/logic/users.py | addUserInterest | 2 | 0 | 0 | 100% | 
            
                | app/logic/users.py | removeUserInterest | 4 | 0 | 0 | 100% | 
            
                | app/logic/users.py | getBannedUsers | 1 | 0 | 0 | 100% | 
            
                | app/logic/users.py | isBannedFromEvent | 3 | 0 | 0 | 100% | 
            
                | app/logic/users.py | banUser | 2 | 0 | 0 | 100% | 
            
                | app/logic/users.py | unbanUser | 2 | 0 | 0 | 100% | 
            
                | app/logic/users.py | getUserBGCheckHistory | 5 | 0 | 0 | 100% | 
            
                | app/logic/users.py | addProfileNote | 5 | 0 | 0 | 100% | 
            
                | app/logic/users.py | deleteProfileNote | 1 | 0 | 0 | 100% | 
            
                | app/logic/users.py | updateDietInfo | 2 | 0 | 0 | 100% | 
            
                | app/logic/users.py | (no function) | 26 | 0 | 0 | 100% | 
            
                | app/logic/utils.py | selectSurroundingTerms | 13 | 1 | 0 | 92% | 
            
                | app/logic/utils.py | getStartofCurrentAcademicYear | 4 | 4 | 0 | 0% | 
            
                | app/logic/utils.py | format24HourTime | 9 | 0 | 0 | 100% | 
            
                | app/logic/utils.py | getUsernameFromEmail | 1 | 1 | 0 | 0% | 
            
                | app/logic/utils.py | getFilesFromRequest | 5 | 5 | 0 | 0% | 
            
                | app/logic/utils.py | getRedirectTarget | 6 | 6 | 0 | 0% | 
            
                | app/logic/utils.py | setRedirectTarget | 1 | 1 | 0 | 0% | 
            
                | app/logic/utils.py | (no function) | 12 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | getUniqueVolunteers | 2 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | getVolunteerProgramEventByTerm | 2 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | totalVolunteerHours | 2 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | volunteerProgramHours | 2 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | onlyCompletedAllVolunteer | 3 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | volunteerHoursByProgram | 2 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | volunteerMajorAndClass | 5 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | repeatVolunteersPerProgram | 2 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | repeatVolunteers | 2 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | getRetentionRate | 8 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | termParticipation | 7 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | removeNullParticipants | 1 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | calculateRetentionRate | 11 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | makeDataXls | 12 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | createSpreadsheet | 26 | 0 | 0 | 100% | 
            
                | app/logic/volunteerSpreadsheet.py | (no function) | 26 | 0 | 0 | 100% | 
            
                | app/logic/volunteers.py | getEventLengthInHours | 3 | 0 | 0 | 100% | 
            
                | app/logic/volunteers.py | updateEventParticipants | 16 | 0 | 0 | 100% | 
            
                | app/logic/volunteers.py | addUserBackgroundCheck | 12 | 2 | 0 | 83% | 
            
                | app/logic/volunteers.py | deleteUserBackgroundCheck | 3 | 0 | 0 | 100% | 
            
                | app/logic/volunteers.py | setProgramManager | 5 | 0 | 0 | 100% | 
            
                | app/logic/volunteers.py | (no function) | 14 | 0 | 0 | 100% | 
            
                | app/models/__init__.py | getMySQLDB | 6 | 1 | 0 | 83% | 
            
                | app/models/__init__.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/models/activityLog.py | (no function) | 6 | 0 | 0 | 100% | 
            
                | app/models/attachmentUpload.py | (no function) | 12 | 0 | 0 | 100% | 
            
                | app/models/backgroundCheck.py | (no function) | 10 | 0 | 0 | 100% | 
            
                | app/models/backgroundCheckType.py | (no function) | 4 | 0 | 0 | 100% | 
            
                | app/models/bonnerCohort.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/models/cceMinorProposal.py | CCEMinorProposal.isOver300Hours | 3 | 3 | 0 | 0% | 
            
                | app/models/cceMinorProposal.py | (no function) | 28 | 0 | 0 | 100% | 
            
                | app/models/celtsLabor.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/models/certification.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/models/certificationRequirement.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/models/course.py | (no function) | 19 | 0 | 0 | 100% | 
            
                | app/models/courseInstructor.py | (no function) | 6 | 0 | 0 | 100% | 
            
                | app/models/courseParticipant.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/models/courseQuestion.py | (no function) | 6 | 0 | 0 | 100% | 
            
                | app/models/courseStatus.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/models/emailLog.py | (no function) | 13 | 0 | 0 | 100% | 
            
                | app/models/emailTemplate.py | (no function) | 7 | 0 | 0 | 100% | 
            
                | app/models/emergencyContact.py | (no function) | 11 | 0 | 0 | 100% | 
            
                | app/models/event.py | Event.__str__ | 1 | 1 | 0 | 0% | 
            
                | app/models/event.py | Event.isDeleted | 1 | 0 | 0 | 100% | 
            
                | app/models/event.py | Event.noProgram | 1 | 1 | 0 | 0% | 
            
                | app/models/event.py | Event.isPastStart | 1 | 0 | 0 | 100% | 
            
                | app/models/event.py | Event.isPastEnd | 1 | 0 | 0 | 100% | 
            
                | app/models/event.py | Event.isFirstRepeatingEvent | 2 | 2 | 0 | 0% | 
            
                | app/models/event.py | Event.relativeTime | 14 | 4 | 0 | 71% | 
            
                | app/models/event.py | (no function) | 42 | 0 | 0 | 100% | 
            
                | app/models/eventCohort.py | (no function) | 10 | 0 | 0 | 100% | 
            
                | app/models/eventParticipant.py | EventParticipant.rsvpWaitlist | 1 | 1 | 0 | 0% | 
            
                | app/models/eventParticipant.py | (no function) | 9 | 0 | 0 | 100% | 
            
                | app/models/eventRsvp.py | (no function) | 11 | 0 | 0 | 100% | 
            
                | app/models/eventRsvpLog.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/models/eventTemplate.py | EventTemplate.fetch | 1 | 0 | 0 | 100% | 
            
                | app/models/eventTemplate.py | EventTemplate.templateData | 1 | 0 | 0 | 100% | 
            
                | app/models/eventTemplate.py | EventTemplate.templateData | 1 | 0 | 0 | 100% | 
            
                | app/models/eventTemplate.py | (no function) | 13 | 0 | 0 | 100% | 
            
                | app/models/eventViews.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/models/individualRequirement.py | (no function) | 18 | 0 | 0 | 100% | 
            
                | app/models/insuranceInfo.py | (no function) | 11 | 0 | 0 | 100% | 
            
                | app/models/interest.py | (no function) | 6 | 0 | 0 | 100% | 
            
                | app/models/note.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/models/profileNote.py | (no function) | 8 | 0 | 0 | 100% | 
            
                | app/models/program.py | Program.url | 7 | 7 | 0 | 0% | 
            
                | app/models/program.py | Program.description | 1 | 1 | 0 | 0% | 
            
                | app/models/program.py | (no function) | 20 | 0 | 0 | 100% | 
            
                | app/models/programBan.py | (no function) | 11 | 0 | 0 | 100% | 
            
                | app/models/programManager.py | (no function) | 6 | 0 | 0 | 100% | 
            
                | app/models/questionNote.py | (no function) | 6 | 0 | 0 | 100% | 
            
                | app/models/requirementMatch.py | (no function) | 10 | 0 | 0 | 100% | 
            
                | app/models/term.py | Term.academicYearStartingTerm | 8 | 0 | 0 | 100% | 
            
                | app/models/term.py | Term.isFutureTerm | 15 | 3 | 0 | 80% | 
            
                | app/models/term.py | Term.convertDescriptionToTermOrder | 7 | 0 | 0 | 100% | 
            
                | app/models/term.py | (no function) | 15 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.__init__ | 4 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.processedClassLevel | 3 | 3 | 0 | 0% | 
            
                | app/models/user.py | User.isAdmin | 1 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.isBonnerScholar | 4 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.fullName | 1 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.addProgramManager | 3 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.removeProgramManager | 3 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.isProgramManagerFor | 6 | 1 | 0 | 83% | 
            
                | app/models/user.py | User.isProgramManagerForEvent | 1 | 0 | 0 | 100% | 
            
                | app/models/user.py | User.isProgramManager | 4 | 4 | 0 | 0% | 
            
                | app/models/user.py | (no function) | 35 | 0 | 0 | 100% | 
            
                | app/scripts/send_event_reminder_emails.py | sendEventReminderEmail | 14 | 0 | 0 | 100% | 
            
                | app/scripts/send_event_reminder_emails.py | main | 1 | 1 | 0 | 0% | 
            
                | app/scripts/send_event_reminder_emails.py | gethost | 7 | 2 | 0 | 71% | 
            
                | app/scripts/send_event_reminder_emails.py | (no function) | 11 | 0 | 0 | 100% |