qti 0.9.11 → 0.9.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (138) hide show
  1. checksums.yaml +4 -4
  2. data/lib/qti/models/base.rb +16 -0
  3. data/lib/qti/version.rb +1 -1
  4. data/spec/fixtures/mathml/numeric_1.2.xml +93 -0
  5. data/spec/gemfiles/nokogiri-1.6.gemfile.lock +16 -12
  6. data/spec/gemfiles/nokogiri-1.8.gemfile.lock +14 -10
  7. data/spec/lib/qti/models/base_spec.rb +18 -5
  8. metadata +19 -263
  9. data/spec/fixtures/certica/images/145222.jpg +0 -0
  10. data/spec/fixtures/certica/images/151492.jpg +0 -0
  11. data/spec/fixtures/certica/images/152778.jpg +0 -0
  12. data/spec/fixtures/certica/images/161098.jpg +0 -0
  13. data/spec/fixtures/certica/images/162043.jpg +0 -0
  14. data/spec/fixtures/certica/images/162044.jpg +0 -0
  15. data/spec/fixtures/certica/images/174455.jpg +0 -0
  16. data/spec/fixtures/certica/images/180170.jpg +0 -0
  17. data/spec/fixtures/certica/images/182122.jpg +0 -0
  18. data/spec/fixtures/certica/images/182649.jpg +0 -0
  19. data/spec/fixtures/certica/images/186287.png +0 -0
  20. data/spec/fixtures/certica/images/186288.png +0 -0
  21. data/spec/fixtures/certica/images/186289.png +0 -0
  22. data/spec/fixtures/certica/images/186747.jpg +0 -0
  23. data/spec/fixtures/certica/images/187382.png +0 -0
  24. data/spec/fixtures/certica/images/187383.png +0 -0
  25. data/spec/fixtures/certica/images/187384.png +0 -0
  26. data/spec/fixtures/certica/images/187593.png +0 -0
  27. data/spec/fixtures/certica/images/194343.jpg +0 -0
  28. data/spec/fixtures/certica/images/194354.png +0 -0
  29. data/spec/fixtures/certica/imsmanifest.xml +0 -1
  30. data/spec/fixtures/certica/passages/4336.htm +0 -1
  31. data/spec/fixtures/certica/passages/6428.htm +0 -2
  32. data/spec/fixtures/certica/passages/6546.htm +0 -1
  33. data/spec/fixtures/certica/qti_013823.xml +0 -1
  34. data/spec/fixtures/certica/qti_037457.xml +0 -1
  35. data/spec/fixtures/certica/qti_037468.xml +0 -1
  36. data/spec/fixtures/certica/qti_037478.xml +0 -1
  37. data/spec/fixtures/certica/qti_037498.xml +0 -1
  38. data/spec/fixtures/certica/qti_037995.xml +0 -1
  39. data/spec/fixtures/certica/qti_038003.xml +0 -1
  40. data/spec/fixtures/certica/qti_038630.xml +0 -1
  41. data/spec/fixtures/certica/qti_038881.xml +0 -1
  42. data/spec/fixtures/certica/qti_038907.xml +0 -1
  43. data/spec/fixtures/certica/qti_039251.xml +0 -1
  44. data/spec/fixtures/certica/qti_039354.xml +0 -1
  45. data/spec/fixtures/certica/qti_039441.xml +0 -1
  46. data/spec/fixtures/certica/qti_204657.xml +0 -1
  47. data/spec/fixtures/certica/qti_213769.xml +0 -4
  48. data/spec/fixtures/certica/qti_215227.xml +0 -6
  49. data/spec/fixtures/certica/qti_217622.xml +0 -1
  50. data/spec/fixtures/certica/qti_227383.xml +0 -1
  51. data/spec/fixtures/certica/qti_227419.xml +0 -1
  52. data/spec/fixtures/certica/qti_228253.xml +0 -1
  53. data/spec/fixtures/certica/qti_228444.xml +0 -1
  54. data/spec/fixtures/certica/qti_228820.xml +0 -1
  55. data/spec/fixtures/certica/qti_229874.xml +0 -1
  56. data/spec/fixtures/certica/qti_400240.xml +0 -1
  57. data/spec/fixtures/certica/qti_600842.xml +0 -1
  58. data/spec/fixtures/certica/qti_600940.xml +0 -1
  59. data/spec/fixtures/certica/qti_EMP000001.xml +0 -1
  60. data/spec/fixtures/certica/qti_LBS10884.xml +0 -4
  61. data/spec/fixtures/certica/qti_MMP000006.xml +0 -3
  62. data/spec/fixtures/certica/qti_MMP000007.xml +0 -9
  63. data/spec/fixtures/certica/stylesheet/scip.css +0 -42
  64. data/spec/fixtures/test_qti_2.1.check/images/145222.jpg +0 -0
  65. data/spec/fixtures/test_qti_2.1.check/images/151492.jpg +0 -0
  66. data/spec/fixtures/test_qti_2.1.check/images/152778.jpg +0 -0
  67. data/spec/fixtures/test_qti_2.1.check/images/161098.jpg +0 -0
  68. data/spec/fixtures/test_qti_2.1.check/images/162043.jpg +0 -0
  69. data/spec/fixtures/test_qti_2.1.check/images/162044.jpg +0 -0
  70. data/spec/fixtures/test_qti_2.1.check/images/174455.jpg +0 -0
  71. data/spec/fixtures/test_qti_2.1.check/images/180170.jpg +0 -0
  72. data/spec/fixtures/test_qti_2.1.check/images/182122.jpg +0 -0
  73. data/spec/fixtures/test_qti_2.1.check/images/182649.jpg +0 -0
  74. data/spec/fixtures/test_qti_2.1.check/images/186287.png +0 -0
  75. data/spec/fixtures/test_qti_2.1.check/images/186288.png +0 -0
  76. data/spec/fixtures/test_qti_2.1.check/images/186289.png +0 -0
  77. data/spec/fixtures/test_qti_2.1.check/images/186747.jpg +0 -0
  78. data/spec/fixtures/test_qti_2.1.check/images/187382.png +0 -0
  79. data/spec/fixtures/test_qti_2.1.check/images/187383.png +0 -0
  80. data/spec/fixtures/test_qti_2.1.check/images/187384.png +0 -0
  81. data/spec/fixtures/test_qti_2.1.check/images/187593.png +0 -0
  82. data/spec/fixtures/test_qti_2.1.check/images/194343.jpg +0 -0
  83. data/spec/fixtures/test_qti_2.1.check/images/194354.png +0 -0
  84. data/spec/fixtures/test_qti_2.1.check/imsmanifest.xml +0 -1
  85. data/spec/fixtures/test_qti_2.1.check/passages/4336.htm +0 -1
  86. data/spec/fixtures/test_qti_2.1.check/passages/6428.htm +0 -2
  87. data/spec/fixtures/test_qti_2.1.check/passages/6546.htm +0 -1
  88. data/spec/fixtures/test_qti_2.1.check/qti_013823.xml +0 -1
  89. data/spec/fixtures/test_qti_2.1.check/qti_037457.xml +0 -1
  90. data/spec/fixtures/test_qti_2.1.check/qti_037468.xml +0 -1
  91. data/spec/fixtures/test_qti_2.1.check/qti_037478.xml +0 -1
  92. data/spec/fixtures/test_qti_2.1.check/qti_037498.xml +0 -1
  93. data/spec/fixtures/test_qti_2.1.check/qti_037995.xml +0 -1
  94. data/spec/fixtures/test_qti_2.1.check/qti_038003.xml +0 -1
  95. data/spec/fixtures/test_qti_2.1.check/qti_038630.xml +0 -1
  96. data/spec/fixtures/test_qti_2.1.check/qti_038881.xml +0 -1
  97. data/spec/fixtures/test_qti_2.1.check/qti_038907.xml +0 -1
  98. data/spec/fixtures/test_qti_2.1.check/qti_039251.xml +0 -1
  99. data/spec/fixtures/test_qti_2.1.check/qti_039354.xml +0 -1
  100. data/spec/fixtures/test_qti_2.1.check/qti_039441.xml +0 -1
  101. data/spec/fixtures/test_qti_2.1.check/qti_204657.xml +0 -1
  102. data/spec/fixtures/test_qti_2.1.check/qti_213769.xml +0 -4
  103. data/spec/fixtures/test_qti_2.1.check/qti_215227.xml +0 -6
  104. data/spec/fixtures/test_qti_2.1.check/qti_217622.xml +0 -1
  105. data/spec/fixtures/test_qti_2.1.check/qti_227383.xml +0 -1
  106. data/spec/fixtures/test_qti_2.1.check/qti_227419.xml +0 -1
  107. data/spec/fixtures/test_qti_2.1.check/qti_228253.xml +0 -1
  108. data/spec/fixtures/test_qti_2.1.check/qti_228444.xml +0 -1
  109. data/spec/fixtures/test_qti_2.1.check/qti_228820.xml +0 -1
  110. data/spec/fixtures/test_qti_2.1.check/qti_229874.xml +0 -1
  111. data/spec/fixtures/test_qti_2.1.check/qti_400240.xml +0 -1
  112. data/spec/fixtures/test_qti_2.1.check/qti_600842.xml +0 -1
  113. data/spec/fixtures/test_qti_2.1.check/qti_600940.xml +0 -1
  114. data/spec/fixtures/test_qti_2.1.check/qti_EMP000001.xml +0 -1
  115. data/spec/fixtures/test_qti_2.1.check/qti_LBS10884.xml +0 -4
  116. data/spec/fixtures/test_qti_2.1.check/qti_MMP000006.xml +0 -3
  117. data/spec/fixtures/test_qti_2.1.check/qti_MMP000007.xml +0 -9
  118. data/spec/fixtures/test_qti_2.1.check/stylesheet/scip.css +0 -42
  119. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_01/qtiv2p1_EntryTest_VE_IP_01.xml +0 -67
  120. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/apip_VE_IP_02.css +0 -38
  121. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/apip_VE_IP_02.svg +0 -28
  122. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/qtiv2p1_EntryTest_VE_IP_02.xml +0 -121
  123. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_03/qtiv2p1_EntryTest_VE_IP_03.xml +0 -129
  124. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_04/qtiv2p1_EntryTest_VE_IP_04.xml +0 -69
  125. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_croc.png +0 -0
  126. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_flamingos.png +0 -0
  127. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_title.png +0 -0
  128. data/spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/qtiv2p1_EntryTest_VE_IP_05.xml +0 -139
  129. data/spec/fixtures/test_qti_2.1.old/Tests/Test_VE_TP_06/qtiv2p1_EntryTest_VE_TP_06.xml +0 -200
  130. data/spec/fixtures/test_qti_2.1.old/imsmanifest.xml +0 -264
  131. data/spec/fixtures/test_qti_2.1.zip.old +0 -0
  132. data/spec/fixtures/test_qti_2.1/example/graphicOrder.xml +0 -32
  133. data/spec/fixtures/test_qti_2.1/example/hotspot.xml +0 -26
  134. data/spec/gemfiles/rails-4.2.gemfile.lock +0 -204
  135. data/spec/gemfiles/rails-5.0.gemfile.lock +0 -210
  136. data/spec/gemfiles/rails-5.1.gemfile.lock +0 -210
  137. data/spec/gemfiles/sanitize-4.2.gemfile.lock +0 -145
  138. data/spec/gemfiles/sanitize-4.5.gemfile.lock +0 -145
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 21e5b11ea97c8b11e4510ac68233a48f05bfc4a3
4
- data.tar.gz: '080710312ebd438b5ad659ded9f34343631d5897'
3
+ metadata.gz: ecb7ff4bd1d4f7dc9238fb727d9d6d111a8534ee
4
+ data.tar.gz: e63c12313dc8ced9fb35262dedce19d670f0ed7b
5
5
  SHA512:
6
- metadata.gz: 6b605c4bfe687b95b9aa5c5466f0ac32a54bbec345ef4fc910e6657d01a6bef4bc44418a0b56ca69cf9889f92ff6c1a6a936c93cd86f4063c19c90dd7ce8c635
7
- data.tar.gz: 2ca9487f4de60bd57267d559eb0be9f03362449fc36ebe327c5306f60c177f8b3c999de2e62f237d2824c7b8bf94302fa7d11ada311ff4a33eb5a1ee4e596469
6
+ metadata.gz: 808c41b55051f1a7b4501a18385a5e56c9d06019899f5eeb77c333129e61f3ae1247862ee7676d77a38e7d052004433eab6657e541533a31f049cf6a568d05d3
7
+ data.tar.gz: 9432df6fdde51711156dc520027ec524ac890028876ff1c6661a334a78c662031400a965f94760daf4de8dc44caf65373d792e9dc7487a741f5087934509184d
@@ -1,6 +1,7 @@
1
1
  require 'nokogiri'
2
2
  require 'sanitize'
3
3
  require 'pathname'
4
+ require 'mathml2latex'
4
5
 
5
6
  module Qti
6
7
  class ParseError < StandardError; end
@@ -62,6 +63,21 @@ module Qti
62
63
  self.package_root = package_root || File.dirname(path)
