This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| gem 'thin' | |
| gem 'sinatra', :require => 'sinatra/base' | |
| gem 'async_sinatra', :require => 'sinatra/async' | |
| group :development, :test do | |
| gem 'rspec-rails' | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| require 'date' | |
| class Date | |
| def programmers_day? | |
| self.yday == 0x100 | |
| end | |
| end | |
| Date.today.programmers_day? # => true if today is 9/14 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| module X | |
| module Y | |
| end | |
| end | |
| module X | |
| module Z | |
| Y # = X::Y | |
| end | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| RSpec::Matchers.define :be_json do |expected| | |
| match do |actual| | |
| acturl_json = | |
| ActiveSupport::JSON.decode(ActiveSupport::JSON.encode(actual)) | |
| expected_json = | |
| ActiveSupport::JSON.decode(ActiveSupport::JSON.encode(expected)) | |
| acturl_json == expected_json | |
| end | |
| diffable |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Check if remote file exists | |
| def remote_file_exists?(full_path) | |
| 'true' == capture("if [ -e #{full_path} ]; then echo 'true'; fi").strip | |
| end | |
| # Check if process is running | |
| def remote_process_exists?(pid_file) | |
| capture("ps -p $(cat #{pid_file}) ; true").strip.split("\n").size == 2 | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| require 'rest-core/middleware' | |
| require 'net/http' | |
| class RestCore::NetHttp | |
| include RestCore::Middleware | |
| def call env | |
| uri = URI.parse(request_uri(env)) | |
| payload = ::RestClient::Payload.generate(env[REQUEST_PAYLOAD]) | |
| client = Net::HTTP.new(uri.host, uri.port) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| class JsonColumn | |
| def self.default_with(&block) | |
| new(block) | |
| end | |
| def initialize(default) | |
| @default = default | |
| end | |
| def dump(obj) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # client usage | |
| client.resources('/articles').post # => POST /articles | |
| client.articles.post # => POST /articles | |
| client.article(1).get # => GET /articles/1 | |
| client.article(1).comments.get # => GET /articles/1/comments | |
| client.admin # => client with admin support (for example, use http basic auth middleware) | |
| client.admin.articles.get # => GET /admin/articles with http basic auth | |
| # client define |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| class PostsController | |
| before_filter :load_user | |
| before_filter :load_post | |
| def show | |
| respond_with(@post) | |
| end | |
| def load_user | |
| @user = User.find(params[:user_id]) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| def whatever | |
| blabla | |
| render nothing: true | |
| end |
OlderNewer