canvas_cc 0.0.16 → 0.0.17
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/canvas_cc/canvas_cc/models/canvas_module.rb +2 -1
- data/lib/canvas_cc/canvas_cc/models/module_prerequisite.rb +8 -0
- data/lib/canvas_cc/canvas_cc/module_meta_writer.rb +12 -0
- data/lib/canvas_cc/version.rb +1 -1
- data/lib/canvas_cc.rb +1 -0
- data/spec/moodle2cc/canvas_cc/module_meta_writer_spec.rb +16 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ff6c7c23e9125d06fe98d6c0f452768cd447439c
|
4
|
+
data.tar.gz: 8abb77ead6530cca7df2178905cff2e8366ae6a7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0498e5f3e232a390e31f835884b8c17b26b59992924e0b4e920827cf677806f2c4274af63ab7a32b9632226b4d87ed1c5a99e26b693b00a2d650ade06b1cc71c
|
7
|
+
data.tar.gz: aeddcde520e704cdc2e19412e46822da15684098d308a43cefd807c25c59c3f3c904a418625cd091655cb756e53e537915fb8d1c61e7ca29fd1f26345ffc1a50
|
data/Gemfile.lock
CHANGED
@@ -2,10 +2,11 @@ module CanvasCc::CanvasCC::Models
|
|
2
2
|
class CanvasModule
|
3
3
|
|
4
4
|
attr_accessor :identifier, :title, :workflow_state, :module_items,
|
5
|
-
:unlock_at, :start_at, :end_at, :require_sequential_progress
|
5
|
+
:unlock_at, :start_at, :end_at, :require_sequential_progress, :prerequisites
|
6
6
|
|
7
7
|
def initialize
|
8
8
|
@module_items = []
|
9
|
+
@prerequisites = []
|
9
10
|
end
|
10
11
|
end
|
11
12
|
end
|
@@ -34,6 +34,9 @@ module CanvasCc::CanvasCC
|
|
34
34
|
xml.items { |xml|
|
35
35
|
add_module_items_to_xml(mod.module_items, xml)
|
36
36
|
}
|
37
|
+
xml.prerequisites { |xml|
|
38
|
+
add_prerequisites_to_xml(mod.prerequisites, xml)
|
39
|
+
}
|
37
40
|
}
|
38
41
|
end
|
39
42
|
|
@@ -52,5 +55,14 @@ module CanvasCc::CanvasCC
|
|
52
55
|
end
|
53
56
|
end
|
54
57
|
|
58
|
+
def add_prerequisites_to_xml(prerequisites, xml)
|
59
|
+
prerequisites.each do |pre|
|
60
|
+
xml.prerequisite('type' => pre.type) { |xml|
|
61
|
+
xml.title pre.title
|
62
|
+
xml.identifierref pre.identifierref
|
63
|
+
}
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
55
67
|
end
|
56
68
|
end
|
data/lib/canvas_cc/version.rb
CHANGED
data/lib/canvas_cc.rb
CHANGED
@@ -93,6 +93,7 @@ module CanvasCc
|
|
93
93
|
autoload :Discussion, 'canvas_cc/canvas_cc/models/discussion'
|
94
94
|
autoload :WorkflowState, 'canvas_cc/canvas_cc/models/workflow_state'
|
95
95
|
autoload :Range, 'canvas_cc/canvas_cc/models/range'
|
96
|
+
autoload :ModulePrerequisite, 'canvas_cc/canvas_cc/models/module_prerequisite'
|
96
97
|
end
|
97
98
|
end
|
98
99
|
end
|
@@ -5,6 +5,7 @@ module CanvasCc::CanvasCC
|
|
5
5
|
|
6
6
|
let(:canvas_module) { Models::CanvasModule.new }
|
7
7
|
let(:module_item) { Models::ModuleItem.new }
|
8
|
+
let(:module_prerequisite) {Models::ModulePrerequisite.new}
|
8
9
|
let(:tmpdir) { Dir.mktmpdir }
|
9
10
|
|
10
11
|
before :each do
|
@@ -54,6 +55,21 @@ module CanvasCc::CanvasCC
|
|
54
55
|
expect(xml.%('modules/module[last()]/position').text).to eq('1')
|
55
56
|
end
|
56
57
|
|
58
|
+
context 'prerequisites' do
|
59
|
+
it 'writes prerequisites' do
|
60
|
+
canvas_module.identifier = 'module_identifier'
|
61
|
+
module_prerequisite.type = Models::ModulePrerequisite::CONTENT_TYPE_CONTEXT_MODULE
|
62
|
+
module_prerequisite.title = 'title'
|
63
|
+
module_prerequisite.identifierref = canvas_module.identifier
|
64
|
+
canvas_module.prerequisites << module_prerequisite
|
65
|
+
xml = write_xml(canvas_module)
|
66
|
+
pre_node = xml.%('modules/module/prerequisites/prerequisite')
|
67
|
+
expect(pre_node.at_xpath('@type').text).to eq(Models::ModulePrerequisite::CONTENT_TYPE_CONTEXT_MODULE)
|
68
|
+
expect(pre_node.%('title').text).to eq('title')
|
69
|
+
expect(pre_node.%('identifierref').text).to eq(canvas_module.identifier)
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
57
73
|
context 'module items' do
|
58
74
|
it 'writes out module items correctly' do
|
59
75
|
module_item.identifier = "some_unique_hash"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: canvas_cc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Instructure
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-01-
|
11
|
+
date: 2015-01-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubyzip
|
@@ -277,6 +277,7 @@ files:
|
|
277
277
|
- lib/canvas_cc/canvas_cc/models/discussion_topic.rb
|
278
278
|
- lib/canvas_cc/canvas_cc/models/matching_question.rb
|
279
279
|
- lib/canvas_cc/canvas_cc/models/module_item.rb
|
280
|
+
- lib/canvas_cc/canvas_cc/models/module_prerequisite.rb
|
280
281
|
- lib/canvas_cc/canvas_cc/models/multiple_dropdowns_question.rb
|
281
282
|
- lib/canvas_cc/canvas_cc/models/numerical_question.rb
|
282
283
|
- lib/canvas_cc/canvas_cc/models/page.rb
|