Skip to content

Commit

Permalink
Added reference number to coe status (#9168)
Browse files Browse the repository at this point in the history
* added reference number to coe status

* I forgot about whitespace

* fixed specs

* whitespace again

* fixed spec titles
  • Loading branch information
alsleaders authored Feb 21, 2022
1 parent 94de79f commit c0fb7fd
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 20 deletions.
18 changes: 11 additions & 7 deletions lib/lgy/service.rb
Original file line number Diff line number Diff line change
Expand Up @@ -19,21 +19,25 @@ def initialize(edipi:, icn:)

def coe_status
if get_determination.body['status'] == 'ELIGIBLE' && get_application.status == 404
{ status: 'eligible' }
{ status: 'eligible', reference_number: get_determination.body['reference_number'] }
elsif get_determination.body['status'] == 'UNABLE_TO_DETERMINE_AUTOMATICALLY' && get_application.status == 404
{ status: 'unable-to-determine-eligibility' }
{ status: 'unable-to-determine-eligibility', reference_number: get_determination.body['reference_number'] }
elsif get_determination.body['status'] == 'ELIGIBLE' && get_application.status == 200
{ status: 'available', application_create_date: get_application.body['create_date'] }
{ status: 'available', application_create_date: get_application.body['create_date'],
reference_number: get_determination.body['reference_number'] }
elsif get_determination.body['status'] == 'NOT_ELIGIBLE'
{ status: 'denied', application_create_date: get_determination.body['determination_date'] }
{ status: 'denied', application_create_date: get_determination.body['determination_date'],
reference_number: get_determination.body['reference_number'] }
elsif get_determination.body['status'] == 'PENDING' && get_application.status == 404
# Kelli said we'll never having a pending status w/o an application, but LGY sqa data is getting hand crafted
{ status: 'pending' }
{ status: 'pending', reference_number: get_determination.body['reference_number'] }
elsif get_determination.body['status'] == 'PENDING' && get_application.body['status'] == 'SUBMITTED'
# SUBMITTED & RECEIVED ARE COMBINED ON LGY SIDE
{ status: 'pending', application_create_date: get_application.body['create_date'] }
{ status: 'pending', application_create_date: get_application.body['create_date'],
reference_number: get_determination.body['reference_number'] }
elsif get_determination.body['status'] == 'PENDING' && get_application.body['status'] == 'RETURNED'
{ status: 'pending-upload', application_create_date: get_application.body['create_date'] }
{ status: 'pending-upload', application_create_date: get_application.body['create_date'],
reference_number: get_determination.body['reference_number'] }
end
end

Expand Down
30 changes: 17 additions & 13 deletions spec/lib/lgy/service_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -58,20 +58,20 @@

describe '#coe_status' do
context 'when get_determination is eligible and get_application is a 404' do
it 'returns eligible' do
it 'returns eligible and reference number' do
VCR.use_cassette 'lgy/determination_eligible' do
VCR.use_cassette 'lgy/application_not_found' do
expect(subject.coe_status).to eq status: 'eligible'
expect(subject.coe_status).to eq status: 'eligible', reference_number: '16934344'
end
end
end
end

context 'when get_determination is Unable to Determine Automatically and get_application is a 404' do
it 'returns unable-to-determine-eligibility' do
it 'returns unable-to-determine-eligibility and reference number' do
VCR.use_cassette 'lgy/determination_unable_to_determine' do
VCR.use_cassette 'lgy/application_not_found' do
expect(subject.coe_status).to eq status: 'unable-to-determine-eligibility'
expect(subject.coe_status).to eq status: 'unable-to-determine-eligibility', reference_number: '16934339'
end
end
end
Expand All @@ -81,16 +81,18 @@
it 'returns correct payload' do
VCR.use_cassette 'lgy/determination_eligible' do
VCR.use_cassette 'lgy/application_200_status_submitted' do
expect(subject.coe_status).to eq status: 'available', application_create_date: 1_642_619_386_000
expect(subject.coe_status).to eq status: 'available', application_create_date: 1_642_619_386_000,
reference_number: '16934344'
end
end
end
end

context 'when get_determination is NOT_ELIGIBLE' do
it 'returns denied' do
it 'returns denied and reference number' do
VCR.use_cassette 'lgy/determination_not_eligible' do
expect(subject.coe_status).to eq status: 'denied', application_create_date: 1_640_016_802_000
expect(subject.coe_status).to eq status: 'denied', application_create_date: 1_640_016_802_000,
reference_number: '16934414'
end
end
end
Expand All @@ -105,8 +107,8 @@

after { VCR.eject_cassette 'lgy/application_not_found' }

it 'returns pending' do
expect(subject.coe_status).to eq status: 'pending'
it 'returns pending and reference number' do
expect(subject.coe_status).to eq status: 'pending', reference_number: '16934414'
end
end

Expand All @@ -115,8 +117,9 @@

after { VCR.eject_cassette 'lgy/application_200_status_submitted' }

it 'returns pending and the application createDate' do
expect(subject.coe_status).to eq status: 'pending', application_create_date: 1_642_619_386_000
it 'returns pending and the application createDate and the reference number' do
expect(subject.coe_status).to eq status: 'pending', application_create_date: 1_642_619_386_000,
reference_number: '16934414'
end
end

Expand All @@ -125,8 +128,9 @@

after { VCR.eject_cassette 'lgy/application_200_status_returned' }

it 'returns pending-upload and the application createDate' do
expect(subject.coe_status).to eq status: 'pending-upload', application_create_date: 1_642_619_386_000
it 'returns pending-upload and the application createDate and reference number' do
expect(subject.coe_status).to eq status: 'pending-upload', application_create_date: 1_642_619_386_000,
reference_number: '16934414'
end
end
end
Expand Down

0 comments on commit c0fb7fd

Please sign in to comment.