canvas_cc 0.0.16 → 0.0.17

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: 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