jazor 0.1.6 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
data/.gemtest ADDED
File without changes
data/.gitignore ADDED
@@ -0,0 +1 @@
1
+ pkg/
data/.rvmrc ADDED
@@ -0,0 +1,5 @@
1
+ rvm use ruby-1.9.3
2
+ if ! command -v bundle
3
+ then
4
+ gem install bundler
5
+ fi
data/Gemfile CHANGED
@@ -1,10 +1,2 @@
1
- source "http://rubygems.org"
2
-
3
- gem "json"
4
- gem "term-ansicolor"
5
-
6
- group :development do
7
- gem "rake"
8
- gem "rspec"
9
- end
10
-
1
+ source :rubygems
2
+ gemspec
data/Gemfile.lock CHANGED
@@ -1,24 +1,26 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ jazor (0.1.7)
5
+ json
6
+ term-ansicolor
7
+
1
8
  GEM
2
9
  remote: http://rubygems.org/
3
10
  specs:
4
- diff-lcs (1.1.3)
5
- json (1.6.5)
11
+ ZenTest (4.8.1)
12
+ autotest (4.4.6)
13
+ ZenTest (>= 4.4.1)
14
+ json (1.7.4)
15
+ minitest (3.2.0)
6
16
  rake (0.9.2.2)
7
- rspec (2.8.0)
8
- rspec-core (~> 2.8.0)
9
- rspec-expectations (~> 2.8.0)
10
- rspec-mocks (~> 2.8.0)
11
- rspec-core (2.8.0)
12
- rspec-expectations (2.8.0)
13
- diff-lcs (~> 1.1.2)
14
- rspec-mocks (2.8.0)
15
17
  term-ansicolor (1.0.7)
16
18
 
17
19
  PLATFORMS
18
20
  ruby
19
21
 
20
22
  DEPENDENCIES
21
- json
23
+ autotest
24
+ jazor!
25
+ minitest
22
26
  rake
23
- rspec
24
- term-ansicolor
data/README.md CHANGED
@@ -68,6 +68,10 @@ scripts.
68
68
 
69
69
  ## Change Log
70
70
 
71
+ ### 0.1.7 (2012-07-26)
72
+
73
+ * Convert tests from RSpec to MiniTest
74
+
71
75
  ### 0.1.6 (2012-03-27)
72
76
 
73
77
  * Add term-ansicolor to dependencies in gemspec
data/Rakefile CHANGED
@@ -1,11 +1,6 @@
1
1
  require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
2
+ require 'rake/testtask'
3
3
 
4
- RSpec::Core::RakeTask.new(:test) do |t|
5
- t.rspec_opts = [
6
- "-f doc",
7
- "-r #{File.expand_path(File.join(File.dirname(__FILE__), "lib", "jazor.rb"))}"
8
- ]
9
- end
4
+ Rake::TestTask.new
10
5
 
11
6
  task :default => :test
data/jazor.gemspec CHANGED
@@ -1,5 +1,5 @@
1
1
  $:.push File.expand_path(File.join(File.dirname(__FILE__), "lib"))
2
- require "jazor"
2
+ require "jazor/app_info"
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = Jazor::NAME
@@ -11,14 +11,15 @@ Gem::Specification.new do |s|
11
11
  s.summary = Jazor::DESCRIPTION
12
12
  s.description = Jazor::DESCRIPTION
13
13
 
14
- s.add_dependency("bundler")
15
- s.add_dependency("json")
16
- s.add_dependency("term-ansicolor")
14
+ s.add_dependency "json"
15
+ s.add_dependency "term-ansicolor"
17
16
 
18
- s.add_development_dependency("rake")
19
- s.add_development_dependency("rspec")
17
+ s.add_development_dependency "rake"
18
+ s.add_development_dependency "minitest"
19
+ s.add_development_dependency "autotest"
20
20
 
21
- s.files = ["jazor.gemspec", "Gemfile", "Gemfile.lock", "README.md"] + Dir["bin/*"] + Dir["lib/*.rb"]
22
- s.test_files = ["Rakefile"] + Dir["spec/*"]
23
- s.executables = ["jazor"]
21
+ s.files = `git ls-files`.split($\)
22
+ s.executables = s.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
23
+ s.test_files = s.files.grep(%r{^(test|spec|features)/})
24
+ s.require_paths = ["lib"]
24
25
  end
