achoo 0.5 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGES CHANGED
@@ -1,3 +1,9 @@
1
+ 2011-06-10: version 0.5.1
2
+
3
+ - Fixed failing tests
4
+
5
+ - Some menu headers was not printed
6
+
1
7
  2011-06-10: version 0.5
2
8
 
3
9
  - Added support for plugins.
data/Rakefile CHANGED
@@ -1,8 +1,8 @@
1
1
  # encoding: utf-8
2
2
 
3
- require 'rake/gempackagetask'
4
3
  require 'rake/testtask'
5
4
  require 'rubygems'
5
+ require 'rubygems/package_task'
6
6
 
7
7
  load File.dirname(__FILE__) + '/achoo.gemspec'
8
8
 
@@ -10,17 +10,13 @@ task :default => ['test:unit']
10
10
 
11
11
  namespace 'build' do
12
12
 
13
- Rake::GemPackageTask.new(Spec) do |pkg|
13
+ Gem::PackageTask.new(Spec) do |pkg|
14
14
  pkg.need_tar = true
15
15
  end
16
16
 
17
17
  end
18
18
 
19
- Rake::TestTask.new do |t|
20
- t.libs << "test/lib"
21
- t.test_files = FileList['test/**/test*.rb']
22
- #t.verbose = true
23
- end
19
+ task :test => ['test:unit', 'test:acceptance']
24
20
 
25
21
  namespace 'test' do
26
22
 
@@ -30,10 +26,12 @@ namespace 'test' do
30
26
  t.test_files = FileList['test/unit/test*.rb']
31
27
  end
32
28
 
33
- Rake::TestTask.new do |t|
34
- t.name = :acceptance
35
- t.libs << "test/lib"
36
- t.test_files = FileList['test/acceptance/test*.rb']
29
+ # Need a fresh ruby interpreter for each acceptance test, so I can't
30
+ # use Rake::TestTask
31
+ task :acceptance do
32
+ FileList['test/acceptance/test*.rb'].each do |f|
33
+ ruby "-Ilib -Itest/lib #{f}"
34
+ end
37
35
  end
38
36
 
39
37
  end
@@ -1,15 +1,15 @@
1
1
  require 'achoo'
2
2
  require 'achoo/ical'
3
+ require 'achoo/plugin_base'
3
4
  require 'achoo/ui'
4
- require 'plugman/plugin_base'
5
5
 
6
6
  module Achoo
7
7
  class Plugin
8
- class Ical < Plugman::PluginBase
8
+ class Ical < PluginBase
9
9
 
10
10
  include UI::ExceptionHandling
11
11
 
12
- def state_ok?; RC.has_key?(:ical); end
12
+ def state_ok?; RC.has_key?(:ical) && !RC[:ical].empty?; end
13
13
 
14
14
  def at_startup
15
15
  warm_up_ical_cache
@@ -1,15 +1,15 @@
1
1
  require 'achoo'
2
- require 'achoo/vcs'
2
+ require 'achoo/plugin_base'
3
3
  require 'achoo/ui'
4
- require 'plugman/plugin_base'
4
+ require 'achoo/vcs'
5
5
 
6
6
  module Achoo
7
7
  class Plugin
8
- class VCS < Plugman::PluginBase
8
+ class VCS < PluginBase
9
9
 
10
10
  include UI::ExceptionHandling
11
11
 
12
- def state_ok?; RC.has_key?(:vcs_dirs); end
12
+ def state_ok?; RC.has_key?(:vcs_dirs) && !RC[:vcs_dirs].empty?; end
13
13
 
14
14
  def before_register_hour_remark(date)
15
15
  puts '-' * 80
@@ -122,6 +122,8 @@ module Achoo
122
122
  end
123
123
 
124
124
  def chooser_helper(options, heading, prompt, empty_allowed=false)
125
+ puts heading
126
+
125
127
  extra = empty_allowed ? [''] : []
126
128
  project_names = options.collect {|p| p[1] }
127
129
  if heading == 'All projects'
