moodle_rb 1.0.2 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/build.yml +36 -0
  3. data/.github/workflows/publish.yml +27 -0
  4. data/Dockerfile +10 -0
  5. data/README.md +73 -1
  6. data/docker-compose.yml +6 -0
  7. data/lib/moodle_rb/categories.rb +12 -11
  8. data/lib/moodle_rb/client.rb +10 -8
  9. data/lib/moodle_rb/courses.rb +59 -13
  10. data/lib/moodle_rb/enrolments.rb +34 -9
  11. data/lib/moodle_rb/grades.rb +9 -14
  12. data/lib/moodle_rb/users.rb +35 -19
  13. data/lib/moodle_rb/utility.rb +7 -0
  14. data/lib/moodle_rb/version.rb +1 -1
  15. data/lib/moodle_rb.rb +2 -2
  16. data/moodle_rb.gemspec +2 -3
  17. data/spec/cassettes/MoodleRb_Categories/_create/.yml +19 -19
  18. data/spec/cassettes/MoodleRb_Categories/_create/when_validation_fails/.yml +19 -19
  19. data/spec/cassettes/MoodleRb_Categories/_destroy/when_using_invalid_token/.yml +39 -0
  20. data/spec/cassettes/MoodleRb_Categories/_destroy/when_using_valid_token/.yml +76 -0
  21. data/spec/cassettes/MoodleRb_Categories/_index/.yml +19 -19
  22. data/spec/cassettes/MoodleRb_Categories/_index/when_using_invalid_token/.yml +39 -0
  23. data/spec/cassettes/MoodleRb_Categories/_show/when_using_invalid_token/.yml +39 -0
  24. data/spec/cassettes/MoodleRb_Client/_site_info/when_invalid_token/.yml +20 -20
  25. data/spec/cassettes/MoodleRb_Client/_site_info/when_valid_token/.yml +19 -19
  26. data/spec/cassettes/MoodleRb_Courses/_contents/when_using_invalid_token/.yml +52 -0
  27. data/spec/cassettes/MoodleRb_Courses/_contents/when_using_valid_token/.yml +52 -0
  28. data/spec/cassettes/MoodleRb_Courses/_create/.yml +19 -19
  29. data/spec/cassettes/MoodleRb_Courses/_create/when_validation_fails/.yml +36 -36
  30. data/spec/cassettes/MoodleRb_Courses/_destroy/when_using_invalid_token/.yml +39 -0
  31. data/spec/cassettes/MoodleRb_Courses/_destroy/when_using_valid_token/.yml +75 -0
  32. data/spec/cassettes/MoodleRb_Courses/_destroy/when_using_valid_token/when_using_invalid_course_id/.yml +39 -0
  33. data/spec/cassettes/MoodleRb_Courses/_enrolled_users/when_using_invalid_token/.yml +39 -0
  34. data/spec/cassettes/MoodleRb_Courses/_enrolled_users/when_using_valid_token/.yml +75 -0
  35. data/spec/cassettes/MoodleRb_Courses/_grade_items/when_using_invalid_token/.yml +52 -0
  36. data/spec/cassettes/MoodleRb_Courses/_grade_items/when_using_valid_token/.yml +56 -0
  37. data/spec/cassettes/MoodleRb_Courses/_index/.yml +19 -19
  38. data/spec/cassettes/MoodleRb_Courses/_index/when_using_invalid_token/.yml +39 -0
  39. data/spec/cassettes/MoodleRb_Courses/_module/when_using_invalid_token/.yml +52 -0
  40. data/spec/cassettes/MoodleRb_Courses/_module/when_using_valid_token/.yml +51 -0
  41. data/spec/cassettes/MoodleRb_Courses/_show/.yml +19 -19
  42. data/spec/cassettes/MoodleRb_Courses/_show/when_using_invalid_token/.yml +39 -0
  43. data/spec/cassettes/MoodleRb_Enrolments/_create/.yml +19 -19
  44. data/spec/cassettes/MoodleRb_Enrolments/_create/when_user_or_course_id_is_invalid/.yml +19 -19
  45. data/spec/cassettes/MoodleRb_Enrolments/_destroy/.yml +51 -0
  46. data/spec/cassettes/MoodleRb_Enrolments/_destroy/when_user_or_course_id_is_invalid/.yml +52 -0
  47. data/spec/cassettes/MoodleRb_Grades/_by_assignment/.yml +19 -19
  48. data/spec/cassettes/MoodleRb_Grades/_by_course/.yml +19 -19
  49. data/spec/cassettes/MoodleRb_Grades/_by_course/when_invalid_parameters/.yml +19 -19
  50. data/spec/cassettes/MoodleRb_Users/_create/.yml +19 -19
  51. data/spec/cassettes/MoodleRb_Users/_create/when_missing_required_parameters/.yml +19 -19
  52. data/spec/cassettes/MoodleRb_Users/_destroy/.yml +19 -19
  53. data/spec/cassettes/MoodleRb_Users/_destroy/when_id_does_not_exist/.yml +19 -19
  54. data/spec/cassettes/MoodleRb_Users/_destroy/when_using_invalid_token/.yml +39 -0
  55. data/spec/cassettes/MoodleRb_Users/_enrolled_courses/.yml +19 -19
  56. data/spec/cassettes/MoodleRb_Users/_enrolled_courses/when_using_invalid_token/.yml +39 -0
  57. data/spec/cassettes/MoodleRb_Users/_search/.yml +21 -21
  58. data/spec/cassettes/MoodleRb_Users/_search/when_using_invalid_token/.yml +39 -0
  59. data/spec/cassettes/MoodleRb_Users/_search_identity/.yml +51 -0
  60. data/spec/cassettes/MoodleRb_Users/_search_identity/when_using_invalid_token/.yml +52 -0
  61. data/spec/cassettes/MoodleRb_Users/_show/.yml +19 -19
  62. data/spec/cassettes/MoodleRb_Users/_show/when_using_invalid_token/.yml +39 -0
  63. data/spec/cassettes/MoodleRb_Users/_update/.yml +20 -20
  64. data/spec/cassettes/MoodleRb_Users/_update/when_using_invalid_token/.yml +39 -0
  65. data/spec/lib/moodle_rb/categories_spec.rb +42 -10
  66. data/spec/lib/moodle_rb/client_spec.rb +7 -5
  67. data/spec/lib/moodle_rb/courses_spec.rb +155 -20
  68. data/spec/lib/moodle_rb/enrolments_spec.rb +36 -3
  69. data/spec/lib/moodle_rb/grades_spec.rb +4 -4
  70. data/spec/lib/moodle_rb/users_spec.rb +93 -9
  71. data/spec/lib/moodle_rb_spec.rb +2 -2
  72. metadata +150 -142
  73. data/spec/cassettes/MoodleRb_Categories/_destroy/.yml +0 -75
  74. data/spec/cassettes/MoodleRb_Courses/_destroy/.yml +0 -75
  75. data/spec/cassettes/MoodleRb_Courses/_enrolled_users/.yml +0 -75