data/lib/jazor.rb CHANGED
@@ -9,14 +9,9 @@ require "pp"
9
9
  require "term/ansicolor"
10
10
  require "uri"
11
11
 
12
- module Jazor
12
+ require "jazor/app_info"
13
13
 
14
- NAME = "jazor"
15
- VERSION = "0.1.6"
16
- AUTHOR = "Michael Paul Thomas Conigliaro"
17
- AUTHOR_EMAIL = "mike [at] conigliaro [dot] org"
18
- DESCRIPTION = "Jazor (JSON razor) is a simple command line JSON parsing tool."
19
- URL = "http://github.com/mconigliaro/jazor"
14
+ module Jazor
20
15
 
21
16
  LOG = Logger.new(STDOUT)
22
17
  LOG.level = Logger::INFO
@@ -0,0 +1,8 @@
1
+ module Jazor
2
+ NAME = "jazor"
3
+ VERSION = "0.1.7"
4
+ AUTHOR = "Michael Paul Thomas Conigliaro"
5
+ AUTHOR_EMAIL = "mike [at] conigliaro [dot] org"
6
+ DESCRIPTION = "Jazor (JSON razor) is a simple command line JSON parsing tool."
7
+ URL = "http://github.com/mconigliaro/jazor"
8
+ end
File without changes
@@ -1,55 +1,60 @@
1
+ require 'minitest/autorun'
2
+ require 'minitest/pride'
3
+
4
+ require "jazor"
5
+
1
6
  describe "Jazor command" do
2
7
 
3
- before(:all) do
4
- @test_url = "http://github.com/api/v2/json/commits/list/mconigliaro/jazor/master"
8
+ before do
9
+ @test_url = "https://api.github.com/repos/mconigliaro/jazor/commits"
5
10
  @test_file = File.expand_path(File.join(File.dirname(__FILE__), "test.json"))
6
11
  @test_hash = JSON.parse(IO.read(@test_file))
7
12
  @jazor_bin = File.expand_path(File.join(File.dirname(__FILE__), "..", "bin", "jazor"))
8
13
  end
9
14
 
10
15
  it "prints a help summary on absence of input" do
11
- `#{@jazor_bin}`.should =~ /Usage:/
16
+ assert_match /Usage:/, `#{@jazor_bin}`
12
17
  end
13
18
 
14
19
  it "parses JSON from STDIN" do
15
- JSON.parse(`cat #{@test_file} | #{@jazor_bin} -q`).should == @test_hash
20
+ assert_equal JSON.parse(`cat #{@test_file} | #{@jazor_bin} -q`), @test_hash
16
21
  end
17
22
 
18
23
  it "parses JSON from a URL" do
19
- JSON.parse(`#{@jazor_bin} "#{@test_url}"`).should be_a Hash
24
+ assert_kind_of Array, JSON.parse(`#{@jazor_bin} "#{@test_url}"`)
20
25
  end
21
26
 
22
27
  it "parses JSON from a file" do
23
- JSON.parse(`#{@jazor_bin} #{@test_file}`).should == @test_hash
28
+ assert_equal JSON.parse(`#{@jazor_bin} #{@test_file}`), @test_hash
24
29
  end
25
30
 
26
31
  it "parses JSON from ARGV" do
27
- JSON.parse(`#{@jazor_bin} '#{IO.read(@test_file)}'`).should == @test_hash
32
+ assert_equal JSON.parse(`#{@jazor_bin} '#{IO.read(@test_file)}'`), @test_hash
28
33
  end
29
34
 
30
35
  it "parses true/false values in quirks mode" do
31
36
  [true, false].each do |obj|
32
- eval(`#{@jazor_bin} -q "#{obj}"`).should == obj
37
+ assert_equal eval(`#{@jazor_bin} -q "#{obj}"`), obj
33
38
  end
34
39
  end
35
40
 
36
41
  it "exits with non-zero status on invalid JSON" do
37
42
  `#{@jazor_bin} invalid`
38
- $?.should_not == 0
43
+ refute_equal $?, 0
39
44
  end
40
45
 
41
46
  it "parses JSON from a file with an expression" do