63
64
  @doc = html ? parse_html(File.read(path)) : parse_xml(File.read(path))
64
65
  raise ArgumentError unless @doc
66
+ preprocess_xml_doc(@doc) unless html
67
+ end
68
+
69
+ def preprocess_xml_doc(xml_doc)
70
+ converter = Mathml2latex::Converter.new
71
+ converter.replace_with_latex(xml_doc)
72
+ nodes = xml_doc.xpath('//mm:latex', 'mm' => Mathml2latex::INSTUCTURE_LATEX_NS)
73
+
74
+ nodes.each do |node|
75
+ # convert all #160 space to regular #32 whitespace
76
+ # latex parser won't work for #160 space
77
+ text = node.text.gsub(/\u00a0/, ' ')
78
+ latex_string = "&#160;\\(#{text}\\)&#160;"
79
+ node.replace(latex_string)
80
+ end
65
81
  end
66
82
 
67
83
  def xpath_with_single_check(xpath)
@@ -1,3 +1,3 @@
1
1
  module Qti
2
- VERSION = '0.9.11'.freeze
2
+ VERSION = '0.9.12'.freeze
3
3
  end
@@ -0,0 +1,93 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <questestinterop xmlns="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.imsglobal.org/xsd/ims_qtiasiv1p2 http://www.imsglobal.org/xsd/ims_qtiasiv1p2p1.xsd"
3
+ xmlns:m="http://www.w3.org/1998/Math/MathML">
4
+ <assessment ident="i98661073a66c6b2567c8f9b1a22c2988" title="Quiz1.1">
5
+ <section ident="root_section">
6
+ <item ident="ia63b6a115fa68a555398a58626a62f81" title="Question1">
7
+ <presentation>
8
+ <material>
9
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;question 1&lt;/p&gt;&lt;/div&gt;</mattext>
10
+ </material>
11
+ <response_str ident="response1" rcardinality="Single">
12
+ <render_fib fibtype="Decimal">
13
+ <response_label ident="answer1"/>
14
+ </render_fib>
15
+ </response_str>
16
+ </presentation>
17
+ <resprocessing>
18
+ <outcomes>
19
+ <decvar maxvalue="100" minvalue="0" varname="SCORE" vartype="Decimal"/>
20
+ </outcomes>
21
+ <respcondition continue="No">
22
+ <conditionvar>
23
+ <or>
24
+ <varequal respident="response1">1234.0</varequal>
25
+ <and>
26
+ <vargte respident="response1">1234.0</vargte>
27
+ <varlte respident="response1">1234.0</varlte>
28
+ </and>
29
+ </or>
30
+ </conditionvar>
31
+ <setvar action="Set" varname="SCORE">100</setvar>
32
+ </respcondition>
33
+ </resprocessing>
34
+ </item>
35
+ <item ident="i62e978ad510f5b51f61e1073df6357df" title="Question2">
36
+ <presentation>
37
+ <material>
38
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;question 2: &lt;/p&gt;&lt;/div&gt;</mattext>
39
+ <m:math>
40
+ <m:mfrac><m:mn>1</m:mn><m:mn>2</m:mn></m:mfrac><m:mo>&#xD7;</m:mo><m:mroot><m:mn>379</m:mn><m:mn>10</m:mn></m:mroot>
41
+ </m:math>
42
+ </material>
43
+ <response_str ident="response1" rcardinality="Single">
44
+ <render_fib fibtype="Decimal">
45
+ <response_label ident="answer1"/>
46
+ </render_fib>
47
+ </response_str>
48
+ </presentation>
49
+ <resprocessing>
50
+ <outcomes>
51
+ <decvar maxvalue="100" minvalue="0" varname="SCORE" vartype="Decimal"/>
52
+ </outcomes>
53
+ <respcondition continue="No">
54
+ <conditionvar>
55
+ <or>
56
+ <varequal respident="response1">4321.0</varequal>
57
+ <and>
58
+ <vargte respident="response1">4321.0</vargte>
59
+ <varlte respident="response1">4321.0</varlte>
60
+ </and>
61
+ </or>
62
+ </conditionvar>
63
+ <setvar action="Set" varname="SCORE">100</setvar>
64
+ </respcondition>
65
+ <respcondition continue="No">
66
+ <conditionvar>
67
+ <or>
68
+ <varequal respident="response1">1234.0</varequal>
69
+ <and>
70
+ <vargte respident="response1">1234.0</vargte>
71
+ <varlte respident="response1">1234.0</varlte>
72
+ </and>
73
+ </or>
74
+ </conditionvar>
75
+ <setvar action="Set" varname="SCORE">100</setvar>
76
+ </respcondition>
77
+ <respcondition continue="No">
78
+ <conditionvar>
79
+ <or>
80
+ <varequal respident="response1">1111.0</varequal>
81
+ <and>
82
+ <vargte respident="response1">1111.0</vargte>
83
+ <varlte respident="response1">1111.0</varlte>
84
+ </and>
85
+ </or>
86
+ </conditionvar>
87
+ <setvar action="Set" varname="SCORE">100</setvar>
88
+ </respcondition>
89
+ </resprocessing>
90
+ </item>
91
+ </section>
92
+ </assessment>
93
+ </questestinterop>
@@ -1,11 +1,15 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- qti (0.9.9)
4
+ mathml2latex (0.1.1)
5
+ activesupport (>= 4.2.9, < 5.2)
6
+ nokogiri (>= 1.6.8)
7
+ qti (0.9.12)
5
8
  actionview (>= 4.2.0)
6
9
  activesupport (>= 4.2.9, < 5.2)
7
10
  dry-struct (~> 0.2.1)
8
11
  dry-types (~> 0.12.0)
12
+ mathml2latex (>= 0.1.0)
9
13
  nokogiri (>= 1.6.8, < 1.9)
10
14
  rubyzip (~> 1.2)
11
15
  sanitize (>= 4.2.0, < 5.0)
@@ -31,13 +35,13 @@ GEM
31
35
  concurrent-ruby (1.0.5)
32
36
  crass (1.0.3)
33
37
  diff-lcs (1.3)
34
- docile (1.1.5)
38
+ docile (1.3.0)
35
39
  dry-configurable (0.7.0)
36
40
  concurrent-ruby (~> 1.0)
37
41
  dry-container (0.6.0)
38
42
  concurrent-ruby (~> 1.0)