data/lib/moodle_rb.rb CHANGED
@@ -10,7 +10,7 @@ require 'moodle_rb/grades'
10
10
  require 'moodle_rb/users'
11
11
 
12
12
  module MoodleRb
13
- def self.new(token, url)
14
- Client.new(token, url)
13
+ def self.new(token, url, query_options = {})
14
+ Client.new(token, url, query_options)
15
15
  end
16
16
  end
data/moodle_rb.gemspec CHANGED
@@ -17,11 +17,10 @@ Gem::Specification.new do |spec|
17
17
  spec.require_paths = ['lib']
18
18
 
19
19
  spec.add_development_dependency 'bundler', '~> 1.3'
20
- spec.add_development_dependency 'ruby-debug', '0.10.4'
21
20
  spec.add_development_dependency 'rake', '~> 0'
22
21
  spec.add_development_dependency 'rspec', '~> 3.0'
23
- spec.add_development_dependency 'webmock', '~> 1.0'
22
+ spec.add_development_dependency 'webmock', '~> 1.24.6'
24
23
  spec.add_development_dependency 'vcr', '~> 2.9'
25
24
 
26
- spec.add_dependency 'httparty', '~> 0.11.0'
25
+ spec.add_dependency 'httparty', '>= 0.11.0'
27
26
  end
@@ -1,39 +1,39 @@
1
- ---
1
+ ---
2
2
  recorded_with: VCR 2.9.3
3
- http_interactions:
4
- - request:
3
+ http_interactions:
4
+ - request:
5
5
  method: post
6
6
  uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_create_categories&wstoken=60fc9c9415259404795094957e4ab32f
7
- body:
7
+ body:
8
8
  string: categories[0][description]=&categories[0][idnumber]=&categories[0][parent]=0&categories[0][name]=Test%20category
9
9
  headers: {}
10
10
 
11
- response:
12
- status:
11
+ response:
12
+ status:
13
13
  code: 200
14
14
  message: OK
15
- headers:
16
- Server:
15
+ headers:
16
+ Server:
17
17
  - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zd DAV/2 mod_perl/2.0.8 Perl/v5.20.0
18
- Cache-Control:
18
+ Cache-Control:
19
19
  - private, must-revalidate, pre-check=0, post-check=0, max-age=0