42
- JSON.parse(`#{@jazor_bin} #{@test_file} test_Array`).should == @test_hash["test_Array"]
43
- eval(`#{@jazor_bin} #{@test_file} test_String`).to_s.should == @test_hash["test_String"]
47
+ assert_equal JSON.parse(`#{@jazor_bin} #{@test_file} test_Array`), @test_hash["test_Array"]
48
+ assert_equal eval(`#{@jazor_bin} #{@test_file} test_String`).to_s, @test_hash["test_String"]
44
49
  %w{Integer Float TrueClass FalseClass}.each do |t|
45
- eval(`#{@jazor_bin} #{@test_file} test_#{t}`).should == @test_hash["test_#{t}"]
50
+ assert_equal eval(`#{@jazor_bin} #{@test_file} test_#{t}`), @test_hash["test_#{t}"]
46
51
  end
47
- eval(`#{@jazor_bin} #{@test_file} dontexist`).should be_nil
52
+ assert_nil eval(`#{@jazor_bin} #{@test_file} dontexist`)
48
53
  end
49
54
 
50
55
  it "parses JSON from a file with tests" do
51
- `#{@jazor_bin} -t #{@test_file} "test_Integer==123"`.should =~ /passed/
52
- `#{@jazor_bin} -t #{@test_file} "test_Integer==1234"`.should =~ /failed/
56
+ assert_match /passed/, `#{@jazor_bin} -t #{@test_file} "test_Integer==123"`
57
+ assert_match /failed/, `#{@jazor_bin} -t #{@test_file} "test_Integer==1234"`
53
58
  end
54
59
 
55
60
  it "sorts output" do
@@ -60,7 +65,7 @@ describe "Jazor command" do
60
65
  '{"foo":1, "bar":2}' => {"bar" => 2, "foo" => 1},
61
66
  '{"1":1, "bar":2}' => {"1" => 1, "bar" => 2}
62
67
  }.each do |k,v|
63
- JSON.parse(`#{@jazor_bin} -s '#{k}'`).should == v
68
+ assert_equal JSON.parse(`#{@jazor_bin} -s '#{k}'`), v
64
69
  end
65
70
  end
66
71
  end
@@ -1,6 +1,11 @@
1
+ require 'minitest/autorun'
2
+ require 'minitest/pride'
3
+
4
+ require "jazor"
5
+
1
6
  describe "Jazor lib" do
2
7
 
3
- before(:all) do
8
+ before do
4
9
  @test_file = IO.read(File.expand_path(File.join(File.dirname(__FILE__), "test.json")))
5
10
  @test_hash = JSON.parse(@test_file)
6
11
  end
@@ -8,14 +13,14 @@ describe "Jazor lib" do
8
13
  %w{String Integer Float TrueClass FalseClass NilClass Array}.each do |t|
9
14
  it "parses #{t} values in the root object" do
10
15
  obj = Jazor::parse(@test_file)["test_#{t}"]
11
- obj.should be_a Kernel.const_get(t)
12
- obj.should == @test_hash["test_#{t}"]
16
+ assert_kind_of Kernel.const_get(t), obj
17
+ assert_equal obj, @test_hash["test_#{t}"]
13
18
  end
14
19
 
15
20
  it "evaluates the expression \"test_#{t}\" and returns the correct result" do
16
21
  obj = Jazor::evaluate(Jazor::parse(@test_file), "test_#{t}")
17
- obj.should be_a Kernel.const_get(t)
18
- obj.should == @test_hash["test_#{t}"]
22
+ assert_kind_of Kernel.const_get(t), obj
23
+ assert_equal obj, @test_hash["test_#{t}"]
19
24
  end
20
25
  end
21
26
 
@@ -23,22 +28,21 @@ describe "Jazor lib" do
23
28
 
24
29
  it "can issue GET requests over HTTP" do
25
30
  response = Jazor::RestClient.get("http://ajax.googleapis.com/ajax/services/search/web")
26
- response.code.should == "200"
27
- response.body.should =~ /"responseStatus": 400/
31
+ assert_equal response.code, "200"
32
+ assert_match /"responseStatus": 400/, response.body
28
33
  end
29
34
 
30
35
  it "can issue GET requests over HTTPS" do
