moodle2cc 0.2.29 → 0.2.30

Sign up to get free protection for your applications and to get access to all the features.
Files changed (455) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moodle2cc/canvas/assessment.rb +0 -0
  3. data/lib/moodle2cc/canvas/assignment.rb +0 -0
  4. data/lib/moodle2cc/canvas/converter.rb +0 -0
  5. data/lib/moodle2cc/canvas/course.rb +0 -0
  6. data/lib/moodle2cc/canvas/discussion_topic.rb +0 -0
  7. data/lib/moodle2cc/canvas/label.rb +0 -0
  8. data/lib/moodle2cc/canvas/question_bank.rb +0 -0
  9. data/lib/moodle2cc/canvas/question_group.rb +0 -0
  10. data/lib/moodle2cc/canvas/resource.rb +0 -0
  11. data/lib/moodle2cc/canvas/templates/assignment.html.erb +0 -0
  12. data/lib/moodle2cc/canvas/templates/syllabus.html.erb +0 -0
  13. data/lib/moodle2cc/canvas/templates/wiki_content.html.erb +0 -0
  14. data/lib/moodle2cc/canvas/web_content.rb +0 -0
  15. data/lib/moodle2cc/canvas/web_link.rb +0 -0
  16. data/lib/moodle2cc/canvas/wiki.rb +0 -0
  17. data/lib/moodle2cc/cc/assessment.rb +0 -0
  18. data/lib/moodle2cc/cc/assignment.rb +0 -0
  19. data/lib/moodle2cc/cc/course.rb +0 -0
  20. data/lib/moodle2cc/cc/discussion_topic.rb +0 -0
  21. data/lib/moodle2cc/cc/label.rb +0 -0
  22. data/lib/moodle2cc/cc/question.rb +0 -0
  23. data/lib/moodle2cc/cc/resource.rb +0 -0
  24. data/lib/moodle2cc/cc/templates/assignment.html.erb +0 -0
  25. data/lib/moodle2cc/cc/templates/syllabus.html.erb +0 -0
  26. data/lib/moodle2cc/cc/templates/wiki_content.html.erb +0 -0
  27. data/lib/moodle2cc/cc/web_link.rb +0 -0
  28. data/lib/moodle2cc/cc/wiki.rb +0 -0
  29. data/lib/moodle2cc/error.rb +0 -0
  30. data/lib/moodle2cc/logger.rb +0 -0
  31. data/lib/moodle2cc/moodle/course.rb +0 -0
  32. data/lib/moodle2cc/moodle/grade_item.rb +0 -0
  33. data/lib/moodle2cc/moodle/info.rb +0 -0
  34. data/lib/moodle2cc/moodle/question_category.rb +0 -0
  35. data/lib/moodle2cc/moodle/section.rb +0 -0
  36. data/lib/moodle2cc/version.rb +1 -1
  37. metadata +4 -834
  38. data/.gitignore +0 -20
  39. data/.travis.yml +0 -8
  40. data/Changelog +0 -158
  41. data/Gemfile +0 -6
  42. data/Guardfile +0 -20
  43. data/LICENSE +0 -661
  44. data/README.md +0 -112
  45. data/moodle2cc.gemspec +0 -35
  46. data/spec/moodle2cc/canvas_cc/assessment_writer_spec.rb +0 -95
  47. data/spec/moodle2cc/canvas_cc/assignment_writer_spec.rb +0 -74
  48. data/spec/moodle2cc/canvas_cc/calculated_question_writer_spec.rb +0 -88
  49. data/spec/moodle2cc/canvas_cc/canvas_export_writer_spec.rb +0 -26
  50. data/spec/moodle2cc/canvas_cc/cartridge_creator_spec.rb +0 -50
  51. data/spec/moodle2cc/canvas_cc/course_setting_writer_spec.rb +0 -47
  52. data/spec/moodle2cc/canvas_cc/discussion_writer_spec.rb +0 -40
  53. data/spec/moodle2cc/canvas_cc/essay_question_writer_spec.rb +0 -31
  54. data/spec/moodle2cc/canvas_cc/file_meta_writer_spec.rb +0 -57
  55. data/spec/moodle2cc/canvas_cc/ims_manifest_generator_spec.rb +0 -141
  56. data/spec/moodle2cc/canvas_cc/matching_question_writer_spec.rb +0 -51
  57. data/spec/moodle2cc/canvas_cc/models/assessment_spec.rb +0 -131
  58. data/spec/moodle2cc/canvas_cc/models/assignment_spec.rb +0 -45
  59. data/spec/moodle2cc/canvas_cc/models/calculated_question_spec.rb +0 -25
  60. data/spec/moodle2cc/canvas_cc/models/canvas_file_spec.rb +0 -23
  61. data/spec/moodle2cc/canvas_cc/models/canvas_module_spec.rb +0 -16
  62. data/spec/moodle2cc/canvas_cc/models/course_spec.rb +0 -43
  63. data/spec/moodle2cc/canvas_cc/models/discussion_spec.rb +0 -47
  64. data/spec/moodle2cc/canvas_cc/models/discussion_topic_spec.rb +0 -7
  65. data/spec/moodle2cc/canvas_cc/models/module_item_spec.rb +0 -15
  66. data/spec/moodle2cc/canvas_cc/models/page_spec.rb +0 -36
  67. data/spec/moodle2cc/canvas_cc/models/question_spec.rb +0 -8
  68. data/spec/moodle2cc/canvas_cc/models/resource_spec.rb +0 -17
  69. data/spec/moodle2cc/canvas_cc/models/web_content_spec.rb +0 -7
  70. data/spec/moodle2cc/canvas_cc/models/web_link_spec.rb +0 -9
  71. data/spec/moodle2cc/canvas_cc/module_meta_writer_spec.rb +0 -118
  72. data/spec/moodle2cc/canvas_cc/multiple_answers_question_writer_spec.rb +0 -50
  73. data/spec/moodle2cc/canvas_cc/multiple_blanks_question_writer_spec.rb +0 -77
  74. data/spec/moodle2cc/canvas_cc/multiple_choice_question_writer_spec.rb +0 -69
  75. data/spec/moodle2cc/canvas_cc/multiple_dropdowns_question_writer_spec.rb +0 -46
  76. data/spec/moodle2cc/canvas_cc/numerical_question_writer_spec.rb +0 -69
  77. data/spec/moodle2cc/canvas_cc/page_writer_spec.rb +0 -30
  78. data/spec/moodle2cc/canvas_cc/question_bank_writer_spec.rb +0 -43
  79. data/spec/moodle2cc/canvas_cc/question_writer_spec.rb +0 -129
  80. data/spec/moodle2cc/canvas_cc/short_answer_question_writer_spec.rb +0 -50
  81. data/spec/moodle2cc/canvas_cc/text_only_question_writer_spec.rb +0 -23
  82. data/spec/moodle2cc/canvas_cc/true_false_question_writer_spec.rb +0 -62
  83. data/spec/moodle2cc/moodle2/extractor_spec.rb +0 -215
  84. data/spec/moodle2cc/moodle2/models/assignment_spec.rb +0 -36
  85. data/spec/moodle2cc/moodle2/models/book_chapter_spec.rb +0 -11
  86. data/spec/moodle2cc/moodle2/models/book_spec.rb +0 -13
  87. data/spec/moodle2cc/moodle2/models/course_spec.rb +0 -68
  88. data/spec/moodle2cc/moodle2/models/external_url_spec.rb +0 -18
  89. data/spec/moodle2cc/moodle2/models/folder_spec.rb +0 -16
  90. data/spec/moodle2cc/moodle2/models/forum_spec.rb +0 -30
  91. data/spec/moodle2cc/moodle2/models/glossary_entry_spec.rb +0 -25
  92. data/spec/moodle2cc/moodle2/models/glossary_spec.rb +0 -35
  93. data/spec/moodle2cc/moodle2/models/label_spec.rb +0 -84
  94. data/spec/moodle2cc/moodle2/models/moodle2_file_spec.rb +0 -32
  95. data/spec/moodle2cc/moodle2/models/page_spec.rb +0 -23
  96. data/spec/moodle2cc/moodle2/models/quizzes/answer_spec.rb +0 -14
  97. data/spec/moodle2cc/moodle2/models/quizzes/calculated_question_spec.rb +0 -14
  98. data/spec/moodle2cc/moodle2/models/quizzes/multianswer_question_spec.rb +0 -30
  99. data/spec/moodle2cc/moodle2/models/quizzes/numerical_question_spec.rb +0 -12
  100. data/spec/moodle2cc/moodle2/models/quizzes/question_category_spec.rb +0 -29
  101. data/spec/moodle2cc/moodle2/models/quizzes/question_spec.rb +0 -35
  102. data/spec/moodle2cc/moodle2/models/quizzes/quiz_spec.rb +0 -7
  103. data/spec/moodle2cc/moodle2/models/quizzes/random_sa_question_spec.rb +0 -12
  104. data/spec/moodle2cc/moodle2/models/quizzes/true_false_question_spec.rb +0 -16
  105. data/spec/moodle2cc/moodle2/models/resource_spec.rb +0 -22
  106. data/spec/moodle2cc/moodle2/models/section_spec.rb +0 -57
  107. data/spec/moodle2cc/moodle2/parsers/answer_parser_spec.rb +0 -18
  108. data/spec/moodle2cc/moodle2/parsers/assignment_parser_spec.rb +0 -44
  109. data/spec/moodle2cc/moodle2/parsers/book_parser_spec.rb +0 -35
  110. data/spec/moodle2cc/moodle2/parsers/choice_parser_spec.rb +0 -32
  111. data/spec/moodle2cc/moodle2/parsers/course_parser_spec.rb +0 -19
  112. data/spec/moodle2cc/moodle2/parsers/external_url_parser_spec.rb +0 -26
  113. data/spec/moodle2cc/moodle2/parsers/feedback_parser_spec.rb +0 -33
  114. data/spec/moodle2cc/moodle2/parsers/file_parser_spec.rb +0 -35
  115. data/spec/moodle2cc/moodle2/parsers/folder_parser_spec.rb +0 -24
  116. data/spec/moodle2cc/moodle2/parsers/forum_parser_spec.rb +0 -38
  117. data/spec/moodle2cc/moodle2/parsers/glossary_parser_spec.rb +0 -60
  118. data/spec/moodle2cc/moodle2/parsers/label_parser_spec.rb +0 -21
  119. data/spec/moodle2cc/moodle2/parsers/lti_parser_spec.rb +0 -21
  120. data/spec/moodle2cc/moodle2/parsers/page_parser_spec.rb +0 -25
  121. data/spec/moodle2cc/moodle2/parsers/parser_helper_spec.rb +0 -104
  122. data/spec/moodle2cc/moodle2/parsers/question_category_parser_spec.rb +0 -27
  123. data/spec/moodle2cc/moodle2/parsers/question_parsers/calculated_parser_spec.rb +0 -100
  124. data/spec/moodle2cc/moodle2/parsers/question_parsers/match_parser_spec.rb +0 -31
  125. data/spec/moodle2cc/moodle2/parsers/question_parsers/multianswer_parser_spec.rb +0 -16
  126. data/spec/moodle2cc/moodle2/parsers/question_parsers/multichoice_parser_spec.rb +0 -16
  127. data/spec/moodle2cc/moodle2/parsers/question_parsers/numerical_parser_spec.rb +0 -23
  128. data/spec/moodle2cc/moodle2/parsers/question_parsers/question_parser_spec.rb +0 -62
  129. data/spec/moodle2cc/moodle2/parsers/question_parsers/random_sa_parser_spec.rb +0 -18
  130. data/spec/moodle2cc/moodle2/parsers/question_parsers/short_answer_parser_spec.rb +0 -16
  131. data/spec/moodle2cc/moodle2/parsers/question_parsers/true_false_parser_spec.rb +0 -22
  132. data/spec/moodle2cc/moodle2/parsers/questionnaire_parser_spec.rb +0 -36
  133. data/spec/moodle2cc/moodle2/parsers/quiz_parser_spec.rb +0 -68
  134. data/spec/moodle2cc/moodle2/parsers/resource_parser_spec.rb +0 -29
  135. data/spec/moodle2cc/moodle2/parsers/section_parser_spec.rb +0 -27
  136. data/spec/moodle2cc/moodle2/parsers/wiki_parser_spec.rb +0 -23
  137. data/spec/moodle2cc/moodle2converter/assessment_converter_spec.rb +0 -209
  138. data/spec/moodle2cc/moodle2converter/assignment_converter_spec.rb +0 -47
  139. data/spec/moodle2cc/moodle2converter/book_converter_spec.rb +0 -132
  140. data/spec/moodle2cc/moodle2converter/converter_helper_spec.rb +0 -178
  141. data/spec/moodle2cc/moodle2converter/course_converter_spec.rb +0 -24
  142. data/spec/moodle2cc/moodle2converter/discussion_converter_spec.rb +0 -28
  143. data/spec/moodle2cc/moodle2converter/file_converter_spec.rb +0 -20
  144. data/spec/moodle2cc/moodle2converter/folder_converter_spec.rb +0 -44
  145. data/spec/moodle2cc/moodle2converter/glossary_converter_spec.rb +0 -35
  146. data/spec/moodle2cc/moodle2converter/html_converter_spec.rb +0 -191
  147. data/spec/moodle2cc/moodle2converter/label_converter_spec.rb +0 -100
  148. data/spec/moodle2cc/moodle2converter/migrator_spec.rb +0 -258
  149. data/spec/moodle2cc/moodle2converter/page_converter_spec.rb +0 -28
  150. data/spec/moodle2cc/moodle2converter/question_bank_converter_spec.rb +0 -61
  151. data/spec/moodle2cc/moodle2converter/question_converters/calculated_converter_spec.rb +0 -32
  152. data/spec/moodle2cc/moodle2converter/question_converters/matching_converter_spec.rb +0 -24
  153. data/spec/moodle2cc/moodle2converter/question_converters/multichoice_converter_spec.rb +0 -26
  154. data/spec/moodle2cc/moodle2converter/question_converters/multiple_blanks_converter_spec.rb +0 -37
  155. data/spec/moodle2cc/moodle2converter/question_converters/numerical_converter_spec.rb +0 -19
  156. data/spec/moodle2cc/moodle2converter/question_converters/question_converter_spec.rb +0 -81
  157. data/spec/moodle2cc/moodle2converter/question_converters/random_sa_converter_spec.rb +0 -20
  158. data/spec/moodle2cc/moodle2converter/question_converters/true_false_converter_spec.rb +0 -25
  159. data/spec/moodle2cc/moodle2converter/section_converter_spec.rb +0 -211
  160. data/spec/moodle2cc/moodle2converter/wiki_converter_spec.rb +0 -36
  161. data/spec/spec_helper.rb +0 -17
  162. data/spec/support/shared_examples_for_models.rb +0 -26
  163. data/test/acceptance/migrator_test.rb +0 -24
  164. data/test/fixtures/cc.imscc +0 -0
  165. data/test/fixtures/common_cartridge/ims_manifest_simple.xml +0 -45
  166. data/test/fixtures/common_cartridge/schema/cccv1p0.xsd +0 -563
  167. data/test/fixtures/common_cartridge/schema/ccv1p1_imsccauth_v1p1.xsd +0 -203
  168. data/test/fixtures/common_cartridge/schema/ccv1p1_imscp_v1p2_v1p0.xsd +0 -827
  169. data/test/fixtures/common_cartridge/schema/ccv1p1_lommanifest_v1p0.xsd +0 -822
  170. data/test/fixtures/common_cartridge/schema/ccv1p1_lomresource_v1p0.xsd +0 -273
  171. data/test/fixtures/common_cartridge/schema/xml.xsd +0 -286
  172. data/test/fixtures/moodle2/SC.mbz +0 -0
  173. data/test/fixtures/moodle2/backup/activities/assign_12/assign.xml +0 -78
  174. data/test/fixtures/moodle2/backup/activities/assign_12/calendar.xml +0 -21
  175. data/test/fixtures/moodle2/backup/activities/assign_12/comments.xml +0 -3
  176. data/test/fixtures/moodle2/backup/activities/assign_12/completion.xml +0 -3
  177. data/test/fixtures/moodle2/backup/activities/assign_12/filters.xml +0 -7
  178. data/test/fixtures/moodle2/backup/activities/assign_12/grades.xml +0 -38
  179. data/test/fixtures/moodle2/backup/activities/assign_12/grading.xml +0 -9
  180. data/test/fixtures/moodle2/backup/activities/assign_12/inforef.xml +0 -13
  181. data/test/fixtures/moodle2/backup/activities/assign_12/module.xml +0 -25
  182. data/test/fixtures/moodle2/backup/activities/assign_12/roles.xml +0 -7
  183. data/test/fixtures/moodle2/backup/activities/assign_4/assign.xml +0 -78
  184. data/test/fixtures/moodle2/backup/activities/assign_4/calendar.xml +0 -21
  185. data/test/fixtures/moodle2/backup/activities/assign_4/comments.xml +0 -3
  186. data/test/fixtures/moodle2/backup/activities/assign_4/completion.xml +0 -3
  187. data/test/fixtures/moodle2/backup/activities/assign_4/filters.xml +0 -7
  188. data/test/fixtures/moodle2/backup/activities/assign_4/grades.xml +0 -38
  189. data/test/fixtures/moodle2/backup/activities/assign_4/grading.xml +0 -9
  190. data/test/fixtures/moodle2/backup/activities/assign_4/inforef.xml +0 -13
  191. data/test/fixtures/moodle2/backup/activities/assign_4/module.xml +0 -25
  192. data/test/fixtures/moodle2/backup/activities/assign_4/roles.xml +0 -7
  193. data/test/fixtures/moodle2/backup/activities/assignment_42/assignment.xml +0 -28
  194. data/test/fixtures/moodle2/backup/activities/assignment_42/calendar.xml +0 -21
  195. data/test/fixtures/moodle2/backup/activities/assignment_42/comments.xml +0 -3
  196. data/test/fixtures/moodle2/backup/activities/assignment_42/completion.xml +0 -3
  197. data/test/fixtures/moodle2/backup/activities/assignment_42/filters.xml +0 -7
  198. data/test/fixtures/moodle2/backup/activities/assignment_42/grades.xml +0 -38
  199. data/test/fixtures/moodle2/backup/activities/assignment_42/grading.xml +0 -9
  200. data/test/fixtures/moodle2/backup/activities/assignment_42/inforef.xml +0 -13
  201. data/test/fixtures/moodle2/backup/activities/assignment_42/module.xml +0 -25
  202. data/test/fixtures/moodle2/backup/activities/assignment_42/roles.xml +0 -7
  203. data/test/fixtures/moodle2/backup/activities/book_6/book.xml +0 -44
  204. data/test/fixtures/moodle2/backup/activities/book_6/calendar.xml +0 -3
  205. data/test/fixtures/moodle2/backup/activities/book_6/comments.xml +0 -3
  206. data/test/fixtures/moodle2/backup/activities/book_6/completion.xml +0 -3
  207. data/test/fixtures/moodle2/backup/activities/book_6/filters.xml +0 -7
  208. data/test/fixtures/moodle2/backup/activities/book_6/grades.xml +0 -7
  209. data/test/fixtures/moodle2/backup/activities/book_6/inforef.xml +0 -3
  210. data/test/fixtures/moodle2/backup/activities/book_6/module.xml +0 -25
  211. data/test/fixtures/moodle2/backup/activities/book_6/roles.xml +0 -7
  212. data/test/fixtures/moodle2/backup/activities/choice_56547/calendar.xml +0 -3
  213. data/test/fixtures/moodle2/backup/activities/choice_56547/choice.xml +0 -32
  214. data/test/fixtures/moodle2/backup/activities/choice_56547/comments.xml +0 -3
  215. data/test/fixtures/moodle2/backup/activities/choice_56547/completion.xml +0 -3
  216. data/test/fixtures/moodle2/backup/activities/choice_56547/filters.xml +0 -7
  217. data/test/fixtures/moodle2/backup/activities/choice_56547/grades.xml +0 -7
  218. data/test/fixtures/moodle2/backup/activities/choice_56547/inforef.xml +0 -3
  219. data/test/fixtures/moodle2/backup/activities/choice_56547/module.xml +0 -28
  220. data/test/fixtures/moodle2/backup/activities/choice_56547/roles.xml +0 -7
  221. data/test/fixtures/moodle2/backup/activities/feedback_58588/feedback.xml +0 -147
  222. data/test/fixtures/moodle2/backup/activities/feedback_58588/filters.xml +0 -7
  223. data/test/fixtures/moodle2/backup/activities/feedback_58588/grades.xml +0 -7
  224. data/test/fixtures/moodle2/backup/activities/feedback_58588/inforef.xml +0 -3
  225. data/test/fixtures/moodle2/backup/activities/feedback_58588/module.xml +0 -28
  226. data/test/fixtures/moodle2/backup/activities/feedback_58588/roles.xml +0 -7
  227. data/test/fixtures/moodle2/backup/activities/feedback_58589/feedback.xml +0 -147
  228. data/test/fixtures/moodle2/backup/activities/feedback_58589/filters.xml +0 -7
  229. data/test/fixtures/moodle2/backup/activities/feedback_58589/grades.xml +0 -7
  230. data/test/fixtures/moodle2/backup/activities/feedback_58589/inforef.xml +0 -3
  231. data/test/fixtures/moodle2/backup/activities/feedback_58589/module.xml +0 -28
  232. data/test/fixtures/moodle2/backup/activities/feedback_58589/roles.xml +0 -7
  233. data/test/fixtures/moodle2/backup/activities/folder_7/calendar.xml +0 -3
  234. data/test/fixtures/moodle2/backup/activities/folder_7/comments.xml +0 -3
  235. data/test/fixtures/moodle2/backup/activities/folder_7/completion.xml +0 -3
  236. data/test/fixtures/moodle2/backup/activities/folder_7/filters.xml +0 -7
  237. data/test/fixtures/moodle2/backup/activities/folder_7/folder.xml +0 -10
  238. data/test/fixtures/moodle2/backup/activities/folder_7/grades.xml +0 -7
  239. data/test/fixtures/moodle2/backup/activities/folder_7/inforef.xml +0 -20
  240. data/test/fixtures/moodle2/backup/activities/folder_7/module.xml +0 -25
  241. data/test/fixtures/moodle2/backup/activities/folder_7/roles.xml +0 -7
  242. data/test/fixtures/moodle2/backup/activities/forum_13/calendar.xml +0 -3
  243. data/test/fixtures/moodle2/backup/activities/forum_13/comments.xml +0 -3
  244. data/test/fixtures/moodle2/backup/activities/forum_13/completion.xml +0 -3
  245. data/test/fixtures/moodle2/backup/activities/forum_13/filters.xml +0 -7
  246. data/test/fixtures/moodle2/backup/activities/forum_13/forum.xml +0 -34
  247. data/test/fixtures/moodle2/backup/activities/forum_13/grades.xml +0 -7
  248. data/test/fixtures/moodle2/backup/activities/forum_13/inforef.xml +0 -3
  249. data/test/fixtures/moodle2/backup/activities/forum_13/module.xml +0 -25
  250. data/test/fixtures/moodle2/backup/activities/forum_13/roles.xml +0 -7
  251. data/test/fixtures/moodle2/backup/activities/glossary_8/calendar.xml +0 -3
  252. data/test/fixtures/moodle2/backup/activities/glossary_8/comments.xml +0 -3
  253. data/test/fixtures/moodle2/backup/activities/glossary_8/completion.xml +0 -3
  254. data/test/fixtures/moodle2/backup/activities/glossary_8/filters.xml +0 -7
  255. data/test/fixtures/moodle2/backup/activities/glossary_8/glossary.xml +0 -115
  256. data/test/fixtures/moodle2/backup/activities/glossary_8/grades.xml +0 -7
  257. data/test/fixtures/moodle2/backup/activities/glossary_8/inforef.xml +0 -22
  258. data/test/fixtures/moodle2/backup/activities/glossary_8/module.xml +0 -25
  259. data/test/fixtures/moodle2/backup/activities/glossary_8/roles.xml +0 -7
  260. data/test/fixtures/moodle2/backup/activities/hsuforum_1/calendar.xml +0 -3
  261. data/test/fixtures/moodle2/backup/activities/hsuforum_1/comments.xml +0 -3
  262. data/test/fixtures/moodle2/backup/activities/hsuforum_1/completion.xml +0 -3
  263. data/test/fixtures/moodle2/backup/activities/hsuforum_1/filters.xml +0 -7
  264. data/test/fixtures/moodle2/backup/activities/hsuforum_1/grades.xml +0 -10
  265. data/test/fixtures/moodle2/backup/activities/hsuforum_1/hsuforum.xml +0 -34
  266. data/test/fixtures/moodle2/backup/activities/hsuforum_1/inforef.xml +0 -3
  267. data/test/fixtures/moodle2/backup/activities/hsuforum_1/module.xml +0 -25
  268. data/test/fixtures/moodle2/backup/activities/hsuforum_1/roles.xml +0 -7
  269. data/test/fixtures/moodle2/backup/activities/label_11/calendar.xml +0 -3
  270. data/test/fixtures/moodle2/backup/activities/label_11/comments.xml +0 -3
  271. data/test/fixtures/moodle2/backup/activities/label_11/completion.xml +0 -3
  272. data/test/fixtures/moodle2/backup/activities/label_11/filters.xml +0 -7
  273. data/test/fixtures/moodle2/backup/activities/label_11/grades.xml +0 -7
  274. data/test/fixtures/moodle2/backup/activities/label_11/inforef.xml +0 -3
  275. data/test/fixtures/moodle2/backup/activities/label_11/label.xml +0 -9
  276. data/test/fixtures/moodle2/backup/activities/label_11/module.xml +0 -25
  277. data/test/fixtures/moodle2/backup/activities/label_11/roles.xml +0 -7
  278. data/test/fixtures/moodle2/backup/activities/lti_78841/calendar.xml +0 -3
  279. data/test/fixtures/moodle2/backup/activities/lti_78841/filters.xml +0 -7
  280. data/test/fixtures/moodle2/backup/activities/lti_78841/grade_history.xml +0 -5
  281. data/test/fixtures/moodle2/backup/activities/lti_78841/grades.xml +0 -7
  282. data/test/fixtures/moodle2/backup/activities/lti_78841/inforef.xml +0 -3
  283. data/test/fixtures/moodle2/backup/activities/lti_78841/lti.xml +0 -26
  284. data/test/fixtures/moodle2/backup/activities/lti_78841/module.xml +0 -20
  285. data/test/fixtures/moodle2/backup/activities/lti_78841/roles.xml +0 -7
  286. data/test/fixtures/moodle2/backup/activities/page_10/calendar.xml +0 -3
  287. data/test/fixtures/moodle2/backup/activities/page_10/comments.xml +0 -3
  288. data/test/fixtures/moodle2/backup/activities/page_10/completion.xml +0 -3
  289. data/test/fixtures/moodle2/backup/activities/page_10/filters.xml +0 -7
  290. data/test/fixtures/moodle2/backup/activities/page_10/grades.xml +0 -7
  291. data/test/fixtures/moodle2/backup/activities/page_10/inforef.xml +0 -3
  292. data/test/fixtures/moodle2/backup/activities/page_10/module.xml +0 -25
  293. data/test/fixtures/moodle2/backup/activities/page_10/page.xml +0 -16
  294. data/test/fixtures/moodle2/backup/activities/page_10/roles.xml +0 -7
  295. data/test/fixtures/moodle2/backup/activities/page_2/calendar.xml +0 -3
  296. data/test/fixtures/moodle2/backup/activities/page_2/comments.xml +0 -3
  297. data/test/fixtures/moodle2/backup/activities/page_2/completion.xml +0 -3
  298. data/test/fixtures/moodle2/backup/activities/page_2/filters.xml +0 -7
  299. data/test/fixtures/moodle2/backup/activities/page_2/grades.xml +0 -7
  300. data/test/fixtures/moodle2/backup/activities/page_2/inforef.xml +0 -14
  301. data/test/fixtures/moodle2/backup/activities/page_2/module.xml +0 -25
  302. data/test/fixtures/moodle2/backup/activities/page_2/page.xml +0 -21
  303. data/test/fixtures/moodle2/backup/activities/page_2/roles.xml +0 -7
  304. data/test/fixtures/moodle2/backup/activities/questionnaire_9/calendar.xml +0 -3
  305. data/test/fixtures/moodle2/backup/activities/questionnaire_9/comments.xml +0 -3
  306. data/test/fixtures/moodle2/backup/activities/questionnaire_9/completion.xml +0 -3
  307. data/test/fixtures/moodle2/backup/activities/questionnaire_9/filters.xml +0 -7
  308. data/test/fixtures/moodle2/backup/activities/questionnaire_9/grades.xml +0 -7
  309. data/test/fixtures/moodle2/backup/activities/questionnaire_9/inforef.xml +0 -3
  310. data/test/fixtures/moodle2/backup/activities/questionnaire_9/module.xml +0 -25
  311. data/test/fixtures/moodle2/backup/activities/questionnaire_9/questionnaire.xml +0 -245
  312. data/test/fixtures/moodle2/backup/activities/questionnaire_9/roles.xml +0 -7
  313. data/test/fixtures/moodle2/backup/activities/quiz_5/calendar.xml +0 -21
  314. data/test/fixtures/moodle2/backup/activities/quiz_5/comments.xml +0 -3
  315. data/test/fixtures/moodle2/backup/activities/quiz_5/completion.xml +0 -3
  316. data/test/fixtures/moodle2/backup/activities/quiz_5/filters.xml +0 -7
  317. data/test/fixtures/moodle2/backup/activities/quiz_5/grades.xml +0 -38
  318. data/test/fixtures/moodle2/backup/activities/quiz_5/inforef.xml +0 -21
  319. data/test/fixtures/moodle2/backup/activities/quiz_5/module.xml +0 -25
  320. data/test/fixtures/moodle2/backup/activities/quiz_5/quiz.xml +0 -108
  321. data/test/fixtures/moodle2/backup/activities/quiz_5/roles.xml +0 -7
  322. data/test/fixtures/moodle2/backup/activities/resource_14/calendar.xml +0 -3
  323. data/test/fixtures/moodle2/backup/activities/resource_14/comments.xml +0 -3
  324. data/test/fixtures/moodle2/backup/activities/resource_14/completion.xml +0 -3
  325. data/test/fixtures/moodle2/backup/activities/resource_14/filters.xml +0 -7
  326. data/test/fixtures/moodle2/backup/activities/resource_14/grades.xml +0 -7
  327. data/test/fixtures/moodle2/backup/activities/resource_14/inforef.xml +0 -11
  328. data/test/fixtures/moodle2/backup/activities/resource_14/module.xml +0 -25
  329. data/test/fixtures/moodle2/backup/activities/resource_14/resource.xml +0 -16
  330. data/test/fixtures/moodle2/backup/activities/resource_14/roles.xml +0 -7
  331. data/test/fixtures/moodle2/backup/activities/resource_3/calendar.xml +0 -3
  332. data/test/fixtures/moodle2/backup/activities/resource_3/comments.xml +0 -3
  333. data/test/fixtures/moodle2/backup/activities/resource_3/completion.xml +0 -3
  334. data/test/fixtures/moodle2/backup/activities/resource_3/filters.xml +0 -7
  335. data/test/fixtures/moodle2/backup/activities/resource_3/grades.xml +0 -7
  336. data/test/fixtures/moodle2/backup/activities/resource_3/inforef.xml +0 -11
  337. data/test/fixtures/moodle2/backup/activities/resource_3/module.xml +0 -25
  338. data/test/fixtures/moodle2/backup/activities/resource_3/resource.xml +0 -16
  339. data/test/fixtures/moodle2/backup/activities/resource_3/roles.xml +0 -7
  340. data/test/fixtures/moodle2/backup/activities/url_15/calendar.xml +0 -3
  341. data/test/fixtures/moodle2/backup/activities/url_15/comments.xml +0 -3
  342. data/test/fixtures/moodle2/backup/activities/url_15/completion.xml +0 -3
  343. data/test/fixtures/moodle2/backup/activities/url_15/filters.xml +0 -7
  344. data/test/fixtures/moodle2/backup/activities/url_15/grades.xml +0 -7
  345. data/test/fixtures/moodle2/backup/activities/url_15/inforef.xml +0 -3
  346. data/test/fixtures/moodle2/backup/activities/url_15/module.xml +0 -25
  347. data/test/fixtures/moodle2/backup/activities/url_15/roles.xml +0 -7
  348. data/test/fixtures/moodle2/backup/activities/url_15/url.xml +0 -13
  349. data/test/fixtures/moodle2/backup/activities/wiki_58541/calendar.xml +0 -3
  350. data/test/fixtures/moodle2/backup/activities/wiki_58541/completion.xml +0 -3
  351. data/test/fixtures/moodle2/backup/activities/wiki_58541/grades.xml +0 -7
  352. data/test/fixtures/moodle2/backup/activities/wiki_58541/inforef.xml +0 -47
  353. data/test/fixtures/moodle2/backup/activities/wiki_58541/module.xml +0 -28
  354. data/test/fixtures/moodle2/backup/activities/wiki_58541/roles.xml +0 -7
  355. data/test/fixtures/moodle2/backup/activities/wiki_58541/wiki.xml +0 -70
  356. data/test/fixtures/moodle2/backup/completion.xml +0 -3
  357. data/test/fixtures/moodle2/backup/course/blocks/calendar_upcoming_12/block.xml +0 -13
  358. data/test/fixtures/moodle2/backup/course/blocks/calendar_upcoming_12/comments.xml +0 -3
  359. data/test/fixtures/moodle2/backup/course/blocks/calendar_upcoming_12/inforef.xml +0 -3
  360. data/test/fixtures/moodle2/backup/course/blocks/calendar_upcoming_12/roles.xml +0 -7
  361. data/test/fixtures/moodle2/backup/course/blocks/news_items_11/block.xml +0 -13
  362. data/test/fixtures/moodle2/backup/course/blocks/news_items_11/comments.xml +0 -3
  363. data/test/fixtures/moodle2/backup/course/blocks/news_items_11/inforef.xml +0 -3
  364. data/test/fixtures/moodle2/backup/course/blocks/news_items_11/roles.xml +0 -7
  365. data/test/fixtures/moodle2/backup/course/blocks/recent_activity_13/block.xml +0 -13
  366. data/test/fixtures/moodle2/backup/course/blocks/recent_activity_13/comments.xml +0 -3
  367. data/test/fixtures/moodle2/backup/course/blocks/recent_activity_13/inforef.xml +0 -3
  368. data/test/fixtures/moodle2/backup/course/blocks/recent_activity_13/roles.xml +0 -7
  369. data/test/fixtures/moodle2/backup/course/blocks/search_forums_10/block.xml +0 -13
  370. data/test/fixtures/moodle2/backup/course/blocks/search_forums_10/comments.xml +0 -3
  371. data/test/fixtures/moodle2/backup/course/blocks/search_forums_10/inforef.xml +0 -3
  372. data/test/fixtures/moodle2/backup/course/blocks/search_forums_10/roles.xml +0 -7
  373. data/test/fixtures/moodle2/backup/course/calendar.xml +0 -3
  374. data/test/fixtures/moodle2/backup/course/comments.xml +0 -3
  375. data/test/fixtures/moodle2/backup/course/course.xml +0 -37
  376. data/test/fixtures/moodle2/backup/course/enrolments.xml +0 -110
  377. data/test/fixtures/moodle2/backup/course/filters.xml +0 -7
  378. data/test/fixtures/moodle2/backup/course/inforef.xml +0 -13
  379. data/test/fixtures/moodle2/backup/course/roles.xml +0 -7
  380. data/test/fixtures/moodle2/backup/files.xml +0 -531
  381. data/test/fixtures/moodle2/backup/files/50/50bf82ee23d193378b172d6656c08eebb094f006 +0 -0
  382. data/test/fixtures/moodle2/backup/files/51/516ec993971b6e2122b97d15ecc0e08c3eb03828 +0 -0
  383. data/test/fixtures/moodle2/backup/files/64/64643b3bd4274c90e293583030e549e61f4d24fb +0 -0
  384. data/test/fixtures/moodle2/backup/files/67/67859b142e5ba020a84c3166f09d59ef992379a4 +0 -0
  385. data/test/fixtures/moodle2/backup/files/7a/7a647918739d3017a4e272ad97b147b667c00fca +0 -0
  386. data/test/fixtures/moodle2/backup/files/a0/a0f324310c8d8dd9c79458986c4322f5a060a1d9 +0 -0
  387. data/test/fixtures/moodle2/backup/files/a2/a258f0bb582d111a994b35fdc84a71ed1d487310 +0 -0
  388. data/test/fixtures/moodle2/backup/gradebook.xml +0 -57
  389. data/test/fixtures/moodle2/backup/groups.xml +0 -5
  390. data/test/fixtures/moodle2/backup/moodle_backup.xml +0 -572
  391. data/test/fixtures/moodle2/backup/outcomes.xml +0 -3
  392. data/test/fixtures/moodle2/backup/questions.xml +0 -1187
  393. data/test/fixtures/moodle2/backup/roles.xml +0 -11
  394. data/test/fixtures/moodle2/backup/scales.xml +0 -3
  395. data/test/fixtures/moodle2/backup/sections/section_1/inforef.xml +0 -3
  396. data/test/fixtures/moodle2/backup/sections/section_1/section.xml +0 -13
  397. data/test/fixtures/moodle2/backup/sections/section_10/inforef.xml +0 -3
  398. data/test/fixtures/moodle2/backup/sections/section_10/section.xml +0 -13
  399. data/test/fixtures/moodle2/backup/sections/section_2/inforef.xml +0 -3
  400. data/test/fixtures/moodle2/backup/sections/section_2/section.xml +0 -13
  401. data/test/fixtures/moodle2/backup/sections/section_3/inforef.xml +0 -3
  402. data/test/fixtures/moodle2/backup/sections/section_3/section.xml +0 -13
  403. data/test/fixtures/moodle2/backup/sections/section_4/inforef.xml +0 -3
  404. data/test/fixtures/moodle2/backup/sections/section_4/section.xml +0 -13
  405. data/test/fixtures/moodle2/backup/sections/section_5/inforef.xml +0 -3
  406. data/test/fixtures/moodle2/backup/sections/section_5/section.xml +0 -13
  407. data/test/fixtures/moodle2/backup/sections/section_6/inforef.xml +0 -3
  408. data/test/fixtures/moodle2/backup/sections/section_6/section.xml +0 -13
  409. data/test/fixtures/moodle2/backup/sections/section_7/inforef.xml +0 -3
  410. data/test/fixtures/moodle2/backup/sections/section_7/section.xml +0 -13
  411. data/test/fixtures/moodle2/backup/users.xml +0 -104
  412. data/test/fixtures/moodle2/moodle2_shell.mbz +0 -0
  413. data/test/fixtures/moodle_backup/course_files/folder/test.txt +0 -1
  414. data/test/fixtures/moodle_backup/course_files/test.txt +0 -1
  415. data/test/fixtures/moodle_backup/moodle.xml +0 -950
  416. data/test/fixtures/moodle_backup_random_questions/course_files/folder/test.txt +0 -1
  417. data/test/fixtures/moodle_backup_random_questions/course_files/test.txt +0 -1
  418. data/test/fixtures/moodle_backup_random_questions/moodle.xml +0 -357
  419. data/test/test_helper.rb +0 -71
  420. data/test/test_question_helper.rb +0 -122
  421. data/test/test_wiki_helper.rb +0 -21
  422. data/test/unit/canvas/assessment_test.rb +0 -261
  423. data/test/unit/canvas/assignment_test.rb +0 -220
  424. data/test/unit/canvas/converter_test.rb +0 -171
  425. data/test/unit/canvas/course_test.rb +0 -176
  426. data/test/unit/canvas/discussion_topic_test.rb +0 -129
  427. data/test/unit/canvas/label_test.rb +0 -32
  428. data/test/unit/canvas/question_bank_test.rb +0 -92
  429. data/test/unit/canvas/question_group_test.rb +0 -90
  430. data/test/unit/canvas/question_test.rb +0 -876
  431. data/test/unit/canvas/web_content_test.rb +0 -46
  432. data/test/unit/canvas/web_link_test.rb +0 -48
  433. data/test/unit/canvas/wiki_test.rb +0 -74
  434. data/test/unit/cc/assessment_test.rb +0 -48
  435. data/test/unit/cc/assignment_test.rb +0 -72
  436. data/test/unit/cc/cc_helper_test.rb +0 -19
  437. data/test/unit/cc/converter_test.rb +0 -173
  438. data/test/unit/cc/course_test.rb +0 -36
  439. data/test/unit/cc/discussion_topic_test.rb +0 -83
  440. data/test/unit/cc/label_test.rb +0 -29
  441. data/test/unit/cc/question_test.rb +0 -54
  442. data/test/unit/cc/web_content_test.rb +0 -76
  443. data/test/unit/cc/web_link_test.rb +0 -159
  444. data/test/unit/cc/wiki_test.rb +0 -139
  445. data/test/unit/logger_test.rb +0 -33
  446. data/test/unit/migrator_test.rb +0 -67
  447. data/test/unit/moodle/backup_test.rb +0 -30
  448. data/test/unit/moodle/course_test.rb +0 -57
  449. data/test/unit/moodle/grade_item_test.rb +0 -72
  450. data/test/unit/moodle/info_test.rb +0 -21
  451. data/test/unit/moodle/mod_test.rb +0 -301
  452. data/test/unit/moodle/question_category_test.rb +0 -34
  453. data/test/unit/moodle/question_test.rb +0 -193
  454. data/test/unit/moodle/section_test.rb +0 -92
  455. data/test/unit/resource_factory_test.rb +0 -216