20
- Pragma:
20
+ Pragma:
21
21
  - no-cache
22
- Date:
22
+ Date:
23
23
  - Sun, 12 Apr 2015 00:40:13 GMT
24
- Content-Type:
24
+ Content-Type:
25
25
  - application/json
26
- Expires:
26
+ Expires:
27
27
  - Thu, 01 Jan 1970 00:00:00 GMT
28
- Access-Control-Allow-Origin:
28
+ Access-Control-Allow-Origin:
29
29
  - "*"
30
- Content-Length:
30
+ Content-Length:
31
31
  - "33"
32
- X-Powered-By:
32
+ X-Powered-By:
33
33
  - PHP/5.6.2
34
- Accept-Ranges:
34
+ Accept-Ranges:
35
35
  - none
36
- body:
36
+ body:
37
37
  string: "[{\"id\":5,\"name\":\"Test category\"}]"
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Sun, 12 Apr 2015 00:40:13 GMT
@@ -1,39 +1,39 @@
1
- ---
1
+ ---
2
2
  recorded_with: VCR 2.9.3
3
- http_interactions:
4
- - request:
3
+ http_interactions:
4
+ - request:
5
5
  method: post
6
6
  uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_create_categories&wstoken=60fc9c9415259404795094957e4ab32f
7
- body:
7
+ body:
8
8
  string: categories[0][description]=&categories[0][idnumber]=CAT101&categories[0][parent]=0&categories[0][name]=Test%20category
9
9
  headers: {}
10
10
 
11
- response:
12
- status:
11
+ response:
12
+ status:
13
13
  code: 200
14
14
  message: OK
15
- headers:
16
- Server:
15
+ headers:
16
+ Server:
17
17
  - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zd DAV/2 mod_perl/2.0.8 Perl/v5.20.0
18
- Cache-Control:
18
+ Cache-Control:
19
19
  - private, must-revalidate, pre-check=0, post-check=0, max-age=0
20
- Pragma:
20
+ Pragma:
21
21
  - no-cache
22
- Date:
22
+ Date:
23
23
  - Sun, 12 Apr 2015 00:40:13 GMT
24
- Content-Type:
24
+ Content-Type:
25
25
  - application/json
26
- Expires:
26
+ Expires:
27
27
  - Thu, 01 Jan 1970 00:00:00 GMT
28
- Access-Control-Allow-Origin:
28
+ Access-Control-Allow-Origin:
29
29
  - "*"
30
- Content-Length:
30
+ Content-Length:
31
31
  - "127"
32
- X-Powered-By:
32
+ X-Powered-By:
33
33
  - PHP/5.6.2
34
- Accept-Ranges:
34
+ Accept-Ranges:
35
35
  - none
