|
3 | 3 | RSpec.describe Fax do |
4 | 4 | let(:test_file) { File.open test_file_path } |
5 | 5 | let(:test_file_path) { File.expand_path(File.join('..', '..', 'support', 'files', 'test.pdf'), __FILE__) } |
6 | | - let(:test_recipient_number) { ENV.fetch 'TEST_RECIPIENT_NUMBER' } |
| 6 | + let(:test_recipient_number) { ENV.fetch('TEST_RECIPIENT_NUMBER', '+15558675309') } |
7 | 7 |
|
8 | 8 | describe 'creating a fax' do |
9 | 9 | let(:action) { Fax.create params } |
|
29 | 29 |
|
30 | 30 | describe 'retrieving a fax' do |
31 | 31 | let(:action) { Fax.get fax_id, params } |
32 | | - let(:fax_id) { 1234 } |
| 32 | + let!(:fax_id) { |
| 33 | + VCR.use_cassette('resources/fax/create_for_get') do |
| 34 | + Phaxio::Fax.create(to: test_recipient_number, file: test_file).id |
| 35 | + end |
| 36 | + } |
33 | 37 | let(:params) { {} } |
34 | 38 |
|
35 | 39 | around(:each) do |example| |
|
50 | 54 | end |
51 | 55 | end |
52 | 56 |
|
53 | | - # TODO: Refactor this |
54 | | - # This one's a little tricky, since it relies on having a fax to cancel. |
55 | 57 | describe 'cancelling a fax' do |
56 | | - let(:action) { Fax.cancel @fax_id, params } |
| 58 | + let(:action) { Fax.cancel fax_id, params } |
57 | 59 | let(:params) { {} } |
58 | | - |
59 | | - before do |
60 | | - VCR.use_cassette('resources/fax/create') do |
61 | | - @fax_id = Fax.create(to: test_recipient_number, file: test_file).id |
| 60 | + let!(:fax_id) { |
| 61 | + VCR.use_cassette('resources/fax/create_for_cancel') do |
| 62 | + Phaxio::Fax.create(to: test_recipient_number, file: test_file).id |
62 | 63 | end |
63 | | - end |
| 64 | + } |
64 | 65 |
|
65 | 66 | around(:each) do |example| |
66 | 67 | VCR.use_cassette('resources/fax/cancel') do |
|
69 | 70 | end |
70 | 71 |
|
71 | 72 | it 'makes the request to Phaxio' do |
72 | | - expect_api_request :post, "faxes/#{@fax_id}/cancel", params |
| 73 | + expect_api_request :post, "faxes/#{fax_id}/cancel", params |
73 | 74 | action |
74 | 75 | end |
75 | 76 |
|
76 | 77 | it 'returns a reference to the fax' do |
77 | 78 | result = action |
78 | 79 | expect(result).to be_a(Fax::Reference) |
79 | | - expect(result.id).to eq(@fax_id) |
| 80 | + expect(result.id).to eq(fax_id) |
80 | 81 | end |
81 | 82 | end |
82 | 83 |
|
|
104 | 105 |
|
105 | 106 | describe 'resending a fax' do |
106 | 107 | let(:action) { Fax.resend fax_id, params } |
107 | | - let(:fax_id) { 1234 } |
| 108 | + let!(:fax_id) { |
| 109 | + VCR.use_cassette('resources/fax/create_for_resend') do |
| 110 | + Phaxio::Fax.create(to: test_recipient_number, file: test_file).id |
| 111 | + end |
| 112 | + } |
108 | 113 | let(:params) { {} } |
109 | 114 |
|
110 | 115 | around do |example| |
|
127 | 132 |
|
128 | 133 | describe 'deleting a fax' do |
129 | 134 | let(:action) { Fax.delete fax_id, params } |
130 | | - let(:fax_id) { 1234 } |
| 135 | + let!(:fax_id) { |
| 136 | + VCR.use_cassette('resources/fax/create_for_delete') do |
| 137 | + Phaxio::Fax.create(to: test_recipient_number, file: test_file).id |
| 138 | + end |
| 139 | + } |
131 | 140 | let(:params) { {} } |
132 | 141 |
|
133 | 142 | around do |example| |
|
149 | 158 |
|
150 | 159 | describe 'deleting a fax file' do |
151 | 160 | let(:action) { Fax.delete_file fax_id, params } |
152 | | - let(:fax_id) { 1234 } |
| 161 | + let!(:fax_id) { |
| 162 | + VCR.use_cassette('resources/fax/create_for_delete_file') do |
| 163 | + Phaxio::Fax.create(to: test_recipient_number, file: test_file).id |
| 164 | + end |
| 165 | + } |
153 | 166 | let(:params) { {} } |
154 | 167 |
|
155 | 168 | around do |example| |
|
171 | 184 |
|
172 | 185 | describe 'downloading a fax file' do |
173 | 186 | let(:action) { Fax.file fax_id, params } |
174 | | - let(:fax_id) { 1234 } |
| 187 | + let!(:fax_id) { |
| 188 | + VCR.use_cassette('resources/fax/create_for_download_file') do |
| 189 | + Phaxio::Fax.create(to: test_recipient_number, file: test_file).id |
| 190 | + end |
| 191 | + } |
175 | 192 | let(:params) { {} } |
176 | 193 |
|
177 | 194 | around do |example| |
|
213 | 230 | end |
214 | 231 |
|
215 | 232 | describe Fax::Reference do |
216 | | - let(:fax_id) { 1234 } |
| 233 | + let!(:fax_id) { |
| 234 | + VCR.use_cassette('resources/fax/create_for_reference') do |
| 235 | + Phaxio::Fax.create(to: test_recipient_number, file: test_file).id |
| 236 | + end |
| 237 | + } |
217 | 238 |
|
218 | 239 | it 'gets the full fax' do |
219 | | - VCR.use_cassette('resources/fax/get') do |
| 240 | + VCR.use_cassette('resources/fax/reference') do |
220 | 241 | reference = Fax::Reference.new fax_id |
221 | 242 | result = reference.get |
222 | 243 | expect(result).to be_a(Fax) |
223 | | - expect(result.id).to eq(1234) |
| 244 | + expect(result.id).to eq(fax_id) |
224 | 245 | end |
225 | 246 | end |
226 | 247 | end |
|
0 commit comments