make more specs work
This commit is contained in:
@@ -2,20 +2,45 @@ require 'spec_helper'
|
||||
|
||||
describe "persistance" do
|
||||
let(:db){CouchPotato.database.couchrest_database}
|
||||
let(:db_uri){ File.join(db.host, db.name)}
|
||||
let(:debug) { StringIO.new }
|
||||
|
||||
#let(:db_uri){ File.join(db.uri.host, db.name)}
|
||||
|
||||
describe "database format" do
|
||||
it "persists with proper ruby class" do
|
||||
employee = create :employee
|
||||
response = Net::HTTP.get URI(File.join(db_uri, employee.id))
|
||||
response.should include %|"ruby_class":"Employee"|
|
||||
response.should_not include %|"id":|
|
||||
uri = URI.parse(File.join(db.uri, employee.id))
|
||||
|
||||
http = Net::HTTP.new uri.host, uri.port
|
||||
http.set_debug_output(debug)
|
||||
|
||||
request = Net::HTTP::Get.new(uri.request_uri)
|
||||
request.basic_auth uri.user, uri.password
|
||||
|
||||
response = http.request(request)
|
||||
|
||||
doc = JSON.parse(response.body)
|
||||
doc['ruby_class'].should eq 'Employee'
|
||||
doc.should_not have_key 'id'
|
||||
#response.should include %|"ruby_class":"Employee"|
|
||||
#response.should_not include %|"id":|
|
||||
end
|
||||
|
||||
it "stores time in UTC iso8601 format" do
|
||||
time = Time.utc(1981, 3, 9, 13, 22, 2).in_time_zone
|
||||
Timecop.travel time do
|
||||
employee_shift = create :employee_shift, start_from: time, end_on: time + 2.hours
|
||||
response = JSON.parse Net::HTTP.get URI(File.join(db_uri, employee_shift.id))
|
||||
|
||||
uri = URI.parse(File.join(db.uri, employee_shift.id))
|
||||
|
||||
http = Net::HTTP.new uri.host, uri.port
|
||||
http.set_debug_output(debug)
|
||||
|
||||
request = Net::HTTP::Get.new(uri.request_uri)
|
||||
request.basic_auth uri.user, uri.password
|
||||
|
||||
response = http.request(request)
|
||||
response = JSON.parse response.body
|
||||
response['created_at'].should eq "1981-03-09T13:22:02Z"
|
||||
response['updated_at'].should eq "1981-03-09T13:22:02Z"
|
||||
response['start_from'].should eq "1981-03-09T13:22:02Z"
|
||||
|
||||
Reference in New Issue
Block a user