36
- body:
36
+ body:
37
37
  string: "{\"exception\":\"moodle_exception\",\"errorcode\":\"categoryidnumbertaken\",\"message\":\"ID number is already used for another category\"}"
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Sun, 12 Apr 2015 00:40:13 GMT
@@ -0,0 +1,39 @@
1
+ ---
2
+ recorded_with: VCR 2.9.3
3
+ http_interactions:
4
+ - request:
5
+ method: post
6
+ uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_create_categories&wstoken=
7
+ body:
8
+ string: categories[0][description]=&categories[0][parent]=0&categories[0][name]=_&categories[0][idnumber]=
9
+ headers: {}
10
+
11
+ response:
12
+ status:
13
+ code: 200
14
+ message: OK
15
+ headers:
16
+ Accept-Ranges:
17
+ - none
18
+ X-Powered-By:
19
+ - PHP/5.6.2
20
+ Content-Type:
21
+ - application/json
22
+ Date:
23
+ - Mon, 20 Jun 2016 23:22:31 GMT
24
+ Server:
25
+ - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0
26
+ Content-Length:
27
+ - "103"
28
+ Expires:
29
+ - Thu, 01 Jan 1970 00:00:00 GMT
30
+ Pragma:
31
+ - no-cache
32
+ Cache-Control:
33
+ - private, must-revalidate, pre-check=0, post-check=0, max-age=0
34
+ Access-Control-Allow-Origin:
35
+ - "*"
36
+ body:
37
+ string: "{\"exception\":\"moodle_exception\",\"errorcode\":\"invalidtoken\",\"message\":\"Invalid token - token not found\"}"
38
+ http_version:
39
+ recorded_at: Mon, 20 Jun 2016 23:22:31 GMT
@@ -0,0 +1,76 @@
1
+ ---
2
+ recorded_with: VCR 2.9.3
3
+ http_interactions:
4
+ - request:
5
+ method: post
6
+ uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_create_categories&wstoken=60fc9c9415259404795094957e4ab32f
7
+ uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_create_categories&wstoken=60fc9c9415259404795094957e4ab32f
8
+ body:
9
+ string: categories[0][description]=&categories[0][parent]=0&categories[0][name]=_&categories[0][idnumber]=
10
+ headers: {}
11
+
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Server:
18
+ - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0
19
+ Access-Control-Allow-Origin:
20
+ - "*"
21
+ Content-Type:
22
+ - application/json
23
+ Expires:
24
+ - Thu, 01 Jan 1970 00:00:00 GMT
25
+ X-Powered-By:
26
+ - PHP/5.6.2
27
+ Accept-Ranges:
28
+ - none
29
+ Cache-Control:
30
+ - private, must-revalidate, pre-check=0, post-check=0, max-age=0
31
+ Date:
32
+ - Mon, 20 Jun 2016 23:23:47 GMT
33
+ Content-Length:
34
+ - "21"
35
+ Pragma:
36
+ - no-cache
37
+ body:
38
+ string: "[{\"id\":3,\"name\":\"_\"}]"
39
+ http_version:
40
+ recorded_at: Mon, 20 Jun 2016 23:23:47 GMT
41
+ - request:
42
+ method: post
43
+ uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_delete_categories&wstoken=60fc9c9415259404795094957e4ab32f
44
+ body:
45
+ string: categories[0][recursive]=1&categories[0][id]=3
46
+ headers: {}
47
+
48
+ response:
49
+ status:
50
+ code: 200
51
+ message: OK
52
+ headers:
53
+ Server:
54
+ - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0
55
+ Access-Control-Allow-Origin:
56
+ - "*"
57
+ Content-Type:
58
+ - application/json
59
+ Expires:
60
+ - Thu, 01 Jan 1970 00:00:00 GMT
61
+ X-Powered-By:
62
+ - PHP/5.6.2
63
+ Accept-Ranges:
64
+ - none
65
+ Cache-Control:
66
+ - private, must-revalidate, pre-check=0, post-check=0, max-age=0
67
+ Date:
68
+ - Mon, 20 Jun 2016 23:23:47 GMT
69
+ Content-Length:
70
+ - "4"
71
+ Pragma:
72
+ - no-cache
73
+ body:
74
+ string: "null"
75
+ http_version:
76
+ recorded_at: Mon, 20 Jun 2016 23:23:47 GMT
@@ -1,39 +1,39 @@
1
- ---
1
+ ---
2
2
  recorded_with: VCR 2.9.3
3
- http_interactions:
4
- - request:
3
+ http_interactions:
4
+ - request:
5
5
  method: get
6
6
  uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_get_categories&wstoken=60fc9c9415259404795094957e4ab32f
7
- body:
7
+ body:
8
8
  string: ""
9
9
  headers: {}
10
10
 
11
- response:
12
- status:
11
+ response:
12
+ status:
13
13
  code: 200
14
14
  message: OK
15
- headers:
16
- Server:
15
+ headers:
16
+ Server:
17
17
  - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zd DAV/2 mod_perl/2.0.8 Perl/v5.20.0
18
- Cache-Control:
18
+ Cache-Control:
19
19
  - private, must-revalidate, pre-check=0, post-check=0, max-age=0
20
- Pragma:
20
+ Pragma:
21
21
  - no-cache
22
- Date:
22
+ Date:
23
23
  - Sun, 12 Apr 2015 00:40:13 GMT
24
- Content-Type:
24
+ Content-Type:
25
25
  - application/json
26
- Expires:
26
+ Expires:
27
27
  - Thu, 01 Jan 1970 00:00:00 GMT
28
- Access-Control-Allow-Origin:
28
+ Access-Control-Allow-Origin:
29
29
  - "*"
30
- Content-Length:
30
+ Content-Length:
31
31
  - "885"
32
- X-Powered-By:
32
+ X-Powered-By:
33
33
  - PHP/5.6.2
34
- Accept-Ranges:
34
+ Accept-Ranges:
35
35
  - none
