ROCK_NAME=${ROCK_NAME-app}

cat << EOF > .rock.yml
runtime: ${ROCK_RUNTIME-ruby19}

run: ruby ${ROCK_NAME}.rb
EOF

cat << EOF > Gemfile
source :rubygems

gem 'rake'
gem 'sinatra'
gem 'sinatra-contrib'

group :development do
  gem 'rspec'
end
EOF

rock build

cat << EOF > "${ROCK_NAME}.rb"
require 'sinatra'
require 'sinatra/contrib'
require "sinatra/reloader" if development?

get '/' do
  "Hello World"
end
EOF

cat << EOF > Rakefile
require 'rspec/core/rake_task'

RSpec::Core::RakeTask.new(:spec)

task :default => :spec
EOF

mkdir -p spec

cat << EOF > "spec/${ROCK_NAME}_spec.rb"
require_relative '../${ROCK_NAME}.rb'
require 'rspec'
require 'rack/test'

set :environment, :test

describe 'The HelloWorld App' do
  include Rack::Test::Methods

  def app 
    Sinatra::Application
  end 

  it "says hello" do
    get '/' 
    last_response.should be_ok
    last_response.body.should == 'Hello World'
  end 
end
EOF