@@ -1,28 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter
4
- describe PageConverter do
5
- let(:moodle_page){Moodle2CC::Moodle2::Models::Page.new}
6
-
7
- it 'converts a moodle page to a canvas page' do
8
- moodle_page.id = 'page_id'
9
- moodle_page.name = 'Page Name'
10
- moodle_page.content = '<h2>Page Content</h2>'
11
- moodle_page.visible = true
12
- canvas_page = subject.convert(moodle_page)
13
- expect(canvas_page.identifier).to eq 'm21a63c8004d716c8b91f5b7af780555b9_page'
14
- expect(canvas_page.title).to eq 'Page Name'
15
- expect(canvas_page.workflow_state).to eq 'active'
16
- expect(canvas_page.editing_roles).to eq 'teachers'
17
- expect(canvas_page.body).to eq '<h2>Page Content</h2>'
18
- end
19
-
20
- it 'replaces moodle links with canvas links' do
21
- moodle_page.content = 'page content'
22
- moodle_page.name = 'Page Name'
23
- canvas_page = subject.convert(moodle_page)
24
- expect(canvas_page.body).to eq 'page content'
25
- end
26
-
27
- end
28
- end
@@ -1,61 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Moodle2CC::Moodle2Converter::QuestionBankConverter do
4
- let(:moodle_category) {Moodle2CC::Moodle2::Models::Quizzes::QuestionCategory.new}
5
-
6
- it 'converts a moodle2 question category to a canvas question bank' do
7
- moodle_category.id = 'category id'
8
- moodle_category.name = 'category name'
9
-
10
- canvas_bank = subject.convert(moodle_category)
11
-
12
- expect(canvas_bank.identifier).to eq 'm223458e5bf21c734dcbf0b582c2efd2a0_question_bank'
13
- expect(canvas_bank.title).to eq moodle_category.name
14
- end
15
-
16
- it 'converts moodle2 questions using the correct question converters' do
17
- moodle_category.questions = [Moodle2CC::Moodle2::Models::Quizzes::Question.create('truefalse')]
18
-
19
- canvas_bank = subject.convert(moodle_category)
20
-
21
- expect(canvas_bank.questions.length).to eq 1
22
- expect(canvas_bank.questions.first.question_type).to eq 'true_false_question'
23
- end
24
-
25
- it 'converts random short answer questions into groups of short answer questions' do
26
- question1 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('shortanswer')
27
- question2 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('shortanswer')
28
- question1.id = 'blah'
29
- question2.id = 'bloo'
30
- question3 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('truefalse')
31
- question4 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('randomsamatch')
32
- moodle_category.questions = [question1, question2, question3, question4]
33
-
34
- canvas_bank = subject.convert(moodle_category)
35
-
36
- expect(canvas_bank.questions.count).to eq 3
37
- expect(canvas_bank.question_groups.count).to eq 1
38
-
39
- canvas_group = canvas_bank.question_groups.first
40
- expect(canvas_group.questions.count).to eq 2
41
- expect(canvas_group.questions.detect{|q| q.original_identifier == question1.id}).not_to be_nil
42
- expect(canvas_group.questions.detect{|q| q.original_identifier == question2.id}).not_to be_nil
43
- end
44
-
45
- it 'retains references to random questions but does not convert them' do
46
- question1 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('random')
47
- question2 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('random')
48
- question1.id = 'blah'
49
- question2.id = 'bloo'
50
- question3 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('truefalse')
51
- question4 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('truefalse')
52
- moodle_category.questions = [question1, question2, question3, question4]
53
-
54
- canvas_bank = subject.convert(moodle_category)
55
-
56
- expect(canvas_bank.questions.count).to eq 2
57
- expect(canvas_bank.random_question_references.count).to eq 2
58
- expect(canvas_bank.random_question_references.detect{|q| q == question1.id}).not_to be_nil
59
- expect(canvas_bank.random_question_references.detect{|q| q == question2.id}).not_to be_nil
60
- end
61
- end
@@ -1,32 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe CalculatedConverter do
5
-
6
- it 'converts calculated questions' do
7
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('calculated')
8
-
9
- moodle_question.id = 'something'
10
- answer = Moodle2CC::Moodle2::Models::Quizzes::Answer.new
11
- answer.id = 'blah'
12
- moodle_question.answers = [answer]
13
- moodle_question.dataset_definitions = ['mock datasets']
14
- moodle_question.var_sets = ['mock varsets']
15
- moodle_question.correct_answer_format = '1'
16
- moodle_question.correct_answer_length = '2'
17
- moodle_question.tolerance = '3'
18
-
19
- converted_question = QuestionConverter.new.convert(moodle_question)
20
-
21
- expect(converted_question.original_identifier).to eq moodle_question.id
22
- expect(converted_question.answers.count).to eq moodle_question.answers.count
23
- expect(converted_question.answers.first.id).to eq moodle_question.answers.first.id
24
- expect(converted_question.dataset_definitions).to eq moodle_question.dataset_definitions
25
- expect(converted_question.var_sets).to eq moodle_question.var_sets
26
- expect(converted_question.correct_answer_format).to eq moodle_question.correct_answer_format
27
- expect(converted_question.correct_answer_length).to eq moodle_question.correct_answer_length
28
- expect(converted_question.tolerance).to eq moodle_question.tolerance
29
- end
30
-
31
- end
32
- end
@@ -1,24 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe MatchingConverter do
5
-
6
- it 'converts matching questions' do
7
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('match')
8
- moodle_question.id = 'something'
9
-
10
- moodle_question.matches = [{
11
- :question_text => "<p>This is a bunch of html</p>",
12
- :answer_text => 'blah answer'
13
- }]
14
-
15
- converted_question = QuestionConverter.new.convert(moodle_question)
16
-
17
- expect(converted_question.original_identifier).to eq moodle_question.id
18
-
19
- expected_text = "This is a bunch of html"
20
- expect(converted_question.matches.first[:question_text]).to include(expected_text)
21
- expect(converted_question.matches.first[:answer_text]).to eq moodle_question.matches.first[:answer_text]
22
- end
23
- end
24
- end
@@ -1,26 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe MultichoiceConverter do
5
-
6
- it 'converts multiple choice questions' do
7
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('multichoice')
8
- moodle_question.id = 'something'
9
- moodle_question.single = true
10
-
11
- converted_question = QuestionConverter.new.convert(moodle_question)
12
-
13
- expect(converted_question.question_type).to eq 'multiple_choice_question'
14
- end
15
-
16
- it 'converts multiple answer questions' do
17
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('multichoice')
18
- moodle_question.id = 'something'
19
- moodle_question.single = false
20
-
21
- converted_question = QuestionConverter.new.convert(moodle_question)
22
-
23
- expect(converted_question.question_type).to eq 'multiple_answers_question'
24
- end
25
- end
26
- end
@@ -1,37 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe MultipleBlanksConverter do
5
-
6
- it 'converts multianswer questions' do
7
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('multianswer')
8
- moodle_question.id = 'something'
9
- moodle_question.question_text = 'the first question is: {#1} and the second is: {#2}'
10
-
11
- embedded_question1 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('multichoice')
12
- answer1 = Moodle2CC::Moodle2::Models::Quizzes::Answer.new
13
- answer1.id = '1'
14
- answer1.fraction = 1
15
- ignored_answer = Moodle2CC::Moodle2::Models::Quizzes::Answer.new
16
- ignored_answer.fraction = 0
17
- embedded_question1.answers = [answer1, ignored_answer]
18
-
19
- embedded_question2 = Moodle2CC::Moodle2::Models::Quizzes::Question.create('multichoice')
20
- answer2 = Moodle2CC::Moodle2::Models::Quizzes::Answer.new
21
- answer2.id = '2'
22
- answer2.fraction = 1
23
- embedded_question2.answers = [answer2]
24
-
25
- moodle_question.embedded_questions = [embedded_question1, embedded_question2]
26
-
27
- converted_question = QuestionConverter.new.convert(moodle_question)
28
-
29
- expect(converted_question.original_identifier).to eq moodle_question.id
30
- expect(converted_question.answers.count).to eq 2
31
- expect(converted_question.answers.detect{|a| a.id == answer1.id}.resp_ident).to eq 'response1'
32
- expect(converted_question.answers.detect{|a| a.id == answer2.id}.resp_ident).to eq 'response2'
33
- expect(converted_question.material).to eq 'the first question is: [response1] and the second is: [response2]'
34
- end
35
-
36
- end
37
- end
@@ -1,19 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe NumericalConverter do
5
-
6
- it 'converts numerical questions' do
7
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('numerical')
8
- moodle_question.id = 'something'
9
-
10
- moodle_question.tolerances = [:mock_tolerances]
11
-
12
- converted_question = QuestionConverter.new.convert(moodle_question)
13
-
14
- expect(converted_question.original_identifier).to eq moodle_question.id
15
- expect(converted_question.tolerances).to eq moodle_question.tolerances
16
- end
17
-
18
- end
19
- end
@@ -1,81 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe QuestionConverter do
5
-
6
- class FooBarConverter < QuestionConverter
7
- end
8
-
9
- it 'registers a question type for conversion' do
10
- converter = FooBarConverter.new
11
- converter.stub(:convert_question)
12
-
13
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.new
14
- moodle_question.type = 'foobar'
15
-
16
- FooBarConverter.stub(:new).and_return(converter)
17
- FooBarConverter.register_converter_type 'foobar'
18
- QuestionConverter.new.convert(moodle_question)
19
- expect(converter).to have_received(:convert_question)
20
- end
21
-
22
- it 'raises an exception for unknown converter types' do
23
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.new
24
- moodle_question.type = 'nonexistenttype'
25
-
26
- expect { QuestionConverter.new.convert(moodle_question) }.to raise_exception
27
- end
28
-
29
- it 'converts common question attributes' do
30
- converter = QuestionConverter.new
31
- mock_canvas_question = Moodle2CC::CanvasCC::Models::Question.new
32
- converter.stub(:create_canvas_question).and_return(mock_canvas_question)
33
-
34
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.new
35
- moodle_question.id = 42
36
- moodle_question.name = 'has anyone really been far even as decided to use even go want to do look more like'
37
- answer = Moodle2CC::Moodle2::Models::Quizzes::Answer.new
38
- answer.id = 'blah'
39
- moodle_question.answers = [answer]
40
- moodle_question.max_mark = 2
41
- moodle_question.general_feedback = 'random stuff'
42
- moodle_question.question_text = 'other stuff'
43
-
44
- converted_question = converter.convert_question(moodle_question)
45
-
46
- expect(converted_question.original_identifier).to eq moodle_question.id
47
- expect(converted_question.title).to eq moodle_question.name
48
- expect(converted_question.answers.count).to eq moodle_question.answers.count
49
- expect(converted_question.answers.first.id).to eq moodle_question.answers.first.id
50
- expect(converted_question.general_feedback).to eq moodle_question.general_feedback
51
- expect(converted_question.points_possible).to eq moodle_question.max_mark
52
- expect(converted_question.material).to eq moodle_question.question_text
53
- end
54
-
55
- it 'converts markdown text in question to html material' do
56
- converter = QuestionConverter.new
57
- mock_canvas_question = Moodle2CC::CanvasCC::Models::Question.new
58
- converter.stub(:create_canvas_question).and_return(mock_canvas_question)
59
-
60
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.new
61
- moodle_question.question_text = "This is **bold** and this is _italic_"
62
- moodle_question.question_text_format = 4 # markdown
63
-
64
- converted_question = converter.convert_question(moodle_question)
65
-
66
- expected_text = "<p>This is <strong>bold</strong> and this is <em>italic</em></p>\n"
67
- expect(converted_question.material).to eq expected_text
68
- end
69
-
70
- it 'converts standard questions' do
71
- converter = QuestionConverter.new
72
-
73
- converted_question = converter.convert(Moodle2CC::Moodle2::Models::Quizzes::Question.create('essay'))
74
- expect(converted_question.question_type).to eq 'essay_question'
75
-
76
- converted_question = converter.convert(Moodle2CC::Moodle2::Models::Quizzes::Question.create('shortanswer'))
77
- expect(converted_question.question_type).to eq 'short_answer_question'
78
- end
79
-
80
- end
81
- end
@@ -1,20 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe RandomSAConverter do
5
-
6
- it 'converts random short answer questions into question groups' do
7
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('randomsamatch')
8
- moodle_question.id = 'something'
9
- moodle_question.name = 'soemthing else '
10
- moodle_question.choose = '2'
11
-
12
- converted_group = QuestionConverter.new.convert(moodle_question)
13
-
14
- expect(converted_group.is_a?(Moodle2CC::CanvasCC::Models::QuestionGroup)).to be_true
15
- expect(converted_group.identifier).to eq moodle_question.id
16
- expect(converted_group.title).to eq moodle_question.name
17
- expect(converted_group.selection_number).to eq moodle_question.choose
18
- end
19
- end
20
- end
@@ -1,25 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC::Moodle2Converter::QuestionConverters
4
- describe TrueFalseConverter do
5
-
6
- it 'converts truefalse questions' do
7
- moodle_question = Moodle2CC::Moodle2::Models::Quizzes::Question.create('truefalse')
8
- moodle_question.id = 'something'
9
-
10
- true_answer = Moodle2CC::Moodle2::Models::Quizzes::Answer.new
11
- true_answer.id = 'tr00'
12
- false_answer = Moodle2CC::Moodle2::Models::Quizzes::Answer.new
13
- false_answer.id = 'furse'
14
- moodle_question.answers = [true_answer, false_answer]
15
- moodle_question.true_answer = true_answer.id
16
- moodle_question.false_answer = false_answer.id
17
-
18
- converted_question = QuestionConverter.new.convert(moodle_question)
19
-
20
- expect(converted_question.original_identifier).to eq moodle_question.id
21
- expect(converted_question.answers.count).to eq 2
22
- end
23
-
24
- end
25
- end
@@ -1,211 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Moodle2CC
4
- describe Moodle2Converter::SectionConverter do
5
- let(:moodle_section) { Moodle2::Models::Section.new }
6
-
7
- describe '#convert' do
8
- it 'should convert a moodle section to a canvas module' do
9
- moodle_section.id = 'section_id'
10
- moodle_section.name = 'section_name'
11
- moodle_section.visible = false
12
- moodle_section.position = 1
13
- canvas_module = subject.convert(moodle_section)
14
- expect(canvas_module.identifier).to eq('m2730f6511535a1e4cf13e886e52b21dc9_module')
15
- expect(canvas_module.title).to eq('section_name')
16
- expect(canvas_module.workflow_state).to eq('unpublished')
17
- end
18
-
19
- it 'converts all activities to module_items' do
20
- subject.stub(:convert_activity) { [:module_item] }
21
- 3.times { moodle_section.activities << [:activity] }
22
- canvas_module = subject.convert(moodle_section)
23
-
24
- expect(canvas_module.module_items).to eq [:module_item, :module_item, :module_item]
25
- end
26
-
27
- it 'creates a module item for the summary page' do
28
- subject.stub(:convert_activity) { [:module_item] }
29
- moodle_section.summary = 'Summary Content'
30
-
31
- canvas_module = subject.convert(moodle_section)
32
-
33
- expect(canvas_module.module_items).to eq [:module_item]
34
- end
35
-
36
- it 'does not create a module item for the summary page when there is no summary content' do
37
- canvas_module = subject.convert(moodle_section)
38
-
39
- expect(canvas_module.module_items).to eq []
40
- end
41
- end
42
-
43
- describe '#convert_to_summary_page' do
44
- it 'converts the section summary to a page' do
45
- moodle_section.name = 'Name'
46
- moodle_section.summary = 'Summary Content'
47
- moodle_section.visible = true
48
-
49
- page = subject.convert_to_summary_page(moodle_section)
50
-
51
- expect(page).to be_a CanvasCC::Models::Page
52
- expect(page.identifier).to eq 'm2d41d8cd98f00b204e9800998ecf8427e_summary_page'
53
- expect(page.title).to eq 'Name'
54
- expect(page.workflow_state).to eq 'active'
55
- expect(page.editing_roles).to eq 'teachers'
56
- expect(page.body).to eq 'Summary Content'
57
- end
58
- end
59
-
60
- describe '#convert_activity' do
61
- it 'uses the default converter for pages' do
62
- subject.stub(:convert_to_module_items) { [:module_item] }
63
- module_items = subject.convert_activity(Moodle2::Models::Page.new)
64
-
65
- expect(module_items).to eq [:module_item]
66
- end
67
-
68
- it 'uses the default converter for sections' do
69
- subject.stub(:convert_to_module_items) { [:module_item] }
70
- module_items = subject.convert_activity(moodle_section)
71
-
72
- expect(module_items).to eq [:module_item]
73
- end
74
-
75
- it 'uses the book converter for books' do
76
- Moodle2Converter::BookConverter.any_instance.stub(:convert_to_module_items) { [:module_item] }
77
- module_items = subject.convert_activity(Moodle2::Models::Book.new)
78
-
79
- expect(module_items).to eq [:module_item]
80
- end
81
-
82
- it 'uses the label converter for labels' do
83
- Moodle2Converter::LabelConverter.any_instance.stub(:convert_to_module_items) { [:module_item] }
84
- module_items = subject.convert_activity(Moodle2::Models::Label.new)
85
-
86
- expect(module_items).to eq [:module_item]
87
- end
88
- end
89
-
90
- describe '#convert_to_module_items' do
91
- it 'converts a moodle page to a module item' do
92
- subject.stub(:generate_unique_identifier) { 'some_random_id' }
93
-
94
- moodle_page = Moodle2::Models::Page.new
95
- moodle_page.id = '1'
96
- moodle_page.name = 'page title'
97
- moodle_page.visible = true
98
-
99
- module_items = subject.convert_to_module_items(moodle_page)
100
- expect(module_items.size).to eq 1
101
-
102
- module_item = module_items.first
103
-
104
- expect(module_item.identifier).to eq 'some_random_id'
105
- expect(module_item.workflow_state).to eq 'active'
106
- expect(module_item.identifierref).to eq 'm2c4ca4238a0b923820dcc509a6f75849b_page'
107
- expect(module_item.content_type).to eq 'WikiPage'
108
- expect(module_item.indent).to eq '0'
109
- end
110
-
111
- it 'converts a moodle section to a module item' do
112
- subject.stub(:generate_unique_identifier) { 'some_random_id' }
113
-
114
- moodle_section.id = '1'
115
- moodle_section.name = 'page title'
116
- moodle_section.visible = false
117
-
118
- module_items = subject.convert_to_module_items(moodle_section)
119
- expect(module_items.size).to eq 1
120
-
121
- module_item = module_items.first
122
-
123
- expect(module_item.identifier).to eq 'some_random_id'
124
- expect(module_item.workflow_state).to eq 'unpublished'
125
- expect(module_item.title).to eq 'page title'
126
- expect(module_item.identifierref).to eq 'm2c4ca4238a0b923820dcc509a6f75849b_summary_page'
127
- expect(module_item.content_type).to eq 'WikiPage'
128
- expect(module_item.indent).to eq '0'
129
- end
130
-
131
- it 'converts a moodle external url to a external url module item' do
132
- subject.stub(:generate_unique_identifier) { 'some_random_id' }
133
-
134
- moodle_url = Moodle2::Models::ExternalUrl.new
135
- moodle_url.id = '1'
136
- moodle_url.name = 'url title'
137
- moodle_url.visible = true
138
- moodle_url.external_url = 'http://example.com'
139
-
140
- module_items = subject.convert_to_module_items(moodle_url)
141
- expect(module_items.size).to eq 1
142
-
143
- module_item = module_items.first
144
-
145
- expect(module_item.identifier).to eq 'some_random_id'
146
- expect(module_item.workflow_state).to eq 'active'
147
- expect(module_item.title).to eq 'url title'
148
- expect(module_item.identifierref).to eq 'some_random_id'
149
- expect(module_item.content_type).to eq 'ExternalUrl'
150
- expect(module_item.url).to eq 'http://example.com'
151
- expect(module_item.indent).to eq '0'
152
- end
153
-
154
- it 'converts a moodle resource to a file module item' do
155
- moodle_resource = Moodle2::Models::Resource.new
156
- moodle_file = Moodle2::Models::Moodle2File.new
157
- moodle_file.content_hash = 'some_id'
158
- moodle_resource.file = moodle_file
159
-
160
- module_items = subject.convert_to_module_items(moodle_resource)
161
- expect(module_items.size).to eq 1
162
-
163
- module_item = module_items.first
164
-
165
- expect(module_item.identifierref).to eq 'some_id'
166
- end
167
-
168
- it 'converts a moodle LTI item to an external tool module item' do
169
- subject.stub(:generate_unique_identifier) { 'some_random_id' }
170
-
171
- moodle_lti = Moodle2::Models::Lti.new
172
- moodle_lti.id = 1
173
- moodle_lti.name = 'Whatever'
174
- moodle_lti.url = 'http://whatever.invalid'
175
- moodle_lti.visible = false
176
-
177
- module_items = subject.convert_to_module_items(moodle_lti)
178
- expect(module_items.size).to eq 1
179
-
180
- expect(module_items[0].identifier).to eq 'some_random_id'
181
- expect(module_items[0].workflow_state).to eq 'unpublished'
182
- expect(module_items[0].title).to eq 'Whatever'
183
- expect(module_items[0].identifierref).to eq 'some_random_id'
184
- expect(module_items[0].content_type).to eq 'ContextExternalTool'
185
- expect(module_items[0].url).to eq 'http://whatever.invalid'
186
- expect(module_items[0].indent).to eq '0'
187
- end
188
-
189
- it 'infers a default name for an untitled section' do
190
- moodle_section.id = 'section_id'
191
- moodle_section.name = ''
192
- canvas_module = subject.convert(moodle_section)
193
- expect(canvas_module.title).to eq('Untitled Module')
194
- end
195
-
196
- it 'uses the first label as a title if needed' do
197
- moodle_section.id = 'section_id'
198
- moodle_section.name = ''
199
- label = Moodle2::Models::Label.new
200
- label.module_id = 'section_id'
201
- label.id = 'label_id'
202
- label.name = 'blah'
203
- moodle_section.activities << label
204
- canvas_module = subject.convert(moodle_section)
205
- expect(canvas_module.title).to eq 'blah'
206
- expect(canvas_module.module_items).to be_empty
207
- end
208
-
209
- end
210
- end
211
- end