36
- body:
36
+ body:
37
37
  string: "[{\"id\":1,\"name\":\"Miscellaneous\",\"idnumber\":null,\"description\":\"\",\"descriptionformat\":1,\"parent\":0,\"sortorder\":10000,\"coursecount\":2,\"visible\":1,\"visibleold\":1,\"timemodified\":1405375287,\"depth\":1,\"path\":\"\\/1\",\"theme\":null},{\"id\":2,\"name\":\"Test category\",\"idnumber\":\"\",\"description\":\"\",\"descriptionformat\":1,\"parent\":0,\"sortorder\":20000,\"coursecount\":0,\"visible\":1,\"visibleold\":1,\"timemodified\":1428756643,\"depth\":1,\"path\":\"\\/2\",\"theme\":null},{\"id\":3,\"name\":\"Test category\",\"idnumber\":\"CAT101\",\"description\":\"\",\"descriptionformat\":1,\"parent\":0,\"sortorder\":30000,\"coursecount\":0,\"visible\":1,\"visibleold\":1,\"timemodified\":1428756643,\"depth\":1,\"path\":\"\\/3\",\"theme\":null},{\"id\":5,\"name\":\"Test category\",\"idnumber\":\"\",\"description\":\"\",\"descriptionformat\":1,\"parent\":0,\"sortorder\":40000,\"coursecount\":0,\"visible\":1,\"visibleold\":1,\"timemodified\":1428799213,\"depth\":1,\"path\":\"\\/5\",\"theme\":null}]"
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Sun, 12 Apr 2015 00:40:13 GMT
@@ -0,0 +1,39 @@
1
+ ---
2
+ recorded_with: VCR 2.9.3
3
+ http_interactions:
4
+ - request:
5
+ method: get
6
+ uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_get_categories&wstoken=
7
+ body:
8
+ string: ""
9
+ headers: {}
10
+
11
+ response:
12
+ status:
13
+ code: 200
14
+ message: OK
15
+ headers:
16
+ Accept-Ranges:
17
+ - none
18
+ X-Powered-By:
19
+ - PHP/5.6.2
20
+ Content-Type:
21
+ - application/json
22
+ Date:
23
+ - Mon, 20 Jun 2016 23:22:31 GMT
24
+ Server:
25
+ - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0
26
+ Content-Length:
27
+ - "103"
28
+ Expires:
29
+ - Thu, 01 Jan 1970 00:00:00 GMT
30
+ Pragma:
31
+ - no-cache
32
+ Cache-Control:
33
+ - private, must-revalidate, pre-check=0, post-check=0, max-age=0
34
+ Access-Control-Allow-Origin:
35
+ - "*"
36
+ body:
37
+ string: "{\"exception\":\"moodle_exception\",\"errorcode\":\"invalidtoken\",\"message\":\"Invalid token - token not found\"}"
38
+ http_version:
39
+ recorded_at: Mon, 20 Jun 2016 23:22:31 GMT
@@ -0,0 +1,39 @@
1
+ ---
2
+ recorded_with: VCR 2.9.3
3
+ http_interactions:
4
+ - request:
5
+ method: post
6
+ uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_get_categories&wstoken=
7
+ body:
8
+ string: criteria[0][value]=1&criteria[0][key]=id
9
+ headers: {}
10
+
11
+ response:
12
+ status:
13
+ code: 200
14
+ message: OK
15
+ headers:
16
+ Accept-Ranges:
17
+ - none
18
+ X-Powered-By:
19
+ - PHP/5.6.2
20
+ Content-Type:
21
+ - application/json
22
+ Date:
23
+ - Mon, 20 Jun 2016 23:22:31 GMT
24
+ Server:
25
+ - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zg DAV/2 mod_perl/2.0.8 Perl/v5.20.0
26
+ Content-Length:
27
+ - "103"
28
+ Expires:
29
+ - Thu, 01 Jan 1970 00:00:00 GMT
30
+ Pragma:
31
+ - no-cache
32
+ Cache-Control:
33
+ - private, must-revalidate, pre-check=0, post-check=0, max-age=0
34
+ Access-Control-Allow-Origin:
35
+ - "*"
36
+ body:
37
+ string: "{\"exception\":\"moodle_exception\",\"errorcode\":\"invalidtoken\",\"message\":\"Invalid token - token not found\"}"
38
+ http_version:
39
+ recorded_at: Mon, 20 Jun 2016 23:22:31 GMT
@@ -1,39 +1,39 @@
1
- ---
1
+ ---
2
2
  recorded_with: VCR 2.9.3
3
- http_interactions:
4
- - request:
3
+ http_interactions:
4
+ - request:
5
5
  method: get
6
- uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_webservice_get_site_info&wstoken=invalid_moodle_rb_token
7
- body:
6
+ uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_webservice_get_site_info&wstoken=60fc9c9415259404795094957e4ab32f
7
+ body:
8
8
  string: ""
9
9
  headers: {}
10
10
 
11
- response:
12
- status:
11
+ response:
12
+ status:
13
13
  code: 200
14
14
  message: OK
15
- headers:
16
- Cache-Control:
15
+ headers:
16
+ Cache-Control:
17
17
  - private, must-revalidate, pre-check=0, post-check=0, max-age=0
18
- Content-Type:
18
+ Content-Type:
19
19
  - application/json
20
- Accept-Ranges:
20
+ Accept-Ranges:
21
21
  - none
