Sha256: fdb5f1fe651463817a8207b5cb6cc4856b70d4ad5279cfa759d7a3c81fe049b3

Contents?: true

Size: 1.13 KB

Versions: 19

Compression:

Stored size: 1.13 KB

Contents

require 'rubygems'
require 'sinatra'
require 'rabl'
require 'active_support/core_ext'
require 'active_support/inflector'
require 'active_record'
require 'builder'

ActiveRecord::Base.establish_connection(
  :adapter => 'sqlite3',
  :database =>  ':memory:'
)

Dir[File.dirname(__FILE__) + "/models/*.rb"].each do |file|
  require File.expand_path(file)
end

# Register RABL
Rabl.register!

class SinatraTest < Sinatra::Application
  set :root, File.expand_path(File.dirname(__FILE__))
  set :views, Proc.new { File.join(root, "views") }

  get "/posts" do
    @posts = Post.order("id ASC")
    render :rabl, :"posts/index", :format => "json"
  end

  get "/posts/:id" do
    @post = Post.find(params[:id])
    render :rabl, :"posts/show", :format => "json"
  end

  get "/users" do
    @users = User.order("username ASC")
    render :rabl, :"users/index.json", :format => "json"
  end

  get "/users/:id" do
    @user = User.find(params[:id])
    render :rabl, :"users/show.json", :format => "json"
  end
end

# Patch times to return as iso8601
class Time
  alias_method :old_to_s, :to_s
  def to_s(format=nil)
    format ? old_to_s(format) : iso8601
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
rabl-0.10.1 fixtures/sinatra_test/app.rb
rabl-0.10.0 fixtures/sinatra_test/app.rb
rabl-0.9.4.pre1 fixtures/sinatra_test/app.rb
rabl-0.9.3 fixtures/sinatra_test/app.rb
rabl-0.9.3.pre1 fixtures/sinatra_test/app.rb
rabl-0.9.2 fixtures/sinatra_test/app.rb
rabl-0.9.1 fixtures/sinatra_test/app.rb
rabl-0.9.0 fixtures/sinatra_test/app.rb
rabl-0.9.0.pre4 fixtures/sinatra_test/app.rb
rabl-0.9.0.pre3 fixtures/sinatra_test/app.rb
rabl-0.9.0.pre2 fixtures/sinatra_test/app.rb
rabl-0.9.0.pre fixtures/sinatra_test/app.rb
rabl-0.8.6 fixtures/sinatra_test/app.rb
rabl-0.8.5 fixtures/sinatra_test/app.rb
rabl-0.8.4 fixtures/sinatra_test/app.rb
rabl-0.8.3 fixtures/sinatra_test/app.rb
rabl-0.8.2 fixtures/sinatra_test/app.rb
rabl-0.8.1 fixtures/sinatra_test/app.rb
rabl-0.8.0 fixtures/sinatra_test/app.rb