Skip to content

Commit

Permalink
Merge pull request #9 from TomHAnderson/feature/phpunit-badges
Browse files Browse the repository at this point in the history
Added badges and 100% code coverage
  • Loading branch information
TomHAnderson committed Jan 19, 2022
2 parents cb2e7f5 + 171d120 commit 5acde06
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 4 deletions.
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Hypertext Application Language for Laravel

[![Build Status](https://travis-ci.com/API-Skeletons/laravel-hal.svg?branch=master)](https://travis-ci.com/API-Skeletons/laravel-hal)
[![Coverage Status](https://coveralls.io/repos/github/API-Skeletons/laravel-hal/badge.svg?branch=master)](https://coveralls.io/github/API-Skeletons/laravel-hal?branch=master)
[![Build Status](https://github.com/API-Skeletons/laravel-hal/actions/workflows/continuous-integration.yml/badge.svg)](https://github.com/API-Skeletons/laravel-hal/actions/workflows/continuous-integration.yml?query=branch%3Amain)
[![Code Coverage](https://codecov.io/gh/API-Skeletons/laravel-hal/branch/main/graphs/badge.svg)](https://codecov.io/gh/API-Skeletons/laravel-hal/branch/main)
[![Documentation Status](https://readthedocs.org/projects/api-skeletons-laravel-hal/badge/?version=latest)](https://api-skeletons-laravel-hal.readthedocs.io/en/latest/?badge=latest)
[![PHP Version](https://img.shields.io/badge/PHP-7.3%20to%208.0%2b-blue)](https://img.shields.io/badge/PHP-7.3%20to%208.0%2b-blue)
[![Laravel Version](https://img.shields.io/badge/Laravel-5.7%20to%208.x-red)](https://img.shields.io/badge/Laravel-5.7%20to%208.x-red)
[![PHP Version](https://img.shields.io/badge/PHP-8.0%2b-blue)](https://img.shields.io/badge/PHP-7.3%20to%208.0%2b-blue)
[![Laravel Version](https://img.shields.io/badge/Laravel-8.x%2b-red)](https://img.shields.io/badge/Laravel-5.7%20to%208.x-red)
[![Total Downloads](https://poser.pugx.org/api-skeletons/laravel-hal/downloads)](//packagist.org/packages/api-skeletons/laravel-hal)
[![License](https://poser.pugx.org/api-skeletons/laravel-hal/license)](//packagist.org/packages/api-skeletons/laravel-hal)

Expand Down
29 changes: 29 additions & 0 deletions test/ResourceTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

namespace ApiSkeletonsTest\Laravel\HAL;

use ApiSkeletonsTest\Laravel\HAL\Hydrator\UserHydrator;
use ApiSkeletonsTest\Laravel\HAL\Model\User;
use DateTime;
use Illuminate\Support\Carbon;
Expand Down Expand Up @@ -74,6 +75,34 @@ public function testEmbeddedResources(): void
$this->assertEquals('array', $resource->toArray()['_embedded']['resources'][2]['adhoc']);
}

public function testEmbeddedResourcesWithCustomHydrator(): void
{
$hydratorManager = new HydratorManager();
$resource = $hydratorManager->resource();

// Test all three possible types pushed to addEmbeddedResources
$collection = new Collection();
// Hydratable class
$user = new User();
$user->id = 1;
$user->name = 'Test';
$user->email = 'test@testing.net';
$collection->push($user);

// Resource
$user2 = new User();
$user2->id = 2;
$user2->name = 'Test 2';
$user2->email = 'test2@testing.net';
$userResource = $hydratorManager->extract($user2);
$collection->push($userResource);

$resource->addEmbeddedResources('resources', $collection, UserHydrator::class);

$this->assertEquals('Test', $resource->toArray()['_embedded']['resources'][0]['name']);
$this->assertEquals('Test 2', $resource->toArray()['_embedded']['resources'][1]['name']);
}

public function testToEmptyArray(): void
{
$hydratorManager = new HydratorManager();
Expand Down

0 comments on commit 5acde06

Please sign in to comment.