Coverage for e2xgrader/apps/activatemodeapp.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.4.2, created at 2024-03-14 13:22 +0100

1from ..utils.mode import E2xGraderMode 

2from .togglemodeapp import ToggleModeApp 

3 

4 

5class ActivateModeApp(ToggleModeApp): 

6 description = "Activate a specific mode (teacher, student, student_exam)" 

7 

8 def start(self) -> None: 

9 super().start() 

10 if len(self.extra_args) != 1: 

11 self.fail("Exactly one mode has to be specified") 

12 if self.extra_args[0] not in [ 

13 E2xGraderMode.TEACHER.value, 

14 E2xGraderMode.STUDENT.value, 

15 E2xGraderMode.STUDENT_EXAM.value, 

16 ]: 

17 self.fail( 

18 f"Mode {self.extra_args[0]} is not a valid mode that can be activated." 

19 ) 

20 self.mode = self.extra_args[0] 

21 

22 self.activate_mode()