22
- Content-Length:
22
+ Content-Length:
23
23
  - "103"
24
- Date:
24
+ Date:
25
25
  - Sat, 11 Apr 2015 12:50:42 GMT
26
- Expires:
26
+ Expires:
27
27
  - Thu, 01 Jan 1970 00:00:00 GMT
28
- Access-Control-Allow-Origin:
28
+ Access-Control-Allow-Origin:
29
29
  - "*"
30
- Server:
30
+ Server:
31
31
  - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zd DAV/2 mod_perl/2.0.8 Perl/v5.20.0
32
- Pragma:
32
+ Pragma:
33
33
  - no-cache
34
- X-Powered-By:
34
+ X-Powered-By:
35
35
  - PHP/5.6.2
36
- body:
36
+ body:
37
37
  string: "{\"exception\":\"moodle_exception\",\"errorcode\":\"invalidtoken\",\"message\":\"Invalid token - token not found\"}"
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Sat, 11 Apr 2015 12:50:42 GMT
@@ -1,39 +1,39 @@
1
- ---
1
+ ---
2
2
  recorded_with: VCR 2.9.3
3
- http_interactions:
4
- - request:
3
+ http_interactions:
4
+ - request:
5
5
  method: get
6
6
  uri: http://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_webservice_get_site_info&wstoken=60fc9c9415259404795094957e4ab32f
7
- body:
7
+ body:
8
8
  string: ""
9
9
  headers: {}
10
10
 
11
- response:
12
- status:
11
+ response:
12
+ status:
13
13
  code: 200
14
14
  message: OK
15
- headers:
16
- Cache-Control:
15
+ headers:
16
+ Cache-Control:
17
17
  - private, must-revalidate, pre-check=0, post-check=0, max-age=0
18
- Content-Type:
18
+ Content-Type:
19
19
  - application/json
20
- Accept-Ranges:
20
+ Accept-Ranges:
21
21
  - none
22
- Date:
22
+ Date:
23
23
  - Sat, 11 Apr 2015 12:50:42 GMT
24
- Expires:
24
+ Expires:
25
25
  - Thu, 01 Jan 1970 00:00:00 GMT
26
- Access-Control-Allow-Origin:
26
+ Access-Control-Allow-Origin:
27
27
  - "*"
28
- Server:
28
+ Server:
29
29
  - Apache/2.2.29 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.8 PHP/5.6.2 mod_ssl/2.2.29 OpenSSL/0.9.8zd DAV/2 mod_perl/2.0.8 Perl/v5.20.0
30
- Pragma:
30
+ Pragma:
31
31
  - no-cache
32
- Transfer-Encoding:
32
+ Transfer-Encoding:
33
33
  - chunked
34
- X-Powered-By:
34
+ X-Powered-By:
35
35
  - PHP/5.6.2
