File tree Expand file tree Collapse file tree 4 files changed +116
-0
lines changed Expand file tree Collapse file tree 4 files changed +116
-0
lines changed Original file line number Diff line number Diff line change
1
+ course :
2
+ api_version : [0, 1]
3
+ course :
4
+ title : A course loaded from API version 0.1
5
+ subtitle : Suitable for testing only.
6
+ source_file : courses/complex/info.yml
7
+ sessions :
8
+ - slug : first
9
+ title : First
10
+ serial : ' 1'
11
+ - slug : second
12
+ title : Second
13
+ serial : ' 2'
14
+ - slug : special
15
+ title : Special
Original file line number Diff line number Diff line change
1
+ $schema : http://dummy.test/schema/Course
2
+ api_version :
3
+ - 0
4
+ - 0
5
+ course :
6
+ lessons : {}
7
+ long_description : ' '
8
+ sessions :
9
+ - materials : []
10
+ pages :
11
+ back :
12
+ content : ' '
13
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=back&session_slug=first
14
+ front :
15
+ content : ' '
16
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=front&session_slug=first
17
+ slug : first
18
+ title : First
19
+ url : http://dummy.test/model/web/Session/?course_slug=courses/complex&session_slug=first
20
+ - materials : []
21
+ pages :
22
+ back :
23
+ content : ' '
24
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=back&session_slug=second
25
+ front :
26
+ content : ' '
27
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=front&session_slug=second
28
+ slug : second
29
+ title : Second
30
+ url : http://dummy.test/model/web/Session/?course_slug=courses/complex&session_slug=second
31
+ - materials : []
32
+ pages :
33
+ back :
34
+ content : ' '
35
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=back&session_slug=special
36
+ front :
37
+ content : ' '
38
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=front&session_slug=special
39
+ slug : special
40
+ title : Special
41
+ url : http://dummy.test/model/web/Session/?course_slug=courses/complex&session_slug=special
42
+ source_file : courses/complex/info.yml
43
+ subtitle : Suitable for testing only.
44
+ title : A course loaded from API version 0.1
45
+ url : http://dummy.test/model/web/Course/?course_slug=courses/complex
46
+ vars : {}
Original file line number Diff line number Diff line change
1
+ $schema : http://dummy.test/schema/Course
2
+ api_version :
3
+ - 0
4
+ - 1
5
+ course :
6
+ lessons : {}
7
+ long_description : ' '
8
+ sessions :
9
+ - materials : []
10
+ pages :
11
+ back :
12
+ content : ' '
13
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=back&session_slug=first
14
+ front :
15
+ content : ' '
16
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=front&session_slug=first
17
+ serial : ' 1'
18
+ slug : first
19
+ title : First
20
+ url : http://dummy.test/model/web/Session/?course_slug=courses/complex&session_slug=first
21
+ - materials : []
22
+ pages :
23
+ back :
24
+ content : ' '
25
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=back&session_slug=second
26
+ front :
27
+ content : ' '
28
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=front&session_slug=second
29
+ serial : ' 2'
30
+ slug : second
31
+ title : Second
32
+ url : http://dummy.test/model/web/Session/?course_slug=courses/complex&session_slug=second
33
+ - materials : []
34
+ pages :
35
+ back :
36
+ content : ' '
37
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=back&session_slug=special
38
+ front :
39
+ content : ' '
40
+ url : http://dummy.test/model/web/SessionPage/?course_slug=courses/complex&page_slug=front&session_slug=special
41
+ slug : special
42
+ title : Special
43
+ url : http://dummy.test/model/web/Session/?course_slug=courses/complex&session_slug=special
44
+ source_file : courses/complex/info.yml
45
+ subtitle : Suitable for testing only.
46
+ title : A course loaded from API version 0.1
47
+ url : http://dummy.test/model/web/Course/?course_slug=courses/complex
48
+ vars : {}
Original file line number Diff line number Diff line change @@ -149,6 +149,13 @@ def test_complex_course(model, assert_model_dump):
149
149
assert course .sessions ['full' ].description == 'A <em>full session!</em>'
150
150
151
151
152
+ def test_api_1_0 (model , assert_model_dump ):
153
+ """Valid complex json that could come from a fork is loaded correctly"""
154
+ course = load_course_from_fixture (model , 'course-data/course-v0.1.yml' )
155
+
156
+ assert_model_dump (course , 'course-v0.1' )
157
+
158
+
152
159
def test_derives (model ):
153
160
"""Test that derives and base_course is set correctly"""
154
161
add_test_course (model , 'courses/base' , {
You can’t perform that action at this time.
0 commit comments