qti 0.9.11 → 0.9.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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