36
- body:
36
+ body:
37
37
  string: "{\"sitename\":\"Moodle 2.8\",\"username\":\"apiapi\",\"firstname\":\"API\",\"lastname\":\"User\",\"fullname\":\"API User\",\"lang\":\"en\",\"userid\":4,\"siteurl\":\"http:\\/\\/localhost:8888\\/moodle28\",\"userpictureurl\":\"http:\\/\\/localhost:8888\\/moodle28\\/pluginfile.php\\/39\\/user\\/icon\\/f1\",\"functions\":[{\"name\":\"core_calendar_create_calendar_events\",\"version\":\"2014111005.01\"},{\"name\":\"core_calendar_delete_calendar_events\",\"version\":\"2014111005.01\"},{\"name\":\"core_calendar_get_calendar_events\",\"version\":\"2014111005.01\"},{\"name\":\"core_cohort_add_cohort_members\",\"version\":\"2014111005.01\"},{\"name\":\"core_cohort_create_cohorts\",\"version\":\"2014111005.01\"},{\"name\":\"core_cohort_delete_cohorts\",\"version\":\"2014111005.01\"},{\"name\":\"core_cohort_delete_cohort_members\",\"version\":\"2014111005.01\"},{\"name\":\"core_cohort_get_cohorts\",\"version\":\"2014111005.01\"},{\"name\":\"core_cohort_get_cohort_members\",\"version\":\"2014111005.01\"},{\"name\":\"core_cohort_update_cohorts\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_create_categories\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_create_courses\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_delete_categories\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_delete_courses\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_delete_modules\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_duplicate_course\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_get_categories\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_get_contents\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_get_courses\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_import_course\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_update_categories\",\"version\":\"2014111005.01\"},{\"name\":\"core_course_update_courses\",\"version\":\"2014111005.01\"},{\"name\":\"core_enrol_get_course_enrolment_methods\",\"version\":\"2014111005.01\"},{\"name\":\"core_enrol_get_enrolled_users\",\"version\":\"2014111005.01\"},{\"name\":\"core_enrol_get_enrolled_users_with_capability\",\"version\":\"2014111005.01\"},{\"name\":\"core_enrol_get_users_courses\",\"version\":\"2014111005.01\"},{\"name\":\"core_files_get_files\",\"version\":\"2014111005.01\"},{\"name\":\"core_files_upload\",\"version\":\"2014111005.01\"},{\"name\":\"core_get_component_strings\",\"version\":\"2014111005.01\"},{\"name\":\"core_get_string\",\"version\":\"2014111005.01\"},{\"name\":\"core_get_strings\",\"version\":\"2014111005.01\"},{\"name\":\"core_grades_get_grades\",\"version\":\"2014111005.01\"},{\"name\":\"core_grades_update_grades\",\"version\":\"2014111005.01\"},{\"name\":\"core_grade_get_definitions\",\"version\":\"2014111005.01\"},{\"name\":\"core_grading_get_definitions\",\"version\":\"2014111005.01\"},{\"name\":\"core_grading_get_gradingform_instances\",\"version\":\"2014111005.01\"},{\"name\":\"core_grading_save_definitions\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_add_group_members\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_assign_grouping\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_create_groupings\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_create_groups\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_delete_groupings\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_delete_groups\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_delete_group_members\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_get_course_groupings\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_get_course_groups\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_get_groupings\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_get_groups\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_get_group_members\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_unassign_grouping\",\"version\":\"2014111005.01\"},{\"name\":\"core_group_update_groupings\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_block_contacts\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_create_contacts\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_delete_contacts\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_get_contacts\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_get_messages\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_search_contacts\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_send_instant_messages\",\"version\":\"2014111005.01\"},{\"name\":\"core_message_unblock_contacts\",\"version\":\"2014111005.01\"},{\"name\":\"core_notes_create_notes\",\"version\":\"2014111005.01\"},{\"name\":\"core_notes_delete_notes\",\"version\":\"2014111005.01\"},{\"name\":\"core_notes_get_notes\",\"version\":\"2014111005.01\"},{\"name\":\"core_notes_update_notes\",\"version\":\"2014111005.01\"},{\"name\":\"core_role_assign_roles\",\"version\":\"2014111005.01\"},{\"name\":\"core_role_unassign_roles\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_add_user_device\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_create_users\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_delete_users\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_get_course_user_profiles\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_get_users\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_get_users_by_field\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_get_users_by_id\",\"version\":\"2014111005.01\"},{\"name\":\"core_user_update_users\",\"version\":\"2014111005.01\"},{\"name\":\"core_webservice_get_site_info\",\"version\":\"2014111005.01\"},{\"name\":\"enrol_manual_enrol_users\",\"version\":\"2014111000\"},{\"name\":\"enrol_self_get_instance_info\",\"version\":\"2014111000\"},{\"name\":\"message_airnotifier_are_notification_preferences_configured\",\"version\":\"2014111000\"},{\"name\":\"message_airnotifier_is_system_configured\",\"version\":\"2014111000\"},{\"name\":\"mod_assign_get_assignments\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_get_grades\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_get_submissions\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_get_user_flags\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_get_user_mappings\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_lock_submissions\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_reveal_identities\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_revert_submissions_to_draft\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_save_grade\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_save_grades\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_save_submission\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_save_user_extensions\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_set_user_flags\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_submit_for_grading\",\"version\":\"2014111001\"},{\"name\":\"mod_assign_unlock_submissions\",\"version\":\"2014111001\"},{\"name\":\"mod_forum_get_forums_by_courses\",\"version\":\"2014111000\"},{\"name\":\"mod_forum_get_forum_discussions\",\"version\":\"2014111000\"},{\"name\":\"mod_forum_get_forum_discussions_paginated\",\"version\":\"2014111000\"},{\"name\":\"mod_forum_get_forum_discussion_posts\",\"version\":\"2014111000\"},{\"name\":\"moodle_course_create_courses\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_course_get_courses\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_enrol_get_enrolled_users\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_enrol_get_users_courses\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_enrol_manual_enrol_users\",\"version\":\"2014111000\"},{\"name\":\"moodle_file_get_files\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_file_upload\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_group_add_groupmembers\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_group_create_groups\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_group_delete_groupmembers\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_group_delete_groups\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_group_get_course_groups\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_group_get_groupmembers\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_group_get_groups\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_message_send_instantmessages\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_notes_create_notes\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_role_assign\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_role_unassign\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_user_create_users\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_user_delete_users\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_user_get_course_participants_by_id\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_user_get_users_by_courseid\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_user_get_users_by_id\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_user_update_users\",\"version\":\"2014111005.01\"},{\"name\":\"moodle_webservice_get_siteinfo\",\"version\":\"2014111005.01\"}],\"downloadfiles\":0,\"uploadfiles\":0,\"release\":\"2.8.5+ (Build: 20150313)\",\"version\":\"2014111005.01\",\"mobilecssurl\":\"\"}"
