wagn 1.16.15 → 1.17.0
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 +4 -4
- data/features/signup.feature +2 -1
- data/features/step_definitions/wagn_steps.rb +4 -0
- data/lib/wagn/commands.rb +40 -95
- data/lib/wagn/generators/wagn/templates/Gemfile +3 -3
- data/lib/wagn/generators/wagn/templates/config/application.rb +0 -8
- data/lib/wagn/parser.rb +93 -0
- data/lib/wagn/tasks/wagn.rake +10 -10
- data/rails/controllers/card_controller.rb +1 -1
- metadata +5 -4
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 7fe31485e1ace44582b1be0422e6669462f1dcb4
         | 
| 4 | 
            +
              data.tar.gz: 16a2fb47d3f565766c96d6a6a053391801bddc64
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: f427c740a3e6b5d0535f2f6f0b356779061213f9d4e5bcb4967195c8c6c55b7350ae211f71a8b249038a453eca6cafeba1bb1e609224fe8b32602c97971b6926
         | 
| 7 | 
            +
              data.tar.gz: 551e5a86477b36aab96f9f3b2a6edecb4025ca7d5797163798255f65d66d11c665291aeab437b5d55e88334c82723dba2a1012c74976ffbee4e890a8b81d21b1
         | 
    
        data/features/signup.feature
    CHANGED
    
    | @@ -23,6 +23,7 @@ Feature: Signing up | |
| 23 23 | 
             
                When I open the email
         | 
| 24 24 | 
             
                And I click the first link in the email
         | 
| 25 25 | 
             
                Then I should see "Wanna B"
         | 
| 26 | 
            +
                And "Wanna B" should be signed in
         | 
| 26 27 |  | 
| 27 28 | 
             
                When I go to the home page
         | 
| 28 29 | 
             
                And I follow "Sign out"
         | 
| @@ -33,7 +34,7 @@ Feature: Signing up | |
| 33 34 | 
             
                And I enter "wanna_pass" into "*password"
         | 
| 34 35 | 
             
                And I press "Sign in"
         | 
| 35 36 | 
             
                Then I should see "Wanna B"
         | 
| 36 | 
            -
             | 
| 37 | 
            +
                And "Wanna B" should be signed in
         | 
| 37 38 | 
             
              Scenario: Signing up with approval
         | 
| 38 39 | 
             
                #When I go to card "AccountRequest"
         | 
| 39 40 | 
             
                #And In the main card content I click "Wanna B"
         | 
| @@ -341,6 +341,10 @@ Then /^"([^"]*)" should be selected for "([^"]*)"$/ do |value, field| | |
| 341 341 | 
             
              expect(selected.inner_html).to match /#{value}/
         | 
| 342 342 | 
             
            end
         | 
| 343 343 |  | 
| 344 | 
            +
            Then /^"([^"]*)" should be signed in$/ do |user|  # "
         | 
| 345 | 
            +
              has_css?('#my-card-link', text: user)
         | 
| 346 | 
            +
            end
         | 
| 347 | 
            +
             | 
| 344 348 | 
             
            When /^I press enter to search$/ do
         | 
| 345 349 | 
             
              find('#_keyword').native.send_keys(:return)
         | 
| 346 350 | 
             
            end
         | 
    
        data/lib/wagn/commands.rb
    CHANGED
    
    | @@ -1,5 +1,8 @@ | |
| 1 1 | 
             
            require 'optparse'
         | 
| 2 | 
            -
             | 
| 2 | 
            +
             | 
| 3 | 
            +
            # add method in? to Object class
         | 
| 4 | 
            +
            require 'active_support/core_ext/object/inclusion'
         | 
| 5 | 
            +
            require 'wagn/parser'
         | 
| 3 6 |  | 
| 4 7 | 
             
            def load_rake_tasks
         | 
| 5 8 | 
             
              require './config/environment'
         | 
| @@ -7,7 +10,8 @@ def load_rake_tasks | |
| 7 10 | 
             
              Wagn::Application.load_tasks
         | 
| 8 11 | 
             
            end
         | 
| 9 12 |  | 
| 10 | 
            -
            RAILS_COMMANDS = %w( generate destroy plugin benchmarker profiler console | 
| 13 | 
            +
            RAILS_COMMANDS = %w( generate destroy plugin benchmarker profiler console
         | 
| 14 | 
            +
                                 server dbconsole application runner )
         | 
| 11 15 | 
             
            ALIAS = {
         | 
| 12 16 | 
             
              'rs' => 'rspec',
         | 
| 13 17 | 
             
              'cc' => 'cucumber',
         | 
| @@ -23,65 +27,51 @@ ALIAS = { | |
| 23 27 | 
             
            ARGV << '--help' if ARGV.empty?
         | 
| 24 28 |  | 
| 25 29 | 
             
            def supported_rails_command? arg
         | 
| 26 | 
            -
              arg.in? | 
| 30 | 
            +
              arg.in?(RAILS_COMMANDS) || ALIAS[arg].in?(RAILS_COMMANDS)
         | 
| 27 31 | 
             
            end
         | 
| 28 32 |  | 
| 29 33 | 
             
            def find_spec_file filename, base_dir
         | 
| 30 34 | 
             
              file, line = filename.split(':')
         | 
| 31 | 
            -
              if file.include? | 
| 35 | 
            +
              if file.include?('_spec.rb') && File.exist?(file)
         | 
| 32 36 | 
             
                filename
         | 
| 33 37 | 
             
              else
         | 
| 34 | 
            -
                file = File.basename(file, | 
| 35 | 
            -
                Dir.glob("#{base_dir}/**/#{file}_spec.rb").flatten.map | 
| 38 | 
            +
                file = File.basename(file, '.rb').sub(/_spec$/, '')
         | 
| 39 | 
            +
                Dir.glob("#{base_dir}/**/#{file}_spec.rb").flatten.map do |spec_file|
         | 
| 40 | 
            +
                  line ? "#{spec_file}:#{line}" : file
         | 
| 41 | 
            +
                end.join(' ')
         | 
| 36 42 | 
             
              end
         | 
| 37 43 | 
             
            end
         | 
| 38 44 |  | 
| 39 | 
            -
             | 
| 45 | 
            +
            WAGN_DB_TASKS = %w[seed reseed load update]
         | 
| 40 46 |  | 
| 41 47 | 
             
            if supported_rails_command? ARGV.first
         | 
| 42 48 | 
             
              if ARGV.delete('--rescue')
         | 
| 43 | 
            -
                ENV[ | 
| 49 | 
            +
                ENV['PRY_RESCUE_RAILS'] = '1'
         | 
| 44 50 | 
             
              end
         | 
| 45 51 | 
             
              command = ARGV.first
         | 
| 46 52 | 
             
              command = ALIAS[command] || command
         | 
| 47 | 
            -
             | 
| 53 | 
            +
             | 
| 54 | 
            +
              # without this, the card generators don't list with: wagn g --help
         | 
| 55 | 
            +
              require 'generators/card' if command == 'generate'
         | 
| 48 56 | 
             
              require 'rails/commands'
         | 
| 49 57 | 
             
            else
         | 
| 50 58 | 
             
              command = ARGV.shift
         | 
| 51 59 | 
             
              command = ALIAS[command] || command
         | 
| 52 60 |  | 
| 53 61 | 
             
              case command
         | 
| 54 | 
            -
              when * | 
| 55 | 
            -
                 | 
| 56 | 
            -
                 | 
| 57 | 
            -
             | 
| 58 | 
            -
             | 
| 59 | 
            -
                    envs = ['production']
         | 
| 60 | 
            -
                  end
         | 
| 61 | 
            -
                  parser.on('--test','-t', "#{command} test database") do
         | 
| 62 | 
            -
                    envs = ['test']
         | 
| 63 | 
            -
                  end
         | 
| 64 | 
            -
                  parser.on('--development', '-d', "#{command} development database") do
         | 
| 65 | 
            -
                    envs = ['development']
         | 
| 66 | 
            -
                  end
         | 
| 67 | 
            -
                  parser.on('--all', '-a', "#{command} production, test, and development database") do
         | 
| 68 | 
            -
                    envs = %w( production development test)
         | 
| 69 | 
            -
                  end
         | 
| 70 | 
            -
                end
         | 
| 71 | 
            -
                parser.parse!(ARGV)
         | 
| 72 | 
            -
                task_cmd="bundle exec rake wagn:#{command}"
         | 
| 73 | 
            -
                if envs.empty?
         | 
| 62 | 
            +
              when *WAGN_DB_TASKS
         | 
| 63 | 
            +
                opts = {}
         | 
| 64 | 
            +
                Wagn::Parser.db_task(command, opts).parse!(ARGV)
         | 
| 65 | 
            +
                task_cmd = "bundle exec rake wagn:#{command}"
         | 
| 66 | 
            +
                if !opts[:envs] || opts[:envs].empty?
         | 
| 74 67 | 
             
                  puts task_cmd
         | 
| 75 68 | 
             
                  puts `#{task_cmd}`
         | 
| 76 69 | 
             
                else
         | 
| 77 | 
            -
                  envs.each do |env|
         | 
| 70 | 
            +
                  opts[:envs].each do |env|
         | 
| 78 71 | 
             
                    puts "env RAILS_ENV=#{env} #{task_cmd}"
         | 
| 79 72 | 
             
                    puts `env RAILS_ENV=#{env} #{task_cmd}`
         | 
| 80 73 | 
             
                  end
         | 
| 81 74 | 
             
                end
         | 
| 82 | 
            -
            #  when 'update'
         | 
| 83 | 
            -
            #    load_rake_tasks
         | 
| 84 | 
            -
            #    Rake::Task['wagn:update'].invoke
         | 
| 85 75 | 
             
              when 'cucumber'
         | 
| 86 76 | 
             
                require 'wagn'
         | 
| 87 77 | 
             
                require './config/environment'
         | 
| @@ -89,76 +79,31 @@ else | |
| 89 79 | 
             
                  Dir.glob "#{p}/features"
         | 
| 90 80 | 
             
                end.flatten
         | 
| 91 81 | 
             
                require_args = "-r #{Wagn.gem_root}/features "
         | 
| 92 | 
            -
                require_args += feature_paths.map { |path| "-r #{path}"}.join(' ')
         | 
| 82 | 
            +
                require_args += feature_paths.map { |path| "-r #{path}" }.join(' ')
         | 
| 93 83 | 
             
                feature_args = ARGV.empty? ? feature_paths.join(' ') : ARGV.join(' ')
         | 
| 94 | 
            -
                unless system  | 
| 84 | 
            +
                unless system 'RAILS_ROOT=. bundle exec cucumber ' \
         | 
| 85 | 
            +
                              "#{require_args} #{feature_args} 2>&1"
         | 
| 95 86 | 
             
                  exit $?.exitstatus
         | 
| 96 87 | 
             
                end
         | 
| 97 88 | 
             
              when 'jasmine'
         | 
| 98 | 
            -
                unless system  | 
| 89 | 
            +
                unless system 'RAILS_ENV=test bundle exec rake spec:javascript 2>&1'
         | 
| 99 90 | 
             
                  exit $?.exitstatus
         | 
| 100 91 | 
             
                end
         | 
| 101 92 | 
             
              when 'rspec'
         | 
| 102 | 
            -
                opts = {}
         | 
| 103 93 | 
             
                require 'rspec/core'
         | 
| 104 94 | 
             
                require 'wagn/application'
         | 
| 105 | 
            -
                parser = RSpec::Core::Parser.new.parser(opts)
         | 
| 106 | 
            -
                parser.banner = "Usage: wagn rspec [WAGN ARGS] -- [RSPEC ARGS]\n\nRSPEC ARGS"
         | 
| 107 | 
            -
                parser.separator <<-WAGN
         | 
| 108 | 
            -
             | 
| 109 | 
            -
            WAGN ARGS
         | 
| 110 | 
            -
             | 
| 111 | 
            -
              You don't have to give a full path for FILENAME, the basename is enough
         | 
| 112 | 
            -
              If FILENAME does not include '_spec' rspec searches for the corresponding spec file.
         | 
| 113 | 
            -
              The line number always referes to example in the (corresponding) spec file.
         | 
| 114 | 
            -
             | 
| 115 | 
            -
            WAGN
         | 
| 116 | 
            -
             | 
| 117 | 
            -
                parser.on('-d', '--spec FILENAME(:LINE)', 'Run spec for a Wagn deck file') do |file|
         | 
| 118 | 
            -
                  opts[:files] = find_spec_file( file, "#{Wagn.root}/mod")
         | 
| 119 | 
            -
                end
         | 
| 120 | 
            -
                parser.on('-c', '--core-spec FILENAME(:LINE)', 'Run spec for a Wagn core file') do |file|
         | 
| 121 | 
            -
                  opts[:files] = find_spec_file( file, Cardio.gem_root)
         | 
| 122 | 
            -
                end
         | 
| 123 | 
            -
                parser.on('-m', '--mod MODNAME', 'Run all specs for a mod or matching a mod') do |file|
         | 
| 124 | 
            -
                  if File.exists? mod_path = "mod/#{file}"
         | 
| 125 | 
            -
                    opts[:files] = "#{Cardio.gem_root}/mod/#{file}"
         | 
| 126 | 
            -
                  elsif File.exists? mod_path = "#{Cardio.gem_root}/mod/#{file}"
         | 
| 127 | 
            -
                    opts[:files] = "#{Cardio.gem_root}/mod/#{file}"
         | 
| 128 | 
            -
                  elsif (opts[:files] = find_spec_file( file, "mod")).present?
         | 
| 129 | 
            -
                  else
         | 
| 130 | 
            -
                    opts[:files] = find_spec_file( file, "#{Cardio.gem_root}/mod")
         | 
| 131 | 
            -
                  end
         | 
| 132 | 
            -
                end
         | 
| 133 | 
            -
                parser.on('-s', '--[no-]simplecov', 'Run with simplecov') do |s|
         | 
| 134 | 
            -
                  opts[:simplecov] = s ? '' : 'COVERAGE=false'
         | 
| 135 | 
            -
                end
         | 
| 136 | 
            -
                parser.on('--rescue', 'Run with pry-rescue') do
         | 
| 137 | 
            -
                  if opts[:executer] == 'spring'
         | 
| 138 | 
            -
                    puts "Disabled pry-rescue. Not compatible with spring."
         | 
| 139 | 
            -
                  else
         | 
| 140 | 
            -
                    opts[:rescue] = 'rescue '
         | 
| 141 | 
            -
                  end
         | 
| 142 | 
            -
                end
         | 
| 143 | 
            -
                parser.on('--[no-]spring', 'Run with spring') do |spring|
         | 
| 144 | 
            -
                  if spring
         | 
| 145 | 
            -
                    opts[:executer] = 'spring'
         | 
| 146 | 
            -
                    if opts[:rescue]
         | 
| 147 | 
            -
                      opts[:rescue]  = ''
         | 
| 148 | 
            -
                      puts "Disabled pry-rescue. Not compatible with spring."
         | 
| 149 | 
            -
                    end
         | 
| 150 | 
            -
                  else
         | 
| 151 | 
            -
                    opts[:executer] = 'bundle exec'
         | 
| 152 | 
            -
                  end
         | 
| 153 | 
            -
                end
         | 
| 154 | 
            -
                parser.separator "\n"
         | 
| 155 95 |  | 
| 156 96 | 
             
                before_split = true
         | 
| 157 | 
            -
                wagn_args, rspec_args = | 
| 97 | 
            +
                wagn_args, rspec_args =
         | 
| 98 | 
            +
                  ARGV.partition do |a|
         | 
| 99 | 
            +
                    before_split = (a == '--' ? false : before_split)
         | 
| 100 | 
            +
                  end
         | 
| 158 101 | 
             
                rspec_args.shift
         | 
| 159 | 
            -
             | 
| 160 | 
            -
                 | 
| 161 | 
            -
                rspec_command = | 
| 102 | 
            +
                opts = {}
         | 
| 103 | 
            +
                Wagn::Parser.rspec(opts).parse!(wagn_args)
         | 
| 104 | 
            +
                rspec_command =
         | 
| 105 | 
            +
                  "RAILS_ROOT=. #{opts[:simplecov]} #{opts[:executer]} " \
         | 
| 106 | 
            +
                  " #{opts[:rescue]} rspec #{rspec_args.join(' ')} #{opts[:files]} 2>&1"
         | 
| 162 107 | 
             
                unless system rspec_command
         | 
| 163 108 | 
             
                  exit $?.exitstatus
         | 
| 164 109 | 
             
                end
         | 
| @@ -168,13 +113,14 @@ WAGN | |
| 168 113 | 
             
                if ARGV.first.in?(['-h', '--help'])
         | 
| 169 114 | 
             
                  require 'wagn/commands/application'
         | 
| 170 115 | 
             
                else
         | 
| 171 | 
            -
                  puts "Can't initialize a new deck within the directory of another,  | 
| 116 | 
            +
                  puts "Can't initialize a new deck within the directory of another, " \
         | 
| 117 | 
            +
                       "please change to a non-deck directory first.\n"
         | 
| 172 118 | 
             
                  puts "Type 'wagn' for help."
         | 
| 173 119 | 
             
                  exit(1)
         | 
| 174 120 | 
             
                end
         | 
| 175 121 |  | 
| 176 122 | 
             
              else
         | 
| 177 | 
            -
                puts  | 
| 123 | 
            +
                puts 'Error: Command not recognized' unless command.in?(['-h', '--help'])
         | 
| 178 124 | 
             
                puts <<-EOT
         | 
| 179 125 | 
             
              Usage: wagn COMMAND [ARGS]
         | 
| 180 126 |  | 
| @@ -192,6 +138,7 @@ WAGN | |
| 192 138 | 
             
               cucumber     Run cucumber features (short-cut alias: "cc")
         | 
| 193 139 | 
             
               rspec        Run rspec tests (short-cut alias: "rs")
         | 
| 194 140 | 
             
               update       Run card migrations
         | 
| 141 | 
            +
               load         Load bootstrap data into database
         | 
| 195 142 |  | 
| 196 143 | 
             
              In addition to those, there are the standard rails commands:
         | 
| 197 144 | 
             
               generate     Generate new code (short-cut alias: "g")
         | 
| @@ -207,5 +154,3 @@ WAGN | |
| 207 154 | 
             
                exit(1)
         | 
| 208 155 | 
             
              end
         | 
| 209 156 | 
             
            end
         | 
| 210 | 
            -
             | 
| 211 | 
            -
             | 
| @@ -60,9 +60,9 @@ group :development do | |
| 60 60 | 
             
            end
         | 
| 61 61 |  | 
| 62 62 | 
             
            group :test do
         | 
| 63 | 
            -
              gem 'rspec'
         | 
| 64 | 
            -
              gem 'rspec-rails' | 
| 65 | 
            -
              gem 'rspec-html-matchers' | 
| 63 | 
            +
              gem 'rspec', '~> 3.4'
         | 
| 64 | 
            +
              gem 'rspec-rails'         # behavior-driven-development suite
         | 
| 65 | 
            +
              gem 'rspec-html-matchers'
         | 
| 66 66 | 
             
              gem 'spork', '>=0.9'
         | 
| 67 67 | 
             
              gem 'rr'#, '=1.0.0'
         | 
| 68 68 | 
             
            	gem 'simplecov', '~> 0.7.1', :require => false  #test coverage
         | 
| @@ -8,14 +8,6 @@ module <%= app_const_base %> | |
| 8 8 |  | 
| 9 9 | 
             
                # Wagn inherits Rails configuration options.  See http://guides.rubyonrails.org/configuring.html
         | 
| 10 10 |  | 
| 11 | 
            -
                config.recaptcha_public_key  = '6LdhRssSAAAAAFfLt1Wkw43hoaA8RTIgso9-tvtc'
         | 
| 12 | 
            -
                config.recaptcha_private_key = '6LdhRssSAAAAAGwzl069pJQBdmzCZigm1nV-dmqK'
         | 
| 13 | 
            -
                # config.recaptcha_proxy = ...
         | 
| 14 | 
            -
                #
         | 
| 15 | 
            -
                # IMPORTANT: please be sure to register for your own recaptcha keys before deploying a live site
         | 
| 16 | 
            -
                # It's quick and easy.  Just follow instructions at https://www.google.com/recaptcha/admin/create
         | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 19 11 | 
             
                # Email configuration
         | 
| 20 12 |  | 
| 21 13 | 
             
                config.action_mailer.perform_deliveries = false
         | 
    
        data/lib/wagn/parser.rb
    ADDED
    
    | @@ -0,0 +1,93 @@ | |
| 1 | 
            +
            # -*- encoding : utf-8 -*-
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            module Wagn
         | 
| 4 | 
            +
              class Parser
         | 
| 5 | 
            +
                class << self
         | 
| 6 | 
            +
                  def db_task command, opts
         | 
| 7 | 
            +
                    OptionParser.new do |parser|
         | 
| 8 | 
            +
                      parser.banner = "Usage: wagn #{command} [options]\n\n" \
         | 
| 9 | 
            +
                                      "Run wagn:#{command} task on the production "\
         | 
| 10 | 
            +
                                      " database specified in config/database.yml\n\n"
         | 
| 11 | 
            +
                      parser.on('--production', '-p',
         | 
| 12 | 
            +
                                "#{command} production database (default)") do
         | 
| 13 | 
            +
                        opts[:envs] = ['production']
         | 
| 14 | 
            +
                      end
         | 
| 15 | 
            +
                      parser.on('--test', '-t',
         | 
| 16 | 
            +
                                "#{command} test database") do
         | 
| 17 | 
            +
                        opts[:envs] = ['test']
         | 
| 18 | 
            +
                      end
         | 
| 19 | 
            +
                      parser.on('--development', '-d',
         | 
| 20 | 
            +
                                "#{command} development database") do
         | 
| 21 | 
            +
                        opts[:envs] = ['development']
         | 
| 22 | 
            +
                      end
         | 
| 23 | 
            +
                      parser.on('--all', '-a',
         | 
| 24 | 
            +
                                "#{command} production, test, and development database") do
         | 
| 25 | 
            +
                        opts[:envs] = %w( production development test)
         | 
| 26 | 
            +
                      end
         | 
| 27 | 
            +
                    end
         | 
| 28 | 
            +
                  end
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                  def rspec opts
         | 
| 31 | 
            +
                    OptionParser.new do |parser|
         | 
| 32 | 
            +
                      parser.banner = "Usage: wagn rspec [WAGN ARGS] -- [RSPEC ARGS]\n\n" \
         | 
| 33 | 
            +
                                      'RSPEC ARGS'
         | 
| 34 | 
            +
                      parser.separator <<-WAGN
         | 
| 35 | 
            +
             | 
| 36 | 
            +
                  WAGN ARGS
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                    You don't have to give a full path for FILENAME, the basename is enough
         | 
| 39 | 
            +
                    If FILENAME does not include '_spec' rspec searches for the
         | 
| 40 | 
            +
                    corresponding spec file.
         | 
| 41 | 
            +
                    The line number always referes to example in the (corresponding) spec
         | 
| 42 | 
            +
                    file.
         | 
| 43 | 
            +
             | 
| 44 | 
            +
                  WAGN
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                      parser.on('-d', '--spec FILENAME(:LINE)',
         | 
| 47 | 
            +
                                'Run spec for a Wagn deck file') do |file|
         | 
| 48 | 
            +
                        opts[:files] = find_spec_file(file, "#{Wagn.root}/mod")
         | 
| 49 | 
            +
                      end
         | 
| 50 | 
            +
                      parser.on('-c', '--core-spec FILENAME(:LINE)',
         | 
| 51 | 
            +
                                'Run spec for a Wagn core file') do |file|
         | 
| 52 | 
            +
                        opts[:files] = find_spec_file(file, Cardio.gem_root)
         | 
| 53 | 
            +
                      end
         | 
| 54 | 
            +
                      parser.on('-m', '--mod MODNAME',
         | 
| 55 | 
            +
                                'Run all specs for a mod or matching a mod') do |file|
         | 
| 56 | 
            +
                        opts[:files] =
         | 
| 57 | 
            +
                          if File.exists?("mod/#{file}")
         | 
| 58 | 
            +
                            "#{Cardio.gem_root}/mod/#{file}"
         | 
| 59 | 
            +
                          elsif File.exists?("#{Cardio.gem_root}/mod/#{file}")
         | 
| 60 | 
            +
                            "#{Cardio.gem_root}/mod/#{file}"
         | 
| 61 | 
            +
                          elsif (files = find_spec_file(file, 'mod')) && files.present?
         | 
| 62 | 
            +
                            files
         | 
| 63 | 
            +
                          else
         | 
| 64 | 
            +
                            find_spec_file(file, "#{Cardio.gem_root}/mod")
         | 
| 65 | 
            +
                          end
         | 
| 66 | 
            +
                      end
         | 
| 67 | 
            +
                      parser.on('-s', '--[no-]simplecov', 'Run with simplecov') do |s|
         | 
| 68 | 
            +
                        opts[:simplecov] = s ? '' : 'COVERAGE=false'
         | 
| 69 | 
            +
                      end
         | 
| 70 | 
            +
                      parser.on('--rescue', 'Run with pry-rescue') do
         | 
| 71 | 
            +
                        if opts[:executer] == 'spring'
         | 
| 72 | 
            +
                          puts 'Disabled pry-rescue. Not compatible with spring.'
         | 
| 73 | 
            +
                        else
         | 
| 74 | 
            +
                          opts[:rescue] = 'rescue '
         | 
| 75 | 
            +
                        end
         | 
| 76 | 
            +
                      end
         | 
| 77 | 
            +
                      parser.on('--[no-]spring', 'Run with spring') do |spring|
         | 
| 78 | 
            +
                        if spring
         | 
| 79 | 
            +
                          opts[:executer] = 'spring'
         | 
| 80 | 
            +
                          if opts[:rescue]
         | 
| 81 | 
            +
                            opts[:rescue]  = ''
         | 
| 82 | 
            +
                            puts 'Disabled pry-rescue. Not compatible with spring.'
         | 
| 83 | 
            +
                          end
         | 
| 84 | 
            +
                        else
         | 
| 85 | 
            +
                          opts[:executer] = 'bundle exec'
         | 
| 86 | 
            +
                        end
         | 
| 87 | 
            +
                      end
         | 
| 88 | 
            +
                      parser.separator "\n"
         | 
| 89 | 
            +
                    end
         | 
| 90 | 
            +
                  end
         | 
| 91 | 
            +
                end
         | 
| 92 | 
            +
              end
         | 
| 93 | 
            +
            end
         | 
    
        data/lib/wagn/tasks/wagn.rake
    CHANGED
    
    | @@ -7,7 +7,7 @@ WAGN_SEED_PATH = File.join( | |
| 7 7 | 
             
            )
         | 
| 8 8 |  | 
| 9 9 | 
             
            def prepare_migration
         | 
| 10 | 
            -
              Card::Cache. | 
| 10 | 
            +
              Card::Cache.reset_all
         | 
| 11 11 | 
             
              Card.config.action_mailer.perform_deliveries = false
         | 
| 12 12 | 
             
              Card.reset_column_information
         | 
| 13 13 | 
             
              # this is needed in production mode to insure core db
         | 
| @@ -93,7 +93,7 @@ namespace :wagn do | |
| 93 93 |  | 
| 94 94 | 
             
              desc 'reset cache'
         | 
| 95 95 | 
             
              task reset_cache: :environment do
         | 
| 96 | 
            -
                Card::Cache. | 
| 96 | 
            +
                Card::Cache.reset_all
         | 
| 97 97 | 
             
              end
         | 
| 98 98 |  | 
| 99 99 | 
             
              desc 'set symlink for assets'
         | 
| @@ -119,7 +119,7 @@ namespace :wagn do | |
| 119 119 | 
             
                end
         | 
| 120 120 |  | 
| 121 121 | 
             
                puts 'migrating core cards'
         | 
| 122 | 
            -
                Card::Cache. | 
| 122 | 
            +
                Card::Cache.reset_all
         | 
| 123 123 | 
             
                Rake::Task['wagn:migrate:core_cards'].execute #not invoke because we don't want to reload environment
         | 
| 124 124 | 
             
                if stamp
         | 
| 125 125 | 
             
                  Rake::Task['wagn:migrate:stamp'].reenable
         | 
| @@ -134,7 +134,7 @@ namespace :wagn do | |
| 134 134 | 
             
                  Rake::Task['wagn:migrate:stamp'].invoke :deck_cards
         | 
| 135 135 | 
             
                end
         | 
| 136 136 |  | 
| 137 | 
            -
                Card::Cache. | 
| 137 | 
            +
                Card::Cache.reset_all
         | 
| 138 138 | 
             
              end
         | 
| 139 139 |  | 
| 140 140 | 
             
              desc 'insert existing card migrations into schema_migrations_cards to avoid re-migrating'
         | 
| @@ -165,7 +165,7 @@ namespace :wagn do | |
| 165 165 | 
             
                task core_cards: :environment do
         | 
| 166 166 | 
             
                  require 'card/core_migration'
         | 
| 167 167 |  | 
| 168 | 
            -
                  Card::Cache. | 
| 168 | 
            +
                  Card::Cache.reset_all
         | 
| 169 169 | 
             
                  ENV['SCHEMA'] ||= "#{Cardio.gem_root}/db/schema.rb"
         | 
| 170 170 | 
             
                  prepare_migration
         | 
| 171 171 | 
             
                  paths = Cardio.migration_paths(:core_cards)
         | 
| @@ -183,7 +183,7 @@ namespace :wagn do | |
| 183 183 | 
             
                task deck_cards: :environment do
         | 
| 184 184 | 
             
                  require 'card/migration'
         | 
| 185 185 |  | 
| 186 | 
            -
                  Card::Cache. | 
| 186 | 
            +
                  Card::Cache.reset_all
         | 
| 187 187 | 
             
                  ENV['SCHEMA'] ||= "#{Cardio.gem_root}/db/schema.rb"
         | 
| 188 188 | 
             
                  prepare_migration
         | 
| 189 189 | 
             
                  paths = ActiveRecord::Migrator.migrations_paths = Cardio.migration_paths(:deck_cards)
         | 
| @@ -247,17 +247,17 @@ namespace :wagn do | |
| 247 247 | 
             
              namespace :bootstrap do
         | 
| 248 248 | 
             
                desc 'rid template of unneeded cards, acts, actions, changes, and references'
         | 
| 249 249 | 
             
                task clean: :environment do
         | 
| 250 | 
            -
                  Card::Cache. | 
| 250 | 
            +
                  Card::Cache.reset_all
         | 
| 251 251 | 
             
                  clear_history
         | 
| 252 252 | 
             
                  delete_unwanted_cards
         | 
| 253 253 | 
             
                  Card.empty_trash
         | 
| 254 254 | 
             
                  correct_time_and_user_stamps
         | 
| 255 | 
            -
                  Card::Cache. | 
| 255 | 
            +
                  Card::Cache.reset_all
         | 
| 256 256 | 
             
                end
         | 
| 257 257 |  | 
| 258 258 | 
             
                desc 'dump db to bootstrap fixtures'
         | 
| 259 259 | 
             
                task dump: :environment do
         | 
| 260 | 
            -
                  Card::Cache. | 
| 260 | 
            +
                  Card::Cache.reset_all
         | 
| 261 261 |  | 
| 262 262 | 
             
                  # FIXME temporarily taking this out!!
         | 
| 263 263 | 
             
                  Rake::Task['wagn:bootstrap:copy_mod_files'].invoke
         | 
| @@ -354,7 +354,7 @@ def delete_unwanted_cards | |
| 354 354 | 
             
                    card.delete!
         | 
| 355 355 | 
             
                  end
         | 
| 356 356 | 
             
                end
         | 
| 357 | 
            -
                Card::Cache. | 
| 357 | 
            +
                Card::Cache.reset_all
         | 
| 358 358 | 
             
                # FIXME: can this be associated with the machine module somehow?
         | 
| 359 359 | 
             
                %w{ machine_input machine_output }.each do |codename|
         | 
| 360 360 | 
             
                  Card.search(:right=>{:codename=>codename }).each do |card|
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: wagn
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1. | 
| 4 | 
            +
              version: 1.17.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ethan McCutchen
         | 
| @@ -11,7 +11,7 @@ authors: | |
| 11 11 | 
             
            autorequire: 
         | 
| 12 12 | 
             
            bindir: bin
         | 
| 13 13 | 
             
            cert_chain: []
         | 
| 14 | 
            -
            date: 2016-01- | 
| 14 | 
            +
            date: 2016-01-22 00:00:00.000000000 Z
         | 
| 15 15 | 
             
            dependencies:
         | 
| 16 16 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 17 17 | 
             
              name: rails
         | 
| @@ -33,14 +33,14 @@ dependencies: | |
| 33 33 | 
             
                requirements:
         | 
| 34 34 | 
             
                - - '='
         | 
| 35 35 | 
             
                  - !ruby/object:Gem::Version
         | 
| 36 | 
            -
                    version: 1. | 
| 36 | 
            +
                    version: 1.17.0
         | 
| 37 37 | 
             
              type: :runtime
         | 
| 38 38 | 
             
              prerelease: false
         | 
| 39 39 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 40 40 | 
             
                requirements:
         | 
| 41 41 | 
             
                - - '='
         | 
| 42 42 | 
             
                  - !ruby/object:Gem::Version
         | 
| 43 | 
            -
                    version: 1. | 
| 43 | 
            +
                    version: 1.17.0
         | 
| 44 44 | 
             
            description: a wiki approach to stuctured data, dynamic interaction, and web design
         | 
| 45 45 | 
             
            email:
         | 
| 46 46 | 
             
            - info@wagn.org
         | 
| @@ -155,6 +155,7 @@ files: | |
| 155 155 | 
             
            - lib/wagn/generators/wagn/templates/spec/spec_helper.rb
         | 
| 156 156 | 
             
            - lib/wagn/generators/wagn/wagn_generator.rb
         | 
| 157 157 | 
             
            - lib/wagn/mods_spec_helper.rb
         | 
| 158 | 
            +
            - lib/wagn/parser.rb
         | 
| 158 159 | 
             
            - lib/wagn/script_wagn_loader.rb
         | 
| 159 160 | 
             
            - lib/wagn/simplecov_helper.rb
         | 
| 160 161 | 
             
            - lib/wagn/tasks/.gitkeep
         |