@@ -22,7 +22,7 @@ class TestLockMonth < Test::Unit::TestCase
22
22
  end
23
23
 
24
24
  def test_lock_month
25
- achoo(:verbose => $DEBUG) do
25
+ achoo(:verbose => ENV['DEBUG_ACHOO']) do
26
26
  expect '6. Lock month'
27
27
  expect_main_prompt
28
28
  puts '6'
@@ -105,7 +105,7 @@ class TestLockMonth < Test::Unit::TestCase
105
105
  end
106
106
 
107
107
  def test_register_hours
108
- achoo(:verbose => $DEBUG) do
108
+ achoo(:verbose => ENV['ACHOO_DEBUG']) do
109
109
  expect '1. Register hours'
110
110
  expect_main_prompt
111
111
  puts '1'
@@ -127,7 +127,10 @@ class TestLockMonth < Test::Unit::TestCase
127
127
  expect 'Hours [7:30]>'
128
128
  puts '2'
129
129
 
130
- expect 'Do you want to change the defaults for worktime period and/or billing percentage? [N/y]>'
130
+ # Bug in expect?
131
+ # Can't check for the whole string
132
+ # expect 'Do you want to change the defaults for worktime period and/or billing percentage? [N/y]>'
133
+ expect 'Do you want to change the defaults for worktime period and/or billing percent'
131
134
  puts 'y'
132
135
 
133
136
  expect 'Worktime periods'
@@ -12,7 +12,7 @@ class AchievoMock
12
12
  @server.silent = true
13
13
  @thread = Thread.new { @server.start }
14
14
  sleep 1
15
- @logger = Logger.new(File.dirname(__FILE__) + '/../../tmp/test.log')
15
+ @logger = Logger.new('/tmp/achoo-test.log')
16
16
  end
17
17
 
18
18
  def stop
@@ -11,23 +11,23 @@ class TestTermMenu < Test::Unit::TestCase
11
11
  end
12
12
 
13
13
  should 'mixin foo accessor' do
14
- assert @a.instance_methods.include?('foo')
14
+ assert @a.instance_methods.include?(:foo)
15
15
  end
16
16
 
17
17
  should 'mixin foo= accessor' do
18
- assert @a.instance_methods.include?('foo=')
18
+ assert @a.instance_methods.include?(:foo=)
19
19
  end
20
20
 
21
21
  should 'mixin foo_day_field accessor' do
22
- assert @a.instance_methods.include?('foo_day_field')
22
+ assert @a.instance_methods.include?(:foo_day_field)
23
23
  end
24
24
 
25
25
  should 'mixin foo_month_field accessor' do
26
- assert @a.instance_methods.include?('foo_month_field')
26
+ assert @a.instance_methods.include?(:foo_month_field)
27
27
  end
28
28
 
29
29
  should 'mixin foo_year_field accessor' do
30
- assert @a.instance_methods.include?('foo_year_field')
30
+ assert @a.instance_methods.include?(:foo_year_field)
31
31
  end
32
32
  end
33
33
  end
@@ -1,3 +1,5 @@
1
+ # encoding: utf-8
2
+
1
3
  require 'achoo/term/table'
2
4
  require 'test_helpers'
3
5
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: achoo
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.5'
4
+ version: 0.5.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: mechanize
17
- requirement: &82174030 !ruby/object:Gem::Requirement
17
+ requirement: &82297840 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 1.0.0
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *82174030
25
+ version_requirements: *82297840
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: plugman
28
- requirement: &82173670 !ruby/object:Gem::Requirement
28
+ requirement: &82268340 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 0.1.1
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *82173670
36
+ version_requirements: *82268340
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: ri_cal
39
- requirement: &82173430 !ruby/object:Gem::Requirement
39
+ requirement: &82268080 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,7 +44,7 @@ dependencies:
44
44
  version: '0'
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *82173430
47
+ version_requirements: *82268080
48
48
  description: Command line interface for Achievo (http://achievo.org)
49
49
  email: kjellm@acm.org
50
50
  executables: