mirror of
https://github.com/nothingworksinc/ticketbeast.git
synced 2026-02-14 21:53:15 +00:00
126 - More Custom Assertion Fun
This commit is contained in:
@@ -10,4 +10,9 @@ class ConcertFactory
|
|||||||
$concert->publish();
|
$concert->publish();
|
||||||
return $concert;
|
return $concert;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function createUnpublished($overrides = [])
|
||||||
|
{
|
||||||
|
return factory(Concert::class)->states('unpublished')->create($overrides);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,6 +28,15 @@ class ViewConcertListTest extends TestCase
|
|||||||
Collection::macro('assertNotContains', function ($value) {
|
Collection::macro('assertNotContains', function ($value) {
|
||||||
Assert::assertFalse($this->contains($value), "Failed asserting that the collection does not contain the specified value.");
|
Assert::assertFalse($this->contains($value), "Failed asserting that the collection does not contain the specified value.");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Collection::macro('assertEquals', function ($items) {
|
||||||
|
Assert::assertEquals(count($this), count($items));
|
||||||
|
|
||||||
|
$this->zip($items)->each(function ($pair) {
|
||||||
|
list($a, $b) = $pair;
|
||||||
|
Assert::assertTrue($a->is($b));
|
||||||
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @test */
|
/** @test */
|
||||||
@@ -49,26 +58,22 @@ class ViewConcertListTest extends TestCase
|
|||||||
$publishedConcertB = ConcertFactory::createPublished(['user_id' => $otherUser->id]);
|
$publishedConcertB = ConcertFactory::createPublished(['user_id' => $otherUser->id]);
|
||||||
$publishedConcertC = ConcertFactory::createPublished(['user_id' => $user->id]);
|
$publishedConcertC = ConcertFactory::createPublished(['user_id' => $user->id]);
|
||||||
|
|
||||||
$unpublishedConcertA = factory(Concert::class)->states('unpublished')->create(['user_id' => $user->id]);
|
$unpublishedConcertA = ConcertFactory::createUnpublished(['user_id' => $user->id]);
|
||||||
$unpublishedConcertB = factory(Concert::class)->states('unpublished')->create(['user_id' => $otherUser->id]);
|
$unpublishedConcertB = ConcertFactory::createUnpublished(['user_id' => $otherUser->id]);
|
||||||
$unpublishedConcertC = factory(Concert::class)->states('unpublished')->create(['user_id' => $user->id]);
|
$unpublishedConcertC = ConcertFactory::createUnpublished(['user_id' => $user->id]);
|
||||||
|
|
||||||
$response = $this->actingAs($user)->get('/backstage/concerts');
|
$response = $this->actingAs($user)->get('/backstage/concerts');
|
||||||
|
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
|
|
||||||
$response->data('publishedConcerts')->assertContains($publishedConcertA);
|
$response->data('publishedConcerts')->assertEquals([
|
||||||
$response->data('publishedConcerts')->assertNotContains($publishedConcertB);
|
$publishedConcertA,
|
||||||
$response->data('publishedConcerts')->assertContains($publishedConcertC);
|
$publishedConcertC,
|
||||||
$response->data('publishedConcerts')->assertNotContains($unpublishedConcertA);
|
]);
|
||||||
$response->data('publishedConcerts')->assertNotContains($unpublishedConcertB);
|
|
||||||
$response->data('publishedConcerts')->assertNotContains($unpublishedConcertC);
|
|
||||||
|
|
||||||
$response->data('unpublishedConcerts')->assertNotContains($publishedConcertA);
|
$response->data('unpublishedConcerts')->assertEquals([
|
||||||
$response->data('unpublishedConcerts')->assertNotContains($publishedConcertB);
|
$unpublishedConcertA,
|
||||||
$response->data('unpublishedConcerts')->assertNotContains($publishedConcertC);
|
$unpublishedConcertC,
|
||||||
$response->data('unpublishedConcerts')->assertContains($unpublishedConcertA);
|
]);
|
||||||
$response->data('unpublishedConcerts')->assertNotContains($unpublishedConcertB);
|
|
||||||
$response->data('unpublishedConcerts')->assertContains($unpublishedConcertC);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user