39
43
  dry-configurable (~> 0.1, >= 0.1.3)
40
- dry-core (0.4.4)
44
+ dry-core (0.4.5)
41
45
  concurrent-ruby (~> 1.0)
42
46
  dry-equalizer (0.2.0)
43
47
  dry-logic (0.4.2)
@@ -57,13 +61,13 @@ GEM
57
61
  dry-equalizer (~> 0.2)
58
62
  dry-logic (~> 0.4, >= 0.4.2)
59
63
  inflecto (~> 0.0.0, >= 0.0.2)
60
- erubi (1.7.0)
64
+ erubi (1.7.1)
61
65
  i18n (0.9.5)
62
66
  concurrent-ruby (~> 1.0)
63
67
  ice_nine (0.11.2)
64
68
  inflecto (0.0.2)
65
69
  json (2.1.0)
66
- loofah (2.2.0)
70
+ loofah (2.2.2)
67
71
  crass (~> 1.0.2)
68
72
  nokogiri (>= 1.5.9)
69
73
  method_source (0.9.0)
@@ -74,8 +78,8 @@ GEM
74
78
  nokogumbo (1.5.0)
75
79
  nokogiri
76
80
  parallel (1.12.1)
77
- parser (2.4.0.2)
78
- ast (~> 2.3)
81
+ parser (2.5.0.5)
82
+ ast (~> 2.4.0)
79
83
  powerpack (0.1.1)
80
84
  pry (0.11.3)
81
85
  coderay (~> 1.1.0)
@@ -83,8 +87,8 @@ GEM
83
87
  rails-dom-testing (2.0.3)
84
88
  activesupport (>= 4.2.0)
85
89
  nokogiri (>= 1.6)
86
- rails-html-sanitizer (1.0.3)
87
- loofah (~> 2.0)
90
+ rails-html-sanitizer (1.0.4)
91
+ loofah (~> 2.2, >= 2.2.2)
88
92
  rainbow (2.2.2)
89
93
  rake
90
94
  rake (0.9.6)
@@ -110,12 +114,12 @@ GEM
110
114
  unicode-display_width (~> 1.0, >= 1.0.1)
111
115
  ruby-progressbar (1.9.0)
112
116
  rubyzip (1.2.1)
113
- sanitize (4.6.0)
117
+ sanitize (4.6.4)
114
118
  crass (~> 1.0.2)
115
119
  nokogiri (>= 1.4.4)
116
120
  nokogumbo (~> 1.4)
117
- simplecov (0.15.1)
118
- docile (~> 1.1.0)
121
+ simplecov (0.16.1)
122
+ docile (~> 1.1)
119
123
  json (>= 1.8, < 3)
120
124
  simplecov-html (~> 0.10.0)
121
125
  simplecov-html (0.10.2)
@@ -1,11 +1,12 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- qti (0.9.11)
4
+ qti (0.9.12)
5
5
  actionview (>= 4.2.0)
6
6
  activesupport (>= 4.2.9, < 5.2)
7
7
  dry-struct (~> 0.2.1)
8
8
  dry-types (~> 0.12.0)
9
+ mathml2latex (>= 0.1.0)
9
10
  nokogiri (>= 1.6.8, < 1.9)
10
11
  rubyzip (~> 1.2)
11
12
  sanitize (>= 4.2.0, < 5.0)
@@ -31,7 +32,7 @@ GEM
31
32
  concurrent-ruby (1.0.5)
32
33
  crass (1.0.3)
33
34
  diff-lcs (1.3)
34
- docile (1.1.5)
35
+ docile (1.3.0)
35
36
  dry-configurable (0.7.0)
36
37
  concurrent-ruby (~> 1.0)
37
38
  dry-container (0.6.0)
@@ -63,9 +64,12 @@ GEM
63
64
  ice_nine (0.11.2)
64
65
  inflecto (0.0.2)
65
66
  json (2.1.0)
66
- loofah (2.2.1)
67
+ loofah (2.2.2)
67
68
  crass (~> 1.0.2)
68
69
  nokogiri (>= 1.5.9)
70
+ mathml2latex (0.1.1)
71
+ activesupport (>= 4.2.9, < 5.2)
72
+ nokogiri (~> 1.8)
69
73
  method_source (0.9.0)
70
74
  mini_portile2 (2.3.0)
71
75
  minitest (5.11.3)
@@ -74,8 +78,8 @@ GEM
74
78
  nokogumbo (1.5.0)
75
79
  nokogiri
76
80
  parallel (1.12.1)
77
- parser (2.4.0.2)
78
- ast (~> 2.3)
81
+ parser (2.5.0.5)
82
+ ast (~> 2.4.0)
79
83
  powerpack (0.1.1)
80
84
  pry (0.11.3)
81
85
  coderay (~> 1.1.0)
@@ -83,8 +87,8 @@ GEM
83
87
  rails-dom-testing (2.0.3)
84
88
  activesupport (>= 4.2.0)
85
89
  nokogiri (>= 1.6)
86
- rails-html-sanitizer (1.0.3)
87
- loofah (~> 2.0)
90
+ rails-html-sanitizer (1.0.4)
91
+ loofah (~> 2.2, >= 2.2.2)
88
92
  rainbow (2.2.2)
89
93
  rake
90
94
  rake (0.9.6)
@@ -110,12 +114,12 @@ GEM
110
114
  unicode-display_width (~> 1.0, >= 1.0.1)
111
115
  ruby-progressbar (1.9.0)
112
116
  rubyzip (1.2.1)
113
- sanitize (4.6.2)
117
+ sanitize (4.6.4)
114
118
  crass (~> 1.0.2)
115
119
  nokogiri (>= 1.4.4)
116
120
  nokogumbo (~> 1.4)
117
- simplecov (0.15.1)
118
- docile (~> 1.1.0)
121
+ simplecov (0.16.1)
122
+ docile (~> 1.1)
119
123
  json (>= 1.8, < 3)
120
124
  simplecov-html (~> 0.10.0)
121
125
  simplecov-html (0.10.2)
@@ -1,12 +1,12 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Qti::Models::Base do
4
- let(:loaded_class) do
5
- path = File.join('spec', 'fixtures', 'test_qti_2.2', 'assessment.xml')
6
- described_class.from_path!(path)
7
- end
8
-
9
4
  context 'specified as single content node matching helpers' do
5
+ let(:loaded_class) do
6
+ path = File.join('spec', 'fixtures', 'test_qti_2.2', 'assessment.xml')
7
+ described_class.from_path!(path)
8
+ end
9
+
10
10
  let(:content_stub) { Struct.new(:content, :thing) }