38
- http_version:
38
+ http_version:
39
39
  recorded_at: Sat, 11 Apr 2015 12:50:42 GMT
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_get_contents&wstoken=
6
+ body:
7
+ encoding: UTF-8
8
+ string: courseid=5
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Accept-Ranges:
16
+ - bytes
17
+ - none
18
+ Access-Control-Allow-Origin:
19
+ - "*"
20
+ Age:
21
+ - '0'
22
+ Cache-Control:
23
+ - private, must-revalidate, pre-check=0, post-check=0, max-age=0
24
+ Content-Type:
25
+ - application/json
26
+ Date:
27
+ - Wed, 12 Jan 2022 00:08:37 GMT
28
+ Expires:
29
+ - Thu, 01 Jan 1970 00:00:00 GMT
30
+ Pragma:
31
+ - no-cache
32
+ Server:
33
+ - Moodle
34
+ X-Cache:
35
+ - MISS
36
+ X-Clacks-Overhead:
37
+ - GNU Terry Pratchett
38
+ X-Ec2-Instance-Id:
39
+ - i-01489c17e7f33623b
40
+ X-Powered-By:
41
+ - Moodle Ninjas
42
+ Content-Length:
43
+ - '103'
44
+ Connection:
45
+ - keep-alive
46
+ body:
47
+ encoding: UTF-8
48
+ string: '{"exception":"moodle_exception","errorcode":"invalidtoken","message":"Invalid
49
+ token - token not found"}'
50
+ http_version:
51
+ recorded_at: Wed, 12 Jan 2022 00:08:03 GMT
52
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://localhost:8888/moodle28/webservice/rest/server.php?moodlewsrestformat=json&wsfunction=core_course_get_contents&wstoken=60fc9c9415259404795094957e4ab32f
6
+ body:
7
+ encoding: UTF-8
8
+ string: courseid=5
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Accept-Ranges:
16
+ - bytes
17
+ - none
18
+ Access-Control-Allow-Origin:
19
+ - "*"
20
+ Age:
21
+ - '0'
22
+ Cache-Control:
23
+ - private, must-revalidate, pre-check=0, post-check=0, max-age=0
24
+ Content-Type:
25
+ - application/json
26
+ Date:
27
+ - Wed, 12 Jan 2022 00:08:36 GMT
28
+ Expires:
29
+ - Thu, 01 Jan 1970 00:00:00 GMT
30
+ Pragma:
31
+ - no-cache
32
+ Server:
33
+ - Moodle
34
+ X-Cache:
35
+ - MISS
36
+ X-Clacks-Overhead:
37
+ - GNU Terry Pratchett
38
+ X-Ec2-Instance-Id:
39
+ - i-0afd4744d7a60c5d7
40
+ X-Powered-By:
41
+ - Moodle Ninjas
42
+ Content-Length:
43
+ - '938'
44
+ Connection:
45
+ - keep-alive
46
+ body:
47
+ encoding: UTF-8
48
+ string: '[{"id":19,"name":"General","visible":1,"summary":"","summaryformat":1,"section":0,"hiddenbynumsections":0,"uservisible":true,"modules":[{"id":21,"url":"https:\/\/localhost:8888/moodle28\/mod\/assign\/view.php?id=21","name":"An
49
+ assignment","instance":1,"contextid":64,"visible":1,"uservisible":true,"visibleoncoursepage":1,"modicon":"https:\/\/localhost:8888/moodle28\/theme\/image.php\/_s\/boost\/assign\/1628139500\/icon","modname":"assign","modplural":"Assignments","availability":null,"indent":0,"onclick":"","afterlink":null,"customdata":"{\"duedate\":\"1631541600\",\"allowsubmissionsfromdate\":\"1630936800\"}","noviewlink":false,"completion":1,"completiondata":{"state":0,"timecompleted":0,"overrideby":null,"valueused":false,"hascompletion":true,"isautomatic":false,"istrackeduser":true,"uservisible":true,"details":[]},"dates":[{"label":"Opened:","timestamp":1630936800},{"label":"Due:","timestamp":1631541600}]}]}]'
50
+ http_version:
51
+ recorded_at: Wed, 12 Jan 2022 00:08:03 GMT
52
+ recorded_with: VCR 2.9.3