Coverage for model/schemas/problem.py: 100%

35 statements  

« prev     ^ index     » next       coverage.py v7.9.2, created at 2026-07-24 16:42 +0000

1from typing import Any, List, Optional 

2from .base import BaseSchema 

3 

4 

5class ViewProblemListQuery(BaseSchema): 

6 offset: Optional[str] = None 

7 count: Optional[str] = None 

8 problem_id: Optional[str] = None 

9 tags: Optional[str] = None 

10 name: Optional[str] = None 

11 course: Optional[str] = None 

12 

13 

14class ProblemBody(BaseSchema): 

15 type: Optional[Any] = None 

16 courses: Optional[List[str]] = None 

17 status: Optional[Any] = None 

18 description: Optional[Any] = None 

19 tags: Optional[Any] = None 

20 problem_name: Optional[str] = None 

21 quota: Optional[Any] = None 

22 test_case_info: Optional[Any] = None 

23 can_view_stdout: Optional[Any] = None 

24 allowed_language: Optional[Any] = None 

25 default_code: Optional[str] = None 

26 

27 

28class InitiateTestCaseUploadBody(BaseSchema): 

29 length: int 

30 part_size: int 

31 

32 

33class CompleteTestCaseUploadBody(BaseSchema): 

34 upload_id: Optional[str] = None 

35 parts: Optional[List[Any]] = None 

36 

37 

38class GetTestdataQuery(BaseSchema): 

39 token: Optional[str] = None 

40 

41 

42class CloneProblemBody(BaseSchema): 

43 problem_id: int 

44 target: Optional[str] = None 

45 status: Optional[Any] = None 

46 

47 

48class PublishProblemBody(BaseSchema): 

49 problem_id: Optional[Any] = None