31
- response = Jazor::RestClient.get("https://github.com/api/v2/json/commits/list/mconigliaro/jazor/master")
32
- response.code.should == "200"
36
+ response = Jazor::RestClient.get("https://api.github.com/repos/mconigliaro/jazor/commits")
37
+ assert_equal response.code, "200"
33
38
  end
34
39
 
35
40
  it "can issue GET requests over HTTP with a query string" do
36
41
  response = Jazor::RestClient.get("http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=jazor")
37
- response.code.should == "200"
38
- response.body.should =~ /"responseStatus": 200/
42
+ assert_equal response.code, "200"
43
+ assert_match /"responseStatus": 200/, response.body
39
44
  end
40
45
 
41
46
  end
42
47
 
43
48
  end
44
-
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jazor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-27 00:00:00.000000000 Z
12
+ date: 2012-07-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: bundler
16
- requirement: &2165109960 !ruby/object:Gem::Requirement
15
+ name: json
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,21 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2165109960
25
- - !ruby/object:Gem::Dependency
26
- name: json
27
- requirement: &2165108820 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
28
25
  none: false
29
26
  requirements:
30
27
  - - ! '>='
31
28
  - !ruby/object:Gem::Version
32
29
  version: '0'
33
- type: :runtime
34
- prerelease: false
35
- version_requirements: *2165108820
36
30
  - !ruby/object:Gem::Dependency
37
31
  name: term-ansicolor
38
- requirement: &2165107220 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
39
33
  none: false
40
34
  requirements:
41
35
  - - ! '>='
@@ -43,10 +37,31 @@ dependencies:
43
37
  version: '0'
44
38
  type: :runtime
45
39
  prerelease: false
46
- version_requirements: *2165107220
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
47
46
  - !ruby/object:Gem::Dependency
48
47
  name: rake
49
- requirement: &2165138180 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: minitest
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '0'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *2165138180
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
- name: rspec
60
- requirement: &2165136420 !ruby/object:Gem::Requirement
79
+ name: autotest
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,7 +85,12 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *2165136420
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
69
94
  description: Jazor (JSON razor) is a simple command line JSON parsing tool.
70
95
  email: mike [at] conigliaro [dot] org
71
96
  executables:
@@ -73,16 +98,20 @@ executables:
73
98
  extensions: []
74
99
  extra_rdoc_files: []
75
100
  files:
76
- - jazor.gemspec
101
+ - .gemtest
102
+ - .gitignore
103
+ - .rvmrc
77
104
  - Gemfile
78
105
  - Gemfile.lock
79
106
  - README.md
107
+ - Rakefile
80
108
  - bin/jazor
109
+ - jazor.gemspec
81
110
  - lib/jazor.rb
82
- - Rakefile
83
- - spec/jazor_cli_spec.rb
84
- - spec/jazor_lib_spec.rb
85
- - spec/test.json
111
+ - lib/jazor/app_info.rb
112
+ - test/test.json
113
+ - test/test_jazor_cli.rb
114
+ - test/test_jazor_lib.rb
86
115
  homepage: http://github.com/mconigliaro/jazor
87
116
  licenses: []
88
117
  post_install_message:
@@ -95,9 +124,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
95
124
  - - ! '>='
96
125
  - !ruby/object:Gem::Version
97
126
  version: '0'
98
- segments:
99
- - 0
100
- hash: 2150454013039615028
101
127
  required_rubygems_version: !ruby/object:Gem::Requirement
102
128
  none: false
103
129
  requirements:
@@ -106,12 +132,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
106
132
  version: '0'
107
133
  requirements: []
108
134
  rubyforge_project: jazor
109
- rubygems_version: 1.8.17
135
+ rubygems_version: 1.8.23
110
136
  signing_key:
111
137
  specification_version: 3
112
138
  summary: Jazor (JSON razor) is a simple command line JSON parsing tool.
113
139
  test_files:
114
- - Rakefile
115
- - spec/jazor_cli_spec.rb
116
- - spec/jazor_lib_spec.rb
117
- - spec/test.json
140
+ - test/test.json
141
+ - test/test_jazor_cli.rb
142
+ - test/test_jazor_lib.rb
143
+ has_rdoc: