atomic_assessments_import 0.2.2 → 0.2.4

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
  SHA256:
3
- metadata.gz: 8a996e4ab49d42df22871a55ce475cbc6b95b21b5f34be95d83c2f65601ae3ee
4
- data.tar.gz: 2b670a8b2fbbda6e4e958e69b9d889368cde69060a434eace3ca8a79ff65e14c
3
+ metadata.gz: bd34e878457298b3885a6eb6f55201c8688d483e553fd10b019b644123defd43
4
+ data.tar.gz: 763dbe30d5d1fb4beb96a05ce09c4db3bdc2677a70f6063a0ac920153151e914
5
5
  SHA512:
6
- metadata.gz: a9f744c0833f6f9a9fca268021f94fa808228827c92dfe351798a2a03e8f8576d37c368c2e3ce1ea4f15ddbc717a9c96dc091292a139a525a297082d6fb6181e
7
- data.tar.gz: b7a3bd471532d7c41b6e656ed01fe89008ec026a006cd0469d8ae90483ce9621772ece0e90db7dded82ef271a46747cbef928554a3cd93daa18e69ca0a17f72f
6
+ metadata.gz: f6ec3de60a5f8e9a85b782752e653c8c6a18148e8dbf473f78c74017d1852f35075acbae80eeba6704d3d303b5c8a44935f09b33906b9178b27612adb09f01e0
7
+ data.tar.gz: f0c822996666047dfb76f68127912b57ac30d410bc4b52e87fe28fd2f1238254e38d649f0ac0d2e43e31aa53d5588533c01dae5ba4e4ceda3f8ab7027c9de141
@@ -56,19 +56,19 @@ module AtomicAssessmentsImport
56
56
  normalized.downcase
57
57
  end
58
58
  if !HEADERS.find { |h| h.is_a?(Regexp) ? h =~ normalized : h == normalized }
59
- raise ArgumentError, "Unknown column: #{header}"
59
+ raise "Unknown column: #{header}"
60
60
  end
61
61
 
62
62
  normalized
63
63
  end,
64
64
  converters: ->(data) { data&.strip }
65
- ) do |row|
65
+ ).with_index(2) do |row, line|
66
66
  item, question_widgets = convert_row(row)
67
67
 
68
68
  items << item
69
69
  questions += question_widgets
70
70
  rescue StandardError => e
71
- raise e, "Error processing row: #{row.inspect} - #{e.message}"
71
+ raise e, "Error processing line #{line}: #{e.message}"
72
72
  end
73
73
 
74
74
  {
@@ -13,8 +13,8 @@ module AtomicAssessmentsImport
13
13
  end
14
14
 
15
15
  def question_data
16
- raise ArgumentError, "Missing correct answer" if correct_responses.empty?
17
- raise ArgumentError, "Missing options" if options.empty?
16
+ raise "Missing correct answer" if correct_responses.empty?
17
+ raise "Missing options" if options.empty?
18
18
 
19
19
  super.deep_merge(
20
20
  {
@@ -92,10 +92,10 @@ module AtomicAssessmentsImport
92
92
  { horizontal_lines: false, type: "inline" }
93
93
  when "choice matrix labels"
94
94
  { stem_numeration: "upper-alpha", horizontal_lines: false, type: "table" }
95
- when nil, "", "multiple choice"
95
+ when nil, "", "multiple choice", "standard"
96
96
  { type: "horizontal" }
97
97
  else
98
- raise NotImplementedError, "Unknown template"
98
+ raise "Unknown template: #{@row["template"]}"
99
99
  end
100
100
  end
101
101
  end
@@ -15,7 +15,7 @@ module AtomicAssessmentsImport
15
15
  when nil, "", /multiple choice/i, /mcq/i
16
16
  MultipleChoice.new(row)
17
17
  else
18
- raise NotImplementedError, "Unknown question type"
18
+ raise "Unknown question type #{row['question type']}"
19
19
  end
20
20
  end
21
21
 
@@ -58,7 +58,7 @@ module AtomicAssessmentsImport
58
58
  when /Exact Match/i
59
59
  "exactMatch"
60
60
  else
61
- raise NotImplementedError, "Unknown scoring type"
61
+ raise "Unknown scoring type #{@row['scoring type']}"
62
62
  end
63
63
  end
64
64
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AtomicAssessmentsImport
4
- VERSION = "0.2.2"
4
+ VERSION = "0.2.4"
5
5
  end
@@ -18,7 +18,7 @@ module AtomicAssessmentsImport
18
18
  when "text/csv"
19
19
  CSV::Converter.new(path)
20
20
  else
21
- raise ArgumentError, "Unsupported file type"
21
+ raise "Unsupported file type"
22
22
  end
23
23
 
24
24
  converter.convert
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: atomic_assessments_import
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Collings
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2025-03-12 00:00:00.000000000 Z
12
+ date: 2025-04-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport