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 | 
            -
                     | 
| 28 | 
            -
             | 
| 29 | 
            -
                       | 
| 30 | 
            -
                     | 
| 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) }
         | 
    
        data/lib/smartdown/version.rb
    CHANGED
    
    
| @@ -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
         | 
    
        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. | 
| 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: & | 
| 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: * | 
| 24 | 
            +
              version_requirements: *17430720
         | 
| 25 25 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 26 26 | 
             
              name: rspec
         | 
| 27 | 
            -
              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: * | 
| 35 | 
            +
              version_requirements: *17430000
         | 
| 36 36 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 37 37 | 
             
              name: rake
         | 
| 38 | 
            -
              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: * | 
| 46 | 
            +
              version_requirements: *17429460
         | 
| 47 47 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 48 48 | 
             
              name: gem_publisher
         | 
| 49 | 
            -
              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: * | 
| 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:  | 
| 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:  | 
| 253 | 
            +
                  hash: 3609502559032787740
         | 
| 254 254 | 
             
            requirements: []
         | 
| 255 255 | 
             
            rubyforge_project: 
         | 
| 256 256 | 
             
            rubygems_version: 1.8.11
         |