api-fairy 0.1.0 → 0.2.0

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/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ - 1.9.3
data/Gemfile CHANGED
@@ -5,7 +5,7 @@ gem "rack"
5
5
  group :development do
6
6
  gem "rspec", "~> 2.8.0"
7
7
  gem "rdoc", "~> 3.12"
8
- gem "bundler", "~> 1.0.0"
8
+ gem "bundler", "~> 1.1.0"
9
9
  gem "jeweler", "~> 1.8.3"
10
10
  gem "rack-test"
11
11
  end
data/README.md CHANGED
@@ -1,6 +1,9 @@
1
1
  api-fairy
2
2
  =========
3
3
 
4
+ [![Build Status](https://secure.travis-ci.org/aq1018/api-fairy.png?branch=master)](http://travis-ci.org/aq1018/api-fairy)
5
+
6
+
4
7
  api-fairy is a Rack Middleware that **magically** speeds up your slow backend services just by including it as your middleware.
5
8
 
6
9
  Install
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.2.0
data/api-fairy.gemspec ADDED
@@ -0,0 +1,67 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "api-fairy"
8
+ s.version = "0.2.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Aaron Qian"]
12
+ s.date = "2012-03-29"
13
+ s.description = "api-fairy is a Rack Middleware that magically speeds up your slow backend services just by including it as your middleware."
14
+ s.email = "aq1018@gmail.com"
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.md"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".rspec",
22
+ ".travis.yml",
23
+ "Gemfile",
24
+ "LICENSE.txt",
25
+ "README.md",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "api-fairy.gemspec",
29
+ "lib/api-fairy.rb",
30
+ "spec/api-fairy_spec.rb",
31
+ "spec/spec_helper.rb",
32
+ "spec/support/api_helper.rb"
33
+ ]
34
+ s.homepage = "http://github.com/aq1018/api-fairy"
35
+ s.licenses = ["MIT"]
36
+ s.require_paths = ["lib"]
37
+ s.rubygems_version = "1.8.19"
38
+ s.summary = "Rack Middleware that magically speeds up your slow backend services"
39
+
40
+ if s.respond_to? :specification_version then
41
+ s.specification_version = 3
42
+
43
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
44
+ s.add_runtime_dependency(%q<rack>, [">= 0"])
45
+ s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
46
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
47
+ s.add_development_dependency(%q<bundler>, ["~> 1.1.0"])
48
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
49
+ s.add_development_dependency(%q<rack-test>, [">= 0"])
50
+ else
51
+ s.add_dependency(%q<rack>, [">= 0"])
52
+ s.add_dependency(%q<rspec>, ["~> 2.8.0"])
53
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
54
+ s.add_dependency(%q<bundler>, ["~> 1.1.0"])
55
+ s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
56
+ s.add_dependency(%q<rack-test>, [">= 0"])
57
+ end
58
+ else
59
+ s.add_dependency(%q<rack>, [">= 0"])
60
+ s.add_dependency(%q<rspec>, ["~> 2.8.0"])
61
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
62
+ s.add_dependency(%q<bundler>, ["~> 1.1.0"])
63
+ s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
64
+ s.add_dependency(%q<rack-test>, [">= 0"])
65
+ end
66
+ end
67
+
data/lib/api-fairy.rb CHANGED
@@ -1,11 +1,21 @@
1
+ require 'rack/utils'
2
+
1
3
  module Rack
2
4
  class ApiFairy
5
+ include Rack::Utils
6
+
3
7
  def initialize(app)
4
8
  @app = app
5
9
  end
6
10
 
7
11
  def call(env)
8
- [200, {'Content-Type' => 'text/plain'}, ['Magic']]
12
+ params = parse_nested_query(env['QUERY_STRING'])
13
+ response = 'Magic'
14
+ if params['name']
15
+ response += "al #{params['name']}"
16
+ end
17
+
18
+ [200, {'Content-Type' => 'text/plain'}, [response]]
9
19
  end
10
20
  end
11
21
  end
@@ -7,4 +7,11 @@ describe Rack::ApiFairy do
7
7
  last_response.ok?
8
8
  last_response.body.should == "Magic"
9
9
  end
10
+
11
+ it "responds by name" do
12
+ name = 'elf'
13
+ get "/?name=#{name}"
14
+ last_response.ok?
15
+ last_response.body.should == "Magical #{name}"
16
+ end
10
17
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: api-fairy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -66,7 +66,7 @@ dependencies:
66
66
  requirements:
67
67
  - - ~>
68
68
  - !ruby/object:Gem::Version
69
- version: 1.0.0
69
+ version: 1.1.0
70
70
  type: :development
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
@@ -74,7 +74,7 @@ dependencies:
74
74
  requirements:
75
75
  - - ~>
76
76
  - !ruby/object:Gem::Version
77
- version: 1.0.0
77
+ version: 1.1.0
78
78
  - !ruby/object:Gem::Dependency
79
79
  name: jeweler
80
80
  requirement: !ruby/object:Gem::Requirement
@@ -118,11 +118,13 @@ extra_rdoc_files:
118
118
  files:
119
119
  - .document
120
120
  - .rspec
121
+ - .travis.yml
121
122
  - Gemfile
122
123
  - LICENSE.txt
123
124
  - README.md
124
125
  - Rakefile
125
126
  - VERSION
127
+ - api-fairy.gemspec
126
128
  - lib/api-fairy.rb
127
129
  - spec/api-fairy_spec.rb
128
130
  - spec/spec_helper.rb
@@ -142,7 +144,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
142
144
  version: '0'
143
145
  segments:
144
146
  - 0
145
- hash: 1433719868926960376
147
+ hash: -2549094047739865643
146
148
  required_rubygems_version: !ruby/object:Gem::Requirement
147
149
  none: false
148
150
  requirements: