duck_test 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,20 +1,10 @@
1
- module DuckTest
1
+ require 'test/unit'
2
2
 
3
- # ...
4
- class Autorun
5
-
6
- ##################################################################################
7
- def self.config
8
- ::Test::Unit::Runner.class_eval do
9
- alias_method :original_run, :run
10
- def run(args = [])
11
- if DuckTest::FrameWork::Base.ok_to_run
12
- original_run(args)
13
- end
14
- end
15
- end
3
+ Test::Unit::Runner.class_eval do
4
+ alias_method :original_run, :run
5
+ def run(args = [])
6
+ if DuckTest::FrameWork::Base.ok_to_run
7
+ original_run(args)
16
8
  end
17
-
18
9
  end
19
-
20
10
  end
@@ -4,7 +4,6 @@ require "duck_test/version"
4
4
  module DuckTest
5
5
 
6
6
  autoload :AutoloadConfig, 'duck_test/autoload_config'
7
- autoload :Autorun, 'duck_test/autorun'
8
7
  autoload :Config, 'duck_test/config'
9
8
  autoload :ConfigHelper, 'duck_test/config_helper'
10
9
  autoload :Console, 'duck_test/console'
@@ -14,6 +13,7 @@ module DuckTest
14
13
  autoload :Logger, 'duck_test/logger'
15
14
  autoload :LoggerHelper, 'duck_test/logger'
16
15
  autoload :Platforms, 'duck_test/platforms/base'
16
+ autoload :RunCommands, 'duck_test/run_commands'
17
17
  autoload :Usage, 'duck_test/usage'
18
18
  autoload :VersionHelper, 'duck_test/version'
19
19
 
@@ -181,6 +181,18 @@ module DuckTest
181
181
  return DuckTest::Config.framework.run_all
182
182
  end
183
183
 
184
+ ##################################################################################
185
+ # Saves the current environment settings to the users home directory ~/.ducktestrc
186
+ def save
187
+ RunCommands.config[:latency] = DuckTest::Config.framework.queue.latency
188
+ RunCommands.config[:speed] = DuckTest::Config.framework.queue.speed
189
+ RunCommands.config[:listener_speed] = DuckTest::Config.framework.listener.speed
190
+ RunCommands.config[:ar] = Logger.to_severity(ActiveRecord::Base.logger.level)
191
+ RunCommands.config[:ll] = Logger.to_severity(Logger.log_level)
192
+ RunCommands.save
193
+ return ""
194
+ end
195
+
184
196
  ##################################################################################
185
197
  # See {FrameWork::Queue#speed}
186
198
  # @return [String] The output message
@@ -9,7 +9,7 @@ module DuckTest
9
9
 
10
10
  super
11
11
 
12
- Logger.log_level = :debug
12
+ #Logger.log_level = :debug
13
13
 
14
14
  #self.class.reset
15
15
 
@@ -480,6 +480,7 @@ module DuckTest
480
480
  config[:autorun] = config[:autorun].nil? ? framework[:autorun] : config[:autorun]
481
481
  config[:autorun] = false unless config[:runnable]
482
482
 
483
+ config[:watch_basedir] = config[:basedir] unless config[:basedir].blank?
483
484
  config[:watch_basedir] = config[:watch_basedir].blank? ? framework[:watch_basedir] : config[:watch_basedir]
484
485
  config[:runnable_basedir] = config[:runnable_basedir].blank? ? framework[:runnable_basedir] : config[:runnable_basedir]
485
486
  buffer_config = {}
@@ -517,8 +518,17 @@ module DuckTest
517
518
  def runnable(*args, &block)
518
519
  args.push({}) unless args.last.kind_of?(Hash)
519
520
  args.last[:runnable] = true
521
+
522
+ unless args.last[:basedir].blank?
523
+ args.last[:runnable_basedir] = args.last[:basedir]
524
+ end
525
+
520
526
  if args.last[:watch_basedir].blank?
521
- args.last[:watch_basedir] = self.get_framework(self.current_framework)[:runnable_basedir]
527
+ if args.last[:runnable_basedir].blank?
528
+ args.last[:watch_basedir] = self.get_framework(self.current_framework)[:runnable_basedir]
529
+ else
530
+ args.last[:watch_basedir] = args.last[:runnable_basedir]
531
+ end
522
532
  end
523
533
  watch(*args, &block)
524
534
  end
@@ -420,7 +420,10 @@ module DuckTest
420
420
  # See {Platforms::Listener#speed}
421
421
  # @return [NilClass]
422
422
  def set_listener_speed(value)
423
- self.listener.speed = value
423
+ begin
424
+ self.listener.speed = value.to_f
425
+ rescue
426
+ end
424
427
  return nil
425
428
  end
426
429
 
@@ -428,7 +431,10 @@ module DuckTest
428
431
  # See {Queue#speed}
429
432
  # @return [NilClass]
430
433
  def set_queue_speed(value)
431
- self.queue.set_speed(value)
434
+ begin
435
+ self.queue.set_speed(value.to_f)
436
+ rescue
437
+ end
432
438
  return nil
433
439
  end
434
440
 
@@ -436,7 +442,10 @@ module DuckTest
436
442
  # See {Queue#latency}
437
443
  # @return [NilClass]
438
444
  def set_latency(value)
439
- self.queue.set_latency(value)
445
+ begin
446
+ self.queue.set_latency(value.to_f)
447
+ rescue
448
+ end
440
449
  return nil
441
450
  end
442
451
 
@@ -470,6 +479,20 @@ module DuckTest
470
479
 
471
480
  self.start
472
481
 
482
+ RunCommands.load
483
+
484
+ self.set_latency(RunCommands.config[:latency]) unless RunCommands.config[:latency].blank?
485
+ self.set_listen_speed(RunCommands.config[:listen_speed]) unless RunCommands.config[:listen_speed].blank?
486
+ self.set_queue_speed(RunCommands.config[:speed]) unless RunCommands.config[:speed].blank?
487
+
488
+ unless RunCommands.config[:ar].blank?
489
+ ActiveRecord::Base.logger.level = Logger.to_severity(RunCommands.config[:ar].to_sym)
490
+ end
491
+
492
+ unless RunCommands.config[:ll].blank?
493
+ Logger.log_level = RunCommands.config[:ll]
494
+ end
495
+
473
496
  rescue Exception => e
474
497
  ducklog.exception e
475
498
  end
@@ -2,10 +2,12 @@ module DuckTest
2
2
 
3
3
  # Conveinence methods providing access to the Logger class.
4
4
  module LoggerHelper
5
+
5
6
  # ...
6
7
  def ducklog
7
8
  return Logger.ducklog
8
9
  end
10
+
9
11
  end
10
12
 
11
13
  # Custom Logger
@@ -27,7 +27,7 @@ module DuckTest
27
27
  # if true, the tests should run, otherwise, the tests should not run. this should prevent tests from running when
28
28
  # the console exits.
29
29
  if $0 =~ /rails$/
30
- Autorun.config
30
+ require 'duck_test/autorun'
31
31
  end
32
32
  end
33
33
 
@@ -0,0 +1,44 @@
1
+ module DuckTest
2
+
3
+ # Run Commands provides support for linux style .rc config files to load and set environment, etc.
4
+ class RunCommands
5
+
6
+ include LoggerHelper
7
+
8
+ ##################################################################################
9
+ # Loads environment settings from the home directory of the user.
10
+ def self.load
11
+
12
+ file_spec = File.expand_path("~/.ducktestrc")
13
+ if File.exist?(file_spec)
14
+ Logger.ducklog.console "Loading environment from: #{file_spec}"
15
+ self.config = YAML.load_file(file_spec)
16
+ self.config = self.config.inject({}){|object,(k,v)| object[k.to_sym] = v; object}
17
+ end
18
+ end
19
+
20
+ ##################################################################################
21
+ # Saves the current environment settings to the home directory of the user.
22
+ def self.save
23
+ file_spec = File.expand_path("~/.ducktestrc")
24
+ File.open(file_spec, "w") do |file|
25
+ file.write(YAML.dump(self.config))
26
+ end
27
+
28
+ end
29
+
30
+ ##################################################################################
31
+ def self.config
32
+ unless defined?(@@config)
33
+ @@config = {}
34
+ end
35
+ return @@config
36
+ end
37
+
38
+ def self.config=(value)
39
+ @@config = value
40
+ end
41
+
42
+ end
43
+ end
44
+
@@ -19,6 +19,8 @@ duck.runall - Loads all runnable test files from disk and executes the ru
19
19
 
20
20
  duck.whitelist - Lists all of the files that have been whitelisted
21
21
 
22
+ duck.save - Saves the current environment to the user home directory ~/.ducktestrc
23
+
22
24
 
23
25
  The following commands accept optional arguments. Type the command followed by :help Example: duck.run :help
24
26
 
@@ -1,3 +1,3 @@
1
1
  module DuckTest
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
@@ -1,3 +1,5 @@
1
+ require 'logger'
2
+
1
3
  namespace :test do
2
4
 
3
5
  desc "Removes all of the test files using rake test:prepare"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: duck_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-01 00:00:00.000000000 Z
12
+ date: 2012-07-18 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: DuckTest is a gem that facilitates automated running of TestUnit and
15
15
  RSpec tests directly in the IRB console. Tests run within a second of being changed.
@@ -22,48 +22,49 @@ extra_rdoc_files: []
22
22
  files:
23
23
  - lib/tasks/gem_tasks.rake
24
24
  - lib/tasks/duck_tests.rake
25
- - lib/duck_test/config_helper.rb
26
- - lib/duck_test/version.rb
27
- - lib/duck_test/console.rb
28
- - lib/duck_test/default_config.rb
29
- - lib/duck_test/autoload_config.rb
30
- - lib/duck_test/config.rb
25
+ - lib/notes.txt
26
+ - lib/duck_test.rb
27
+ - lib/duck_test/logger.rb
31
28
  - lib/duck_test/base.rb
32
- - lib/duck_test/option_parser.rb
33
- - lib/duck_test/usage.rb
29
+ - lib/duck_test/railtie.rb
30
+ - lib/duck_test/autoload_config.rb
34
31
  - lib/duck_test/commands.rb
35
32
  - lib/duck_test/autorun.rb
36
- - lib/duck_test/platforms/dependencies.rb
33
+ - lib/duck_test/frame_work/filter_set.rb
34
+ - lib/duck_test/frame_work/watch_config.rb
35
+ - lib/duck_test/frame_work/base.rb
36
+ - lib/duck_test/frame_work/queue.rb
37
+ - lib/duck_test/frame_work/queue_event.rb
38
+ - lib/duck_test/frame_work/file_manager.rb
39
+ - lib/duck_test/frame_work/rspec/base.rb
40
+ - lib/duck_test/frame_work/rspec/frame_work.rb
41
+ - lib/duck_test/frame_work/test_unit/base.rb
42
+ - lib/duck_test/frame_work/test_unit/frame_work.rb
43
+ - lib/duck_test/frame_work/map.rb
44
+ - lib/duck_test/usage.rb
45
+ - lib/duck_test/usage.yml
46
+ - lib/duck_test/config.rb
47
+ - lib/duck_test/console.rb
48
+ - lib/duck_test/option_parser.rb
49
+ - lib/duck_test/default_config.rb
50
+ - lib/duck_test/config_helper.rb
51
+ - lib/duck_test/run_commands.rb
52
+ - lib/duck_test/gem/helper.rb
53
+ - lib/duck_test/version.rb
37
54
  - lib/duck_test/platforms/watch_event.rb
38
- - lib/duck_test/platforms/listener.rb
39
55
  - lib/duck_test/platforms/base.rb
40
- - lib/duck_test/platforms/windows/listener.rb
41
- - lib/duck_test/platforms/windows/base.rb
42
- - lib/duck_test/platforms/generic/listener.rb
43
56
  - lib/duck_test/platforms/generic/base.rb
57
+ - lib/duck_test/platforms/generic/listener.rb
58
+ - lib/duck_test/platforms/listener.rb
59
+ - lib/duck_test/platforms/dependencies.rb
60
+ - lib/duck_test/platforms/windows/base.rb
61
+ - lib/duck_test/platforms/windows/listener.rb
44
62
  - lib/duck_test/platforms/os_helper.rb
45
- - lib/duck_test/platforms/mac/listener.rb
46
63
  - lib/duck_test/platforms/mac/base.rb
47
64
  - lib/duck_test/platforms/mac/listener.rb.orig
48
- - lib/duck_test/platforms/linux/listener.rb
65
+ - lib/duck_test/platforms/mac/listener.rb
49
66
  - lib/duck_test/platforms/linux/base.rb
50
- - lib/duck_test/gem/helper.rb
51
- - lib/duck_test/logger.rb
52
- - lib/duck_test/railtie.rb
53
- - lib/duck_test/usage.yml
54
- - lib/duck_test/frame_work/file_manager.rb
55
- - lib/duck_test/frame_work/base.rb
56
- - lib/duck_test/frame_work/queue.rb
57
- - lib/duck_test/frame_work/rspec/base.rb
58
- - lib/duck_test/frame_work/rspec/frame_work.rb
59
- - lib/duck_test/frame_work/watch_config.rb
60
- - lib/duck_test/frame_work/filter_set.rb
61
- - lib/duck_test/frame_work/map.rb
62
- - lib/duck_test/frame_work/test_unit/base.rb
63
- - lib/duck_test/frame_work/test_unit/frame_work.rb
64
- - lib/duck_test/frame_work/queue_event.rb
65
- - lib/duck_test.rb
66
- - lib/notes.txt
67
+ - lib/duck_test/platforms/linux/listener.rb
67
68
  - bin/ducktest
68
69
  homepage: http://www.jeffduckett.com/
69
70
  licenses: []
@@ -85,9 +86,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
85
86
  version: '0'
86
87
  requirements: []
87
88
  rubyforge_project:
88
- rubygems_version: 1.8.11
89
+ rubygems_version: 1.8.24
89
90
  signing_key:
90
91
  specification_version: 3
91
92
  summary: DuckTest runs TestUnit and RSpec tests directly in the IRB console.
92
93
  test_files: []
93
- has_rdoc: