smartdown 0.7.0 → 0.7.1

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.
data/README.md CHANGED
@@ -286,6 +286,13 @@ Each scenario is made of:
286
286
  - name_of_q1_p2: answer_to_q1_p2
287
287
  name_of_q2_p2: answer_to_q2_p2
288
288
  outcome_the_result
289
+
290
+ # Descriptions
291
+ # can have several lines
292
+ - name_of_q1_p1: answer_to_q1_p1_2
293
+ - name_of_q1_p3: answer_to_q1_p3
294
+ name_of_q2_p3: answer_to_q2_p3
295
+ outcome_the_other_result
289
296
  ```
290
297
 
291
298
  ## Software design
@@ -24,10 +24,11 @@ module Smartdown
24
24
 
25
25
  def interpret_scenario(scenario_string)
26
26
  scenario_lines = scenario_string.split("\n")
27
- if scenario_lines.first.start_with?("#")
28
- description = scenario_lines.first[1..-1].strip
29
- scenario_lines = scenario_lines[1..-1]
30
- end
27
+ description_lines = scenario_lines.select{ |line| line.start_with?("#") }
28
+ description = description_lines.map { |description_line|
29
+ description_line[1..-1].strip
30
+ }.join(";")
31
+ scenario_lines = scenario_lines - description_lines
31
32
  outcome = scenario_lines.last
32
33
  question_pages = group_questions_by_page(scenario_lines[0..-2])
33
34
  question_groups = question_pages.map { |question_page| interpret_question_page(question_page) }
@@ -1,3 +1,3 @@
1
1
  module Smartdown
2
- VERSION = "0.7.0"
2
+ VERSION = "0.7.1"
3
3
  end
@@ -21,7 +21,7 @@ describe Smartdown::Api::Flow do
21
21
  it "has scenarios with description, questions and outcome" do
22
22
  tigers_and_cats_scenario_set = flow.scenario_sets.find { |scenario_set| scenario_set.name == "tigers_and_cats" }
23
23
  expect(tigers_and_cats_scenario_set.scenarios.size).to eq(1)
24
- expect(tigers_and_cats_scenario_set.scenarios.first.description).to eq("User has a cat")
24
+ expect(tigers_and_cats_scenario_set.scenarios.first.description).to eq("User has a cat;And cats are amazing")
25
25
  expect(tigers_and_cats_scenario_set.scenarios.first.question_groups.size).to eq(1)
26
26
  expect(tigers_and_cats_scenario_set.scenarios.first.outcome).to eq("outcome_safe_pet")
27
27
  end
@@ -1,3 +1,4 @@
1
1
  # User has a cat
2
+ # And cats are amazing
2
3
  - question_1: cat
3
4
  outcome_safe_pet
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smartdown
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2014-07-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: parslet
16
- requirement: &14489700 !ruby/object:Gem::Requirement
16
+ requirement: &17430720 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 1.6.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *14489700
24
+ version_requirements: *17430720
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rspec
27
- requirement: &14488200 !ruby/object:Gem::Requirement
27
+ requirement: &17430000 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 3.0.0
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *14488200
35
+ version_requirements: *17430000
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &14504920 !ruby/object:Gem::Requirement
38
+ requirement: &17429460 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *14504920
46
+ version_requirements: *17429460
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: gem_publisher
49
- requirement: &14504180 !ruby/object:Gem::Requirement
49
+ requirement: &17428800 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *14504180
57
+ version_requirements: *17428800
58
58
  description:
59
59
  email: david.heath@digital.cabinet-office.gov.uk
60
60
  executables:
@@ -241,7 +241,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
241
241
  version: '0'
242
242
  segments:
243
243
  - 0
244
- hash: -1023483134513177718
244
+ hash: 3609502559032787740
245
245
  required_rubygems_version: !ruby/object:Gem::Requirement
246
246
  none: false
247
247
  requirements:
@@ -250,7 +250,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
250
250
  version: '0'
251
251
  segments:
252
252
  - 0
253
- hash: -1023483134513177718
253
+ hash: 3609502559032787740
254
254
  requirements: []
255
255
  rubyforge_project:
256
256
  rubygems_version: 1.8.11