twtest 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d9ad2d1a2918b12694321e2f72eade869df27dd8
4
+ data.tar.gz: 95a3f3030bad151b4a15f928ef3f29275894fbbd
5
+ SHA512:
6
+ metadata.gz: fa1d21028e9ab423cbaf94299569b85d290a6e6ce4520f54fc47052038ef745dc8236c6e5ffb11e086f011e23f4df2d8e58b4e8282aeb955855183e1cab31b6c
7
+ data.tar.gz: 831f73f9f2417553e84b341d89b61fb042987d2328ab31243c1dad083a693d035022bdd9b6d559d3a2156b725146e675d7b138f7181b1ef701c5d7da99c4be63
@@ -0,0 +1 @@
1
+ 2.4.1
@@ -1,8 +1,7 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - 1.9.3
5
- - jruby-19mode
4
+ - 2.4.1
6
5
 
7
6
  before_script:
8
7
  - mkdir ~/.task
data/Gemfile CHANGED
@@ -1,4 +1,2 @@
1
1
  source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in twtest.gemspec
4
2
  gemspec
data/README.md CHANGED
@@ -29,3 +29,11 @@ Have a look at the [example](/nerab/twtest/blob/master/test/unit/test_example.rb
29
29
  3. Commit your changes (`git commit -am 'Added some feature'`)
30
30
  4. Push to the branch (`git push origin my-new-feature`)
31
31
  5. Create new Pull Request
32
+
33
+ ## Development
34
+
35
+ If you hack on a project and find the need to use a custom version of `twtest`, configure *your* project to prefer a local git clone over the gem:
36
+
37
+ ```bash
38
+ bundle config local.twtest ../twtest
39
+ ```
@@ -3,7 +3,6 @@ require 'tmpdir'
3
3
  require 'erb'
4
4
  require 'shellwords'
5
5
  require 'tempfile'
6
- require 'multi_json'
7
6
 
8
7
  require "twtest/version"
9
8
  require "twtest/testcase"
@@ -13,4 +12,4 @@ module TaskWarrior
13
12
  module Integration
14
13
  end
15
14
  end
16
- end
15
+ end
@@ -1,7 +1,15 @@
1
+ require 'json'
2
+
1
3
  module TaskWarrior
2
4
  module Test
3
5
  module Integration
4
6
  class TestCase < ::Test::Unit::TestCase
7
+ def initialize(*args)
8
+ super
9
+ @taskrc_file = nil
10
+ @data_dir = nil
11
+ end
12
+
5
13
  def setup
6
14
  assert(task('--version') =~ /2\.\d\.\d/, "The TaskWarrior binary '#{TASK}' must be available and at least v2.0.")
7
15
  @data_dir = Dir.mktmpdir
@@ -12,14 +20,14 @@ module TaskWarrior
12
20
  FileUtils.rm_r(@data_dir) if @data_dir && Dir.exist?(@data_dir)
13
21
  File.delete(@taskrc_file) if @taskrc_file && File.exist?(@taskrc_file)
14
22
  end
15
-
23
+
16
24
  protected
17
25
  def export_tasks(args = {})
18
26
  json = task('export', args)
19
27
  raise "Empty JSON returned by task command" if json.nil? || json.empty?
20
- MultiJson.load(json)
28
+ JSON.parse(json)
21
29
  end
22
-
30
+
23
31
  def task(cmd, args = {})
24
32
  ENV['TASKRC'] = @taskrc_file
25
33
  %x[#{build_line(cmd, args)}]
@@ -33,16 +41,16 @@ module TaskWarrior
33
41
  line.reject!{|part| part.empty?}
34
42
  }.join(' ')
35
43
  end
36
-
44
+
37
45
  def build_taskrc(options = {})
38
- taskrc_file = Tempfile.new('taskrc')
46
+ taskrc = Tempfile.new('taskrc')
39
47
  data_dir = options[:data_dir]
40
-
48
+
41
49
  begin
42
- taskrc_file.write(ERB.new(File.read(File.join(File.dirname(__FILE__), '..', '..', 'templates', 'taskrc.erb')), 0, "%<>").result(binding))
43
- return taskrc_file.path
50
+ taskrc.write(ERB.new(File.read(File.join(File.dirname(__FILE__), '..', '..', 'templates', 'taskrc.erb')), 0, "%<>").result(binding))
51
+ return taskrc.path
44
52
  ensure
45
- taskrc_file.close
53
+ taskrc.close
46
54
  end
47
55
  end
48
56
 
@@ -51,4 +59,4 @@ module TaskWarrior
51
59
  end
52
60
  end
53
61
  end
54
- end
62
+ end
@@ -1,7 +1,7 @@
1
1
  module TaskWarrior
2
2
  module Test
3
3
  module Integration
4
- VERSION = "0.0.6"
4
+ VERSION = '0.0.7'
5
5
  end
6
6
  end
7
7
  end
@@ -1,4 +1,5 @@
1
1
  require 'bundler'
2
2
  Bundler.require
3
3
 
4
+ require 'json'
4
5
  require 'twtest'
@@ -1,27 +1,28 @@
1
1
  require 'test_helper'
2
+ require 'json'
2
3
 
3
4
  class TestTestCase < TaskWarrior::Test::Integration::TestCase
4
5
  def test_empty
5
6
  # http://taskwarrior.org/issues/1017
6
7
  # assert_empty(export_tasks)
7
-
8
+
8
9
  # Use a placeholder as workaround
9
10
  task("add placeholder")
10
11
  assert_equal(1, export_tasks.size)
11
12
  end
12
-
13
+
13
14
  def test_import
14
15
  contents = {:description => "foobar"}
15
16
  input_file = Tempfile.new('test_simple')
16
-
17
+
17
18
  begin
18
- input_file.write(MultiJson.dump(contents))
19
+ input_file.write(JSON.dump(contents))
19
20
  input_file.close
20
-
21
+
21
22
  # TODO Replace temp file with in-process version
22
- # task("import <(echo '#{MultiJson.dump(contents)}')")
23
+ # task("import <(echo '#{JSON.dump(contents)}')")
23
24
  task("import #{input_file.path}")
24
-
25
+
25
26
  tasks = export_tasks
26
27
  assert_equal(1, tasks.size)
27
28
  assert_equal('foobar', tasks.first['description'])
@@ -29,4 +30,4 @@ class TestTestCase < TaskWarrior::Test::Integration::TestCase
29
30
  input_file.unlink
30
31
  end
31
32
  end
32
- end
33
+ end
@@ -14,8 +14,7 @@ Gem::Specification.new do |gem|
14
14
  gem.require_paths = ["lib"]
15
15
  gem.version = TaskWarrior::Test::Integration::VERSION
16
16
 
17
- gem.add_development_dependency 'multi_json', '~> 1.3'
18
- gem.add_development_dependency 'guard-test', '~> 0.5'
19
- gem.add_development_dependency 'guard-bundler', '~> 1.0'
20
- gem.add_development_dependency 'rake', '~> 0.9'
17
+ gem.add_development_dependency 'guard-test'
18
+ gem.add_development_dependency 'guard-bundler'
19
+ gem.add_development_dependency 'rake'
21
20
  end
metadata CHANGED
@@ -1,80 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twtest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
5
- prerelease:
4
+ version: 0.0.7
6
5
  platform: ruby
7
6
  authors:
8
7
  - Nicholas E. Rabenau
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-07-10 00:00:00.000000000 Z
11
+ date: 2017-06-05 00:00:00.000000000 Z
13
12
  dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: multi_json
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: '1.3'
22
- type: :development
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- version: '1.3'
30
13
  - !ruby/object:Gem::Dependency
31
14
  name: guard-test
32
15
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
16
  requirements:
35
- - - ~>
17
+ - - ">="
36
18
  - !ruby/object:Gem::Version
37
- version: '0.5'
19
+ version: '0'
38
20
  type: :development
39
21
  prerelease: false
40
22
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
23
  requirements:
43
- - - ~>
24
+ - - ">="
44
25
  - !ruby/object:Gem::Version
45
- version: '0.5'
26
+ version: '0'
46
27
  - !ruby/object:Gem::Dependency
47
28
  name: guard-bundler
48
29
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
30
  requirements:
51
- - - ~>
31
+ - - ">="
52
32
  - !ruby/object:Gem::Version
53
- version: '1.0'
33
+ version: '0'
54
34
  type: :development
55
35
  prerelease: false
56
36
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
37
  requirements:
59
- - - ~>
38
+ - - ">="
60
39
  - !ruby/object:Gem::Version
61
- version: '1.0'
40
+ version: '0'
62
41
  - !ruby/object:Gem::Dependency
63
42
  name: rake
64
43
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
44
  requirements:
67
- - - ~>
45
+ - - ">="
68
46
  - !ruby/object:Gem::Version
69
- version: '0.9'
47
+ version: '0'
70
48
  type: :development
71
49
  prerelease: false
72
50
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
51
  requirements:
75
- - - ~>
52
+ - - ">="
76
53
  - !ruby/object:Gem::Version
77
- version: '0.9'
54
+ version: '0'
78
55
  description: Provides helpers for writing TaskWarrior integration tests in Ruby
79
56
  email:
80
57
  - nerab@gmx.net
@@ -82,8 +59,9 @@ executables: []
82
59
  extensions: []
83
60
  extra_rdoc_files: []
84
61
  files:
85
- - .gitignore
86
- - .travis.yml
62
+ - ".gitignore"
63
+ - ".ruby-version"
64
+ - ".travis.yml"
87
65
  - Gemfile
88
66
  - Guardfile
89
67
  - LICENSE
@@ -100,27 +78,26 @@ files:
100
78
  - twtest.gemspec
101
79
  homepage:
102
80
  licenses: []
81
+ metadata: {}
103
82
  post_install_message:
104
83
  rdoc_options: []
105
84
  require_paths:
106
85
  - lib
107
86
  required_ruby_version: !ruby/object:Gem::Requirement
108
- none: false
109
87
  requirements:
110
- - - ! '>='
88
+ - - ">="
111
89
  - !ruby/object:Gem::Version
112
90
  version: '0'
113
91
  required_rubygems_version: !ruby/object:Gem::Requirement
114
- none: false
115
92
  requirements:
116
- - - ! '>='
93
+ - - ">="
117
94
  - !ruby/object:Gem::Version
118
95
  version: '0'
119
96
  requirements: []
120
97
  rubyforge_project:
121
- rubygems_version: 1.8.24
98
+ rubygems_version: 2.6.11
122
99
  signing_key:
123
- specification_version: 3
100
+ specification_version: 4
124
101
  summary: Helpers for writing TaskWarrior tests in Ruby
125
102
  test_files:
126
103
  - test/test_helper.rb