summaryrefslogtreecommitdiff
path: root/spec/requests
diff options
context:
space:
mode:
Diffstat (limited to 'spec/requests')
-rw-r--r--spec/requests/v1/licenses_spec.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/spec/requests/v1/licenses_spec.rb b/spec/requests/v1/licenses_spec.rb
new file mode 100644
index 0000000..b703490
--- /dev/null
+++ b/spec/requests/v1/licenses_spec.rb
@@ -0,0 +1,34 @@
+require "spec_helper"
+
+describe 'v1/licenses' do
+ let!(:company) { Company.create(name: 'ABC Resources Ltd.') }
+ let!(:user) { User.create(company: company) }
+ let!(:location) { Location.create(latitude: 51.06, longitude: -114.09, township: '1') }
+ let!(:well_type) { WellType::DEV }
+ let!(:license) { License.create(id: SecureRandom.uuid, company: company, applicant: user, location: location, issued_at: 2.days.ago, expired_at: 1.day.from_now, well_type: well_type) }
+
+ it "returns a list of licenses" do
+ get 'v1/licenses'
+ response.should be_success
+ result = JSON.parse(response.body)
+ result["licenses"].first["id"].should == license.id
+ result["licenses"].first["issued_at"].should == license.issued_at.to_s
+ result["licenses"].first["expired_at"].should == license.expired_at.to_s
+ result["licenses"].first["company"]["name"].should == license.company.name
+ result["licenses"].first["well_type"]["id"].should == well_type.id
+ result["licenses"].first["well_type"]["acronym"].should == well_type.acronym
+ result["licenses"].first["well_type"]["name"].should == well_type.name
+ result["licenses"].first["location"]["latitude"].should == location.latitude
+ result["licenses"].first["location"]["longitude"].should == location.longitude
+ result["licenses"].first["location"]["township"].should == location.township
+ WellType::ALL.each do |well_type|
+ row = result["well_types"].find { |x| x['id'] == well_type.id }
+ row['acronym'].should == well_type.acronym
+ row['name'].should == well_type.name
+ end
+ LicenseStatus::ALL.each do |status|
+ row = result["license_statuses"].find { |x| x['name'] == status.to_s }
+ row.should_not be_nil
+ end
+ end
+end