stubb 0.1.0 → 0.1.1

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.
data/README.markdown CHANGED
@@ -22,7 +22,7 @@ Getting Started
22
22
 
23
23
  Simply install the Stubb gem by running
24
24
 
25
- gem install stubb --pre
25
+ gem install stubb
26
26
 
27
27
  and you are ready to run the stubb CLI:
28
28
 
data/lib/stubb/counter.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module Stubb
2
2
 
3
3
  class Counter
4
-
4
+
5
5
  def initialize(app)
6
6
  @app = app
7
7
  @request_history = {}
data/lib/stubb/finder.rb CHANGED
@@ -50,6 +50,10 @@ module Stubb
50
50
  File.join root, relative_path
51
51
  end
52
52
 
53
+ def glob(pattern)
54
+ Dir.glob(pattern).sort
55
+ end
56
+
53
57
  def content_type
54
58
  Rack::Mime.mime_type(request.extension) || "text/html"
55
59
  end
@@ -42,7 +42,7 @@ module Stubb
42
42
  end
43
43
 
44
44
  def matching_directory(current_path)
45
- matches = Dir.glob local_path_for(current_path + [Stubb.matcher_pattern])
45
+ matches = glob local_path_for(current_path + [Stubb.matcher_pattern])
46
46
  for match in matches
47
47
  continue unless File.directory? match
48
48
  return File.split(match).last
@@ -51,7 +51,7 @@ module Stubb
51
51
  end
52
52
 
53
53
  def matching_file(current_path)
54
- matches = Dir.glob local_path_for(current_path + ["#{Stubb.matcher_pattern}.#{request_options_as_file_ending}"])
54
+ matches = glob local_path_for(current_path + ["#{Stubb.matcher_pattern}.#{request_options_as_file_ending}"])
55
55
 
56
56
  matches.empty? ? nil : File.split(matches.first).last
57
57
  end
@@ -5,7 +5,7 @@ module Stubb
5
5
  class SequenceFinder < Finder
6
6
  private
7
7
  def projected_path
8
- sequence_members = Dir.glob local_path_for(sequenced_path_pattern)
8
+ sequence_members = glob local_path_for(sequenced_path_pattern)
9
9
  raise NoSuchSequence.new("Nothing found for sequence pattern `#{sequenced_path_pattern}`.") if sequence_members.empty?
10
10
 
11
11
  loop? ? pick_loop_member(sequence_members) : pick_stall_member(sequence_members)
@@ -34,12 +34,12 @@ module Stubb
34
34
 
35
35
  def literal_file(current_path, level, index)
36
36
  filename = "#{level}.#{request_options_as_file_ending(index)}"
37
- sequence_members = Dir.glob local_path_for(current_path + [filename])
37
+ sequence_members = glob local_path_for(current_path + [filename])
38
38
  sequence_members.empty? ? nil : filename
39
39
  end
40
40
 
41
41
  def matching_directory(current_path)
42
- matches = Dir.glob local_path_for(current_path + [Stubb.matcher_pattern])
42
+ matches = glob local_path_for(current_path + [Stubb.matcher_pattern])
43
43
  for match in matches
44
44
  continue unless File.directory? match
45
45
  return File.split(match).last
@@ -48,7 +48,7 @@ module Stubb
48
48
  end
49
49
 
50
50
  def matching_file(current_path, index)
51
- matches = Dir.glob local_path_for(current_path + ["#{Stubb.matcher_pattern}.#{request_options_as_file_ending(index)}"])
51
+ matches = glob local_path_for(current_path + ["#{Stubb.matcher_pattern}.#{request_options_as_file_ending(index)}"])
52
52
 
53
53
  matches.empty? ? nil : File.split(matches.first).last
54
54
  end
data/lib/stubb.rb CHANGED
@@ -2,7 +2,7 @@ require 'rack'
2
2
 
3
3
  module Stubb
4
4
 
5
- VERSION = '0.1.0'
5
+ VERSION = '0.1.1'
6
6
 
7
7
  class ResponseNotFound < Exception
8
8
  end
@@ -26,7 +26,7 @@ module Stubb
26
26
  Rack::Builder.new {
27
27
  use CombinedLogger
28
28
  use Counter
29
-
29
+
30
30
  run Rack::Cascade.new([SequenceFinder.new(options), NaiveFinder.new(options), SequenceMatchFinder.new(options), MatchFinder.new(options)])
31
31
  }.to_app
32
32
  end
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stubb
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.1.0
4
+ hash: 25
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 1
10
+ version: 0.1.1
6
11
  platform: ruby
7
12
  authors:
8
13
  - Johannes Emerich
@@ -10,41 +15,53 @@ autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
17
 
13
- date: 2012-04-05 00:00:00 Z
18
+ date: 2012-12-13 00:00:00 +01:00
19
+ default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
- name: rake
17
- requirement: &id001 !ruby/object:Gem::Requirement
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: &id001 !ruby/object:Gem::Requirement
18
25
  none: false
19
26
  requirements:
20
27
  - - ">="
21
28
  - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 0
22
32
  version: "0"
23
- type: :development
24
- prerelease: false
25
- version_requirements: *id001
33
+ name: rake
34
+ requirement: *id001
26
35
  - !ruby/object:Gem::Dependency
27
- name: rack
28
- requirement: &id002 !ruby/object:Gem::Requirement
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: &id002 !ruby/object:Gem::Requirement
29
39
  none: false
30
40
  requirements:
31
41
  - - ">="
32
42
  - !ruby/object:Gem::Version
43
+ hash: 31
44
+ segments:
45
+ - 1
46
+ - 2
47
+ - 0
33
48
  version: 1.2.0
49
+ name: rack
50
+ requirement: *id002
51
+ - !ruby/object:Gem::Dependency
34
52
  type: :runtime
35
53
  prerelease: false
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
38
- name: thor
39
- requirement: &id003 !ruby/object:Gem::Requirement
54
+ version_requirements: &id003 !ruby/object:Gem::Requirement
40
55
  none: false
41
56
  requirements:
42
57
  - - ">="
43
58
  - !ruby/object:Gem::Version
59
+ hash: 3
60
+ segments:
61
+ - 0
44
62
  version: "0"
45
- type: :runtime
46
- prerelease: false
47
- version_requirements: *id003
63
+ name: thor
64
+ requirement: *id003
48
65
  description: Stubb is the second mate.
49
66
  email: johannes@emerich.de
50
67
  executables:
@@ -67,6 +84,7 @@ files:
67
84
  - bin/stubb
68
85
  - LICENSE
69
86
  - README.markdown
87
+ has_rdoc: true
70
88
  homepage: http://github.com/knuton/stubb
71
89
  licenses: []
72
90
 
@@ -80,7 +98,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
80
98
  requirements:
81
99
  - - ">="
82
100
  - !ruby/object:Gem::Version
83
- hash: -706694363361650737
101
+ hash: 3
84
102
  segments:
85
103
  - 0
86
104
  version: "0"
@@ -89,14 +107,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
89
107
  requirements:
90
108
  - - ">="
91
109
  - !ruby/object:Gem::Version
92
- hash: -706694363361650737
110
+ hash: 3
93
111
  segments:
94
112
  - 0
95
113
  version: "0"
96
114
  requirements: []
97
115
 
98
116
  rubyforge_project:
99
- rubygems_version: 1.8.11
117
+ rubygems_version: 1.3.7
100
118
  signing_key:
101
119
  specification_version: 3
102
120
  summary: Specify REST API stubs using your file system