qti 0.2.9 → 0.2.10
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a99a295b321477ec278d05a62c1368168ee71be7
|
4
|
+
data.tar.gz: 49e3138a5434ffd9cab0de32419a9a97188d84cd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 84401d7e4405b17df70516aada5e2f16bd76bc9f7ca5a5fe64f51f4865f53f2f6a526c63d444c3b0cba33e2c8bc2f5f1a1b0689081dadcbadcf773acf4597028
|
7
|
+
data.tar.gz: 931f6230b1fa7eb9ecaecfff95380bb15570ccf7011f7e0f03fd39b4820719f04060c8288962244b8316d0e708820c09b9f4420a877cc75cff561c51dfa04dbd
|
@@ -51,14 +51,18 @@ module Qti
|
|
51
51
|
if ordering?
|
52
52
|
scoring_data_structs_for_ordering
|
53
53
|
else
|
54
|
-
|
55
|
-
choice_nodes.select { |choice_node| choice_node.at_xpath('.//setvar').content.to_f.positive? }
|
56
|
-
.map { |value_node| ScoringData.new(value_node.at_xpath('//varequal').content, rcardinality) }
|
54
|
+
default_scoring_data_structs
|
57
55
|
end
|
58
56
|
end
|
59
57
|
|
60
58
|
private
|
61
59
|
|
60
|
+
def default_scoring_data_structs
|
61
|
+
choice_nodes = doc.xpath('.//respcondition')
|
62
|
+
choice_nodes.select { |choice_node| choice_node.at_xpath('.//setvar').content.to_f.positive? }
|
63
|
+
.map { |value_node| ScoringData.new(value_node.at_xpath('.//varequal').content, rcardinality) }
|
64
|
+
end
|
65
|
+
|
62
66
|
def scoring_data_structs_for_ordering
|
63
67
|
@doc.xpath('//conditionvar/varequal').map do |value_node|
|
64
68
|
ScoringData.new(value_node.content, rcardinality)
|
@@ -5,7 +5,7 @@ module Qti
|
|
5
5
|
class LogicalIdentifierInteraction < Qti::V1::Models::Base
|
6
6
|
# This will know if a class matches
|
7
7
|
def self.matches(node)
|
8
|
-
match = node.at_xpath('
|
8
|
+
match = node.at_xpath('.//response_lid')
|
9
9
|
return false unless match.present?
|
10
10
|
new(match)
|
11
11
|
end
|
@@ -29,7 +29,7 @@ describe Qti::V1::Models::AssessmentItem do
|
|
29
29
|
describe '#scoring_data_structs' do
|
30
30
|
it 'grabs the rcardinality and scoring data value' do
|
31
31
|
struct = loaded_class.send(:scoring_data_structs)
|
32
|
-
expect(struct.first.values).to eq '
|
32
|
+
expect(struct.first.values).to eq 'QUE_1006_A2'
|
33
33
|
expect(struct.first.rcardinality).to eq 'Single'
|
34
34
|
end
|
35
35
|
|
data/spec/lib/qti_spec.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Qti::Importer do
|
4
|
-
|
5
4
|
let(:fixtures_path) { File.join('spec', 'fixtures') }
|
6
5
|
let(:importer) { Qti::Importer.new(file_path) }
|
7
6
|
let(:manifest_path) { File.join(file_path, 'imsmanifest.xml') }
|
@@ -26,6 +25,16 @@ describe Qti::Importer do
|
|
26
25
|
|
27
26
|
include_examples 'initialize'
|
28
27
|
include_examples 'unsupported QTI version'
|
28
|
+
|
29
|
+
describe '#create_assessment_item' do
|
30
|
+
it 'create items with correct scoring structs' do
|
31
|
+
assessment = importer.test_object
|
32
|
+
assessment_items = importer.assessment_item_refs.map{ |ref| importer.create_assessment_item(ref) }
|
33
|
+
expect(assessment_items.count).to eq 3
|
34
|
+
answer_arity = assessment_items.map{|item| item.scoring_data_structs.count }
|
35
|
+
expect(answer_arity).to eq [1, 1, 4]
|
36
|
+
end
|
37
|
+
end
|
29
38
|
end
|
30
39
|
|
31
40
|
context 'QTI 2.1' do
|
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.2.
|
4
|
+
version: 0.2.10
|
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: 2017-03-
|
12
|
+
date: 2017-03-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|