11
11
 
12
12
  # "assessmentItemRef" should match 4 nodes, and therefore raise for these helpers
@@ -89,4 +89,17 @@ describe Qti::Models::Base do
89
89
  end
90
90
  end
91
91
  end
92
+
93
+ context 'preprocessing' do
94
+ let(:loaded_class) do
95
+ path = File.join('spec', 'fixtures', 'mathml', 'numeric_1.2.xml')
96
+ described_class.from_path!(path)
97
+ end
98
+ let(:expected_latex) { '\\(\\frac{1}{2}\\times \\sqrt[10]{379}\\)' }
99
+
100
+ it 'replaces any mathml block' do
101
+ obj = loaded_class
102
+ expect(obj.instance_variable_get('@doc').to_s).to include(expected_latex)
103
+ end
104
+ end
92
105
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qti
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.11
4
+ version: 0.9.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hannah Bottalla
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-03-23 00:00:00.000000000 Z
12
+ date: 2018-04-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -127,6 +127,20 @@ dependencies:
127
127
  - - ">="
128
128
  - !ruby/object:Gem::Version
129
129
  version: 4.2.0
130
+ - !ruby/object:Gem::Dependency
131
+ name: mathml2latex
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ version: 0.1.0
137
+ type: :runtime
138
+ prerelease: false
139
+ version_requirements: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: 0.1.0
130
144
  - !ruby/object:Gem::Dependency
131
145
  name: bundler
132
146
  requirement: !ruby/object:Gem::Requirement
@@ -319,61 +333,6 @@ files:
319
333
  - lib/qti/v2/models/scoring_data.rb
320
334
  - lib/qti/v2/models/stimulus_item.rb
321
335
  - lib/qti/version.rb
322
- - spec/fixtures/certica/images/145222.jpg
323
- - spec/fixtures/certica/images/151492.jpg
324
- - spec/fixtures/certica/images/152778.jpg
325
- - spec/fixtures/certica/images/161098.jpg
326
- - spec/fixtures/certica/images/162043.jpg
327
- - spec/fixtures/certica/images/162044.jpg
328
- - spec/fixtures/certica/images/174455.jpg
329
- - spec/fixtures/certica/images/180170.jpg
330
- - spec/fixtures/certica/images/182122.jpg
331
- - spec/fixtures/certica/images/182649.jpg
332
- - spec/fixtures/certica/images/186287.png
333
- - spec/fixtures/certica/images/186288.png
334
- - spec/fixtures/certica/images/186289.png
335
- - spec/fixtures/certica/images/186747.jpg
336
- - spec/fixtures/certica/images/187382.png
337
- - spec/fixtures/certica/images/187383.png
338
- - spec/fixtures/certica/images/187384.png
339
- - spec/fixtures/certica/images/187593.png
340
- - spec/fixtures/certica/images/194343.jpg
341
- - spec/fixtures/certica/images/194354.png
342
- - spec/fixtures/certica/imsmanifest.xml
343
- - spec/fixtures/certica/passages/4336.htm
344
- - spec/fixtures/certica/passages/6428.htm
345
- - spec/fixtures/certica/passages/6546.htm
346
- - spec/fixtures/certica/qti_013823.xml
347
- - spec/fixtures/certica/qti_037457.xml
348
- - spec/fixtures/certica/qti_037468.xml
349
- - spec/fixtures/certica/qti_037478.xml
350
- - spec/fixtures/certica/qti_037498.xml
351
- - spec/fixtures/certica/qti_037995.xml
352
- - spec/fixtures/certica/qti_038003.xml
353
- - spec/fixtures/certica/qti_038630.xml
354
- - spec/fixtures/certica/qti_038881.xml
355
- - spec/fixtures/certica/qti_038907.xml
356
- - spec/fixtures/certica/qti_039251.xml
357
- - spec/fixtures/certica/qti_039354.xml
358
- - spec/fixtures/certica/qti_039441.xml
359
- - spec/fixtures/certica/qti_204657.xml
360
- - spec/fixtures/certica/qti_213769.xml
361
- - spec/fixtures/certica/qti_215227.xml
362
- - spec/fixtures/certica/qti_217622.xml
363
- - spec/fixtures/certica/qti_227383.xml
364
- - spec/fixtures/certica/qti_227419.xml
365
- - spec/fixtures/certica/qti_228253.xml
366
- - spec/fixtures/certica/qti_228444.xml
367
- - spec/fixtures/certica/qti_228820.xml
368
- - spec/fixtures/certica/qti_229874.xml
369
- - spec/fixtures/certica/qti_400240.xml
370
- - spec/fixtures/certica/qti_600842.xml
371
- - spec/fixtures/certica/qti_600940.xml
372
- - spec/fixtures/certica/qti_EMP000001.xml
373
- - spec/fixtures/certica/qti_LBS10884.xml
374
- - spec/fixtures/certica/qti_MMP000006.xml
375
- - spec/fixtures/certica/qti_MMP000007.xml
376
- - spec/fixtures/certica/stylesheet/scip.css
377
336
  - spec/fixtures/items_1.2/canvas_multiple_fib.xml
378
337
  - spec/fixtures/items_1.2/choice.xml
379
338
  - spec/fixtures/items_1.2/essay.xml
@@ -494,6 +453,7 @@ files:
494
453
  - spec/fixtures/items_2.2/text_entry.xml
495
454
  - spec/fixtures/items_2.2/upload.xml
496
455
  - spec/fixtures/items_2.2/upload_composite.xml
456
+ - spec/fixtures/mathml/numeric_1.2.xml
497
457
  - spec/fixtures/no_assessment_xml/choice.xml
498
458
  - spec/fixtures/no_assessment_xml/imsmanifest.xml
499
459
  - spec/fixtures/package_shared/example/graphicOrder.xml
@@ -510,75 +470,7 @@ files:
510
470
  - spec/fixtures/test_qti_1.2_canvas/i00f37ac2af026e5a607e4a5d9a70b1d5/assessment_meta.xml
511
471
  - spec/fixtures/test_qti_1.2_canvas/i00f37ac2af026e5a607e4a5d9a70b1d5/i00f37ac2af026e5a607e4a5d9a70b1d5.xml
512
472
  - spec/fixtures/test_qti_1.2_canvas/imsmanifest.xml
