|
342 | 342 | let(:providing_diapers) { "Y" } |
343 | 343 | let(:providing_period_supplies) { "Y" } |
344 | 344 | let(:distribution) { create(:distribution, partner: partner) } |
345 | | - let(:item) { create(:item) } |
346 | 345 |
|
347 | 346 | shared_examples "providing_diapers check" do |scope| |
348 | 347 | before do |
349 | | - create(:line_item, item: item, itemizable: distribution) |
350 | | - |
351 | | - # Mock both scopes to return empty collection by default |
352 | | - allow(Item).to receive(:disposable) { Item.none } |
353 | | - allow(Item).to receive(:cloth_diapers) { Item.none } |
| 348 | + case scope |
| 349 | + when :disposable |
| 350 | + item = create(:item, base_item: create(:base_item, category: "Diapers - Childrens")) |
| 351 | + when :cloth_diapers |
| 352 | + item = create(:item, base_item: create(:base_item, category: "Diapers - Cloth (Kids)")) |
| 353 | + end |
354 | 354 |
|
355 | | - # Mock the given scope to at least satisfy one item |
356 | | - allow(Item).to receive(scope) { Item.where(id: item.id) } |
| 355 | + create(:line_item, item: item, itemizable: distribution) |
357 | 356 | end |
358 | 357 |
|
359 | 358 | it "should have Y as providing_diapers" do |
|
371 | 370 |
|
372 | 371 | context "with a period supplies item" do |
373 | 372 | before do |
| 373 | + item = create(:item, base_item: create(:base_item, category: "Menstrual Supplies/Items")) |
374 | 374 | create(:line_item, item: item, itemizable: distribution) |
375 | | - # Mock the given scope to at least satisfy one item |
376 | | - allow(Item).to receive(:period_supplies) { Item.where(id: item.id) } |
377 | 375 | end |
378 | 376 |
|
379 | 377 | it "should have Y as providing_period_supplies" do |
|
0 commit comments