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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3cd65cfe7ef8dfeaae5e637c26dd76f0f50d3ee6
4
- data.tar.gz: 66839ee71173756cea483c280f4b4a752896fde8
3
+ metadata.gz: ff6c7c23e9125d06fe98d6c0f452768cd447439c
4
+ data.tar.gz: 8abb77ead6530cca7df2178905cff2e8366ae6a7
5
5
  SHA512:
6
- metadata.gz: b35d74feb17b49360c3a78f07c524c194d00321aa097a02d2c24c3cd8cc980eb3ca5c97fc83f0f131411797f28bc89c73b8f6f8ecd19f762fae79abe856ed8fb
7
- data.tar.gz: ef6c4febf76f2d1062c42bd3319203882804e521d65c56e492d407a6c550f8806229b5636bf36291440b211fa492faa19416f28372af6f1230a0526d76d1f497
6
+ metadata.gz: 0498e5f3e232a390e31f835884b8c17b26b59992924e0b4e920827cf677806f2c4274af63ab7a32b9632226b4d87ed1c5a99e26b693b00a2d650ade06b1cc71c
7
+ data.tar.gz: aeddcde520e704cdc2e19412e46822da15684098d308a43cefd807c25c59c3f3c904a418625cd091655cb756e53e537915fb8d1c61e7ca29fd1f26345ffc1a50
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- canvas_cc (0.0.16)
4
+ canvas_cc (0.0.17)
5
5
  builder
6
6
  happymapper
7
7
  nokogiri
@@ -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
@@ -0,0 +1,8 @@
1
+ module CanvasCc::CanvasCC::Models
2
+ class ModulePrerequisite
3
+ attr_accessor :identifierref, :type, :title
4
+
5
+ CONTENT_TYPE_CONTEXT_MODULE = 'context_module'
6
+
7
+ end
8
+ 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
@@ -1,3 +1,3 @@
1
1
  module CanvasCc
2
- VERSION = "0.0.16"
2
+ VERSION = "0.0.17"
3
3
  end
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.16
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-07 00:00:00.000000000 Z
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