513
- - spec/fixtures/test_qti_2.1.check/images/145222.jpg
514
- - spec/fixtures/test_qti_2.1.check/images/151492.jpg
515
- - spec/fixtures/test_qti_2.1.check/images/152778.jpg
516
- - spec/fixtures/test_qti_2.1.check/images/161098.jpg
517
- - spec/fixtures/test_qti_2.1.check/images/162043.jpg
518
- - spec/fixtures/test_qti_2.1.check/images/162044.jpg
519
- - spec/fixtures/test_qti_2.1.check/images/174455.jpg
520
- - spec/fixtures/test_qti_2.1.check/images/180170.jpg
521
- - spec/fixtures/test_qti_2.1.check/images/182122.jpg
522
- - spec/fixtures/test_qti_2.1.check/images/182649.jpg
523
- - spec/fixtures/test_qti_2.1.check/images/186287.png
524
- - spec/fixtures/test_qti_2.1.check/images/186288.png
525
- - spec/fixtures/test_qti_2.1.check/images/186289.png
526
- - spec/fixtures/test_qti_2.1.check/images/186747.jpg
527
- - spec/fixtures/test_qti_2.1.check/images/187382.png
528
- - spec/fixtures/test_qti_2.1.check/images/187383.png
529
- - spec/fixtures/test_qti_2.1.check/images/187384.png
530
- - spec/fixtures/test_qti_2.1.check/images/187593.png
531
- - spec/fixtures/test_qti_2.1.check/images/194343.jpg
532
- - spec/fixtures/test_qti_2.1.check/images/194354.png
533
- - spec/fixtures/test_qti_2.1.check/imsmanifest.xml
534
- - spec/fixtures/test_qti_2.1.check/passages/4336.htm
535
- - spec/fixtures/test_qti_2.1.check/passages/6428.htm
536
- - spec/fixtures/test_qti_2.1.check/passages/6546.htm
537
- - spec/fixtures/test_qti_2.1.check/qti_013823.xml
538
- - spec/fixtures/test_qti_2.1.check/qti_037457.xml
539
- - spec/fixtures/test_qti_2.1.check/qti_037468.xml
540
- - spec/fixtures/test_qti_2.1.check/qti_037478.xml
541
- - spec/fixtures/test_qti_2.1.check/qti_037498.xml
542
- - spec/fixtures/test_qti_2.1.check/qti_037995.xml
543
- - spec/fixtures/test_qti_2.1.check/qti_038003.xml
544
- - spec/fixtures/test_qti_2.1.check/qti_038630.xml
545
- - spec/fixtures/test_qti_2.1.check/qti_038881.xml
546
- - spec/fixtures/test_qti_2.1.check/qti_038907.xml
547
- - spec/fixtures/test_qti_2.1.check/qti_039251.xml
548
- - spec/fixtures/test_qti_2.1.check/qti_039354.xml
549
- - spec/fixtures/test_qti_2.1.check/qti_039441.xml
550
- - spec/fixtures/test_qti_2.1.check/qti_204657.xml
551
- - spec/fixtures/test_qti_2.1.check/qti_213769.xml
552
- - spec/fixtures/test_qti_2.1.check/qti_215227.xml
553
- - spec/fixtures/test_qti_2.1.check/qti_217622.xml
554
- - spec/fixtures/test_qti_2.1.check/qti_227383.xml
555
- - spec/fixtures/test_qti_2.1.check/qti_227419.xml
556
- - spec/fixtures/test_qti_2.1.check/qti_228253.xml
557
- - spec/fixtures/test_qti_2.1.check/qti_228444.xml
558
- - spec/fixtures/test_qti_2.1.check/qti_228820.xml
559
- - spec/fixtures/test_qti_2.1.check/qti_229874.xml
560
- - spec/fixtures/test_qti_2.1.check/qti_400240.xml
561
- - spec/fixtures/test_qti_2.1.check/qti_600842.xml
562
- - spec/fixtures/test_qti_2.1.check/qti_600940.xml
563
- - spec/fixtures/test_qti_2.1.check/qti_EMP000001.xml
564
- - spec/fixtures/test_qti_2.1.check/qti_LBS10884.xml
565
- - spec/fixtures/test_qti_2.1.check/qti_MMP000006.xml
566
- - spec/fixtures/test_qti_2.1.check/qti_MMP000007.xml
567
- - spec/fixtures/test_qti_2.1.check/stylesheet/scip.css
568
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_01/qtiv2p1_EntryTest_VE_IP_01.xml
569
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/apip_VE_IP_02.css
570
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/apip_VE_IP_02.svg
571
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/qtiv2p1_EntryTest_VE_IP_02.xml
572
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_03/qtiv2p1_EntryTest_VE_IP_03.xml
573
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_04/qtiv2p1_EntryTest_VE_IP_04.xml
574
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_croc.png
575
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_flamingos.png
576
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_title.png
577
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/qtiv2p1_EntryTest_VE_IP_05.xml
578
- - spec/fixtures/test_qti_2.1.old/Tests/Test_VE_TP_06/qtiv2p1_EntryTest_VE_TP_06.xml
579
- - spec/fixtures/test_qti_2.1.old/imsmanifest.xml
580
473
  - spec/fixtures/test_qti_2.1.zip
581
- - spec/fixtures/test_qti_2.1.zip.old
582
474
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_01/qtiv2p1_EntryTest_VE_IP_01.xml
583
475
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_02/apip_VE_IP_02.css
584
476
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_02/apip_VE_IP_02.svg
@@ -590,8 +482,6 @@ files:
590
482
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_05/apip_VE_IP_05_title.png
591
483
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_05/qtiv2p1_EntryTest_VE_IP_05.xml
592
484
  - spec/fixtures/test_qti_2.1/Tests/Test_VE_TP_06/qtiv2p1_EntryTest_VE_TP_06.xml
593
- - spec/fixtures/test_qti_2.1/example/graphicOrder.xml
594
- - spec/fixtures/test_qti_2.1/example/hotspot.xml
595
485
  - spec/fixtures/test_qti_2.1/imsmanifest.xml
596
486
  - spec/fixtures/test_qti_2.2.zip
597
487
  - spec/fixtures/test_qti_2.2/assessment.xml
@@ -667,15 +557,10 @@ files:
667
557
  - spec/gemfiles/nokogiri-1.8.gemfile
668
558
  - spec/gemfiles/nokogiri-1.8.gemfile.lock
669
559
  - spec/gemfiles/rails-4.2.gemfile
670
- - spec/gemfiles/rails-4.2.gemfile.lock
671
560
  - spec/gemfiles/rails-5.0.gemfile
672
- - spec/gemfiles/rails-5.0.gemfile.lock
673
561
  - spec/gemfiles/rails-5.1.gemfile
674
- - spec/gemfiles/rails-5.1.gemfile.lock
675
562
  - spec/gemfiles/sanitize-4.2.gemfile
676
- - spec/gemfiles/sanitize-4.2.gemfile.lock
677
563
  - spec/gemfiles/sanitize-4.5.gemfile
678
- - spec/gemfiles/sanitize-4.5.gemfile.lock
679
564
  - spec/lib/qti/assessment_item_exporter_spec.rb
680
565
  - spec/lib/qti/exporter_spec.rb
681
566
  - spec/lib/qti/models/base_spec.rb
@@ -736,66 +621,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
736
621
  version: '0'
737
622
  requirements: []
738
623
  rubyforge_project:
739
- rubygems_version: 2.6.14
624
+ rubygems_version: 2.6.13
740
625
  signing_key:
741
626
  specification_version: 4
742
627
  summary: QTI 1.2 and 2.1 import and export models
743
628
  test_files:
744
- - spec/fixtures/certica/images/145222.jpg
745
- - spec/fixtures/certica/images/151492.jpg
746
- - spec/fixtures/certica/images/152778.jpg
747
- - spec/fixtures/certica/images/161098.jpg
748
- - spec/fixtures/certica/images/162043.jpg
749
- - spec/fixtures/certica/images/162044.jpg
750
- - spec/fixtures/certica/images/174455.jpg
751
- - spec/fixtures/certica/images/180170.jpg
752
- - spec/fixtures/certica/images/182122.jpg
753
- - spec/fixtures/certica/images/182649.jpg
754
- - spec/fixtures/certica/images/186287.png
755
- - spec/fixtures/certica/images/186288.png
756
- - spec/fixtures/certica/images/186289.png
757
- - spec/fixtures/certica/images/186747.jpg
758
- - spec/fixtures/certica/images/187382.png
759
- - spec/fixtures/certica/images/187383.png
760
- - spec/fixtures/certica/images/187384.png
761
- - spec/fixtures/certica/images/187593.png
762
- - spec/fixtures/certica/images/194343.jpg
763
- - spec/fixtures/certica/images/194354.png
764
- - spec/fixtures/certica/imsmanifest.xml
765
- - spec/fixtures/certica/passages/4336.htm
766
- - spec/fixtures/certica/passages/6428.htm
767
- - spec/fixtures/certica/passages/6546.htm
768
- - spec/fixtures/certica/qti_013823.xml
769
- - spec/fixtures/certica/qti_037457.xml
770
- - spec/fixtures/certica/qti_037468.xml
771
- - spec/fixtures/certica/qti_037478.xml
772
- - spec/fixtures/certica/qti_037498.xml
773
- - spec/fixtures/certica/qti_037995.xml
774
- - spec/fixtures/certica/qti_038003.xml
775
- - spec/fixtures/certica/qti_038630.xml
776
- - spec/fixtures/certica/qti_038881.xml
777
- - spec/fixtures/certica/qti_038907.xml
778
- - spec/fixtures/certica/qti_039251.xml
779
- - spec/fixtures/certica/qti_039354.xml
780
- - spec/fixtures/certica/qti_039441.xml
781
- - spec/fixtures/certica/qti_204657.xml
782
- - spec/fixtures/certica/qti_213769.xml
783
- - spec/fixtures/certica/qti_215227.xml
784
- - spec/fixtures/certica/qti_217622.xml
785
- - spec/fixtures/certica/qti_227383.xml
786
- - spec/fixtures/certica/qti_227419.xml
787
- - spec/fixtures/certica/qti_228253.xml
788
- - spec/fixtures/certica/qti_228444.xml
789
- - spec/fixtures/certica/qti_228820.xml
790
- - spec/fixtures/certica/qti_229874.xml
791
- - spec/fixtures/certica/qti_400240.xml
792
- - spec/fixtures/certica/qti_600842.xml
793
- - spec/fixtures/certica/qti_600940.xml
794
- - spec/fixtures/certica/qti_EMP000001.xml
795
- - spec/fixtures/certica/qti_LBS10884.xml
796
- - spec/fixtures/certica/qti_MMP000006.xml
797
- - spec/fixtures/certica/qti_MMP000007.xml
798
- - spec/fixtures/certica/stylesheet/scip.css
799
629
  - spec/fixtures/items_1.2/canvas_multiple_fib.xml
800
630
  - spec/fixtures/items_1.2/choice.xml
801
631
  - spec/fixtures/items_1.2/essay.xml
@@ -916,6 +746,7 @@ test_files:
916
746
  - spec/fixtures/items_2.2/text_entry.xml
917
747
  - spec/fixtures/items_2.2/upload.xml
918
748
  - spec/fixtures/items_2.2/upload_composite.xml
749
+ - spec/fixtures/mathml/numeric_1.2.xml
919
750
  - spec/fixtures/no_assessment_xml/choice.xml
920
751
  - spec/fixtures/no_assessment_xml/imsmanifest.xml
921
752
  - spec/fixtures/package_shared/example/graphicOrder.xml
@@ -932,75 +763,7 @@ test_files:
932
763
  - spec/fixtures/test_qti_1.2_canvas/i00f37ac2af026e5a607e4a5d9a70b1d5/assessment_meta.xml
933
764
  - spec/fixtures/test_qti_1.2_canvas/i00f37ac2af026e5a607e4a5d9a70b1d5/i00f37ac2af026e5a607e4a5d9a70b1d5.xml
934
765
  - spec/fixtures/test_qti_1.2_canvas/imsmanifest.xml
935
- - spec/fixtures/test_qti_2.1.check/images/145222.jpg
936
- - spec/fixtures/test_qti_2.1.check/images/151492.jpg
937
- - spec/fixtures/test_qti_2.1.check/images/152778.jpg
938
- - spec/fixtures/test_qti_2.1.check/images/161098.jpg
939
- - spec/fixtures/test_qti_2.1.check/images/162043.jpg
940
- - spec/fixtures/test_qti_2.1.check/images/162044.jpg
941
- - spec/fixtures/test_qti_2.1.check/images/174455.jpg
942
- - spec/fixtures/test_qti_2.1.check/images/180170.jpg
943
- - spec/fixtures/test_qti_2.1.check/images/182122.jpg
944
- - spec/fixtures/test_qti_2.1.check/images/182649.jpg
945
- - spec/fixtures/test_qti_2.1.check/images/186287.png
946
- - spec/fixtures/test_qti_2.1.check/images/186288.png
947
- - spec/fixtures/test_qti_2.1.check/images/186289.png
948
- - spec/fixtures/test_qti_2.1.check/images/186747.jpg
949
- - spec/fixtures/test_qti_2.1.check/images/187382.png
950
- - spec/fixtures/test_qti_2.1.check/images/187383.png
951
- - spec/fixtures/test_qti_2.1.check/images/187384.png
952
- - spec/fixtures/test_qti_2.1.check/images/187593.png
953
- - spec/fixtures/test_qti_2.1.check/images/194343.jpg
954
- - spec/fixtures/test_qti_2.1.check/images/194354.png
955
- - spec/fixtures/test_qti_2.1.check/imsmanifest.xml
956
- - spec/fixtures/test_qti_2.1.check/passages/4336.htm
957
- - spec/fixtures/test_qti_2.1.check/passages/6428.htm
958
- - spec/fixtures/test_qti_2.1.check/passages/6546.htm
959
- - spec/fixtures/test_qti_2.1.check/qti_013823.xml
960
- - spec/fixtures/test_qti_2.1.check/qti_037457.xml
961
- - spec/fixtures/test_qti_2.1.check/qti_037468.xml
962
- - spec/fixtures/test_qti_2.1.check/qti_037478.xml
963
- - spec/fixtures/test_qti_2.1.check/qti_037498.xml
964
- - spec/fixtures/test_qti_2.1.check/qti_037995.xml
965
- - spec/fixtures/test_qti_2.1.check/qti_038003.xml
966
- - spec/fixtures/test_qti_2.1.check/qti_038630.xml
967
- - spec/fixtures/test_qti_2.1.check/qti_038881.xml
968
- - spec/fixtures/test_qti_2.1.check/qti_038907.xml
969
- - spec/fixtures/test_qti_2.1.check/qti_039251.xml
970
- - spec/fixtures/test_qti_2.1.check/qti_039354.xml
971
- - spec/fixtures/test_qti_2.1.check/qti_039441.xml
972
- - spec/fixtures/test_qti_2.1.check/qti_204657.xml
973
- - spec/fixtures/test_qti_2.1.check/qti_213769.xml
974
- - spec/fixtures/test_qti_2.1.check/qti_215227.xml
975
- - spec/fixtures/test_qti_2.1.check/qti_217622.xml
976
- - spec/fixtures/test_qti_2.1.check/qti_227383.xml
977
- - spec/fixtures/test_qti_2.1.check/qti_227419.xml
978
- - spec/fixtures/test_qti_2.1.check/qti_228253.xml
979
- - spec/fixtures/test_qti_2.1.check/qti_228444.xml
980
- - spec/fixtures/test_qti_2.1.check/qti_228820.xml
981
- - spec/fixtures/test_qti_2.1.check/qti_229874.xml
982
- - spec/fixtures/test_qti_2.1.check/qti_400240.xml
983
- - spec/fixtures/test_qti_2.1.check/qti_600842.xml
984
- - spec/fixtures/test_qti_2.1.check/qti_600940.xml
985
- - spec/fixtures/test_qti_2.1.check/qti_EMP000001.xml
986
- - spec/fixtures/test_qti_2.1.check/qti_LBS10884.xml
987
- - spec/fixtures/test_qti_2.1.check/qti_MMP000006.xml
988
- - spec/fixtures/test_qti_2.1.check/qti_MMP000007.xml
989
- - spec/fixtures/test_qti_2.1.check/stylesheet/scip.css
990
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_01/qtiv2p1_EntryTest_VE_IP_01.xml
991
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/apip_VE_IP_02.css
992
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/apip_VE_IP_02.svg
993
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_02/qtiv2p1_EntryTest_VE_IP_02.xml
994
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_03/qtiv2p1_EntryTest_VE_IP_03.xml
995
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_04/qtiv2p1_EntryTest_VE_IP_04.xml
996
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_croc.png
997
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_flamingos.png
998
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/apip_VE_IP_05_title.png
999
- - spec/fixtures/test_qti_2.1.old/Items/Item_VE_IP_05/qtiv2p1_EntryTest_VE_IP_05.xml
1000
- - spec/fixtures/test_qti_2.1.old/Tests/Test_VE_TP_06/qtiv2p1_EntryTest_VE_TP_06.xml
1001
- - spec/fixtures/test_qti_2.1.old/imsmanifest.xml
1002
766
  - spec/fixtures/test_qti_2.1.zip
1003
- - spec/fixtures/test_qti_2.1.zip.old
1004
767
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_01/qtiv2p1_EntryTest_VE_IP_01.xml
1005
768
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_02/apip_VE_IP_02.css
1006
769
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_02/apip_VE_IP_02.svg
@@ -1012,8 +775,6 @@ test_files:
1012
775
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_05/apip_VE_IP_05_title.png
1013
776
  - spec/fixtures/test_qti_2.1/Items/Item_VE_IP_05/qtiv2p1_EntryTest_VE_IP_05.xml
1014
777
  - spec/fixtures/test_qti_2.1/Tests/Test_VE_TP_06/qtiv2p1_EntryTest_VE_TP_06.xml
1015
- - spec/fixtures/test_qti_2.1/example/graphicOrder.xml
1016
- - spec/fixtures/test_qti_2.1/example/hotspot.xml
1017
778
  - spec/fixtures/test_qti_2.1/imsmanifest.xml
1018
779
  - spec/fixtures/test_qti_2.2.zip
1019
780
  - spec/fixtures/test_qti_2.2/assessment.xml
@@ -1089,15 +850,10 @@ test_files:
1089
850
  - spec/gemfiles/nokogiri-1.8.gemfile
1090
851
  - spec/gemfiles/nokogiri-1.8.gemfile.lock
1091
852
  - spec/gemfiles/rails-4.2.gemfile
1092
- - spec/gemfiles/rails-4.2.gemfile.lock
1093
853
  - spec/gemfiles/rails-5.0.gemfile
1094
- - spec/gemfiles/rails-5.0.gemfile.lock
1095
854
  - spec/gemfiles/rails-5.1.gemfile
1096
- - spec/gemfiles/rails-5.1.gemfile.lock
1097
855
  - spec/gemfiles/sanitize-4.2.gemfile
1098
- - spec/gemfiles/sanitize-4.2.gemfile.lock
1099
856
  - spec/gemfiles/sanitize-4.5.gemfile
1100
- - spec/gemfiles/sanitize-4.5.gemfile.lock
1101
857
  - spec/lib/qti/assessment_item_exporter_spec.rb
1102
858
  - spec/lib/qti/exporter_spec.rb
1103
859
  - spec/lib/qti/models/base_spec.rb