mirror of
https://github.com/shlinkio/shlink.git
synced 2024-11-27 08:18:24 +03:00
Merge pull request #299 from acelaya/feature/repository-tests
Improved repository tests
This commit is contained in:
commit
6ba4d8e947
7 changed files with 34 additions and 5 deletions
|
@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file.
|
|||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org).
|
||||
|
||||
## [Unreleased]
|
||||
## 1.15.0 - 2018-12-02
|
||||
|
||||
#### Added
|
||||
|
||||
|
@ -22,6 +22,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|||
|
||||
* [#267](https://github.com/shlinkio/shlink/issues/267) API responses and the CLI interface is no longer translated and uses english always. Only not found error templates are still translated.
|
||||
* [#289](https://github.com/shlinkio/shlink/issues/289) Extracted coding standard rules to a separated package.
|
||||
* [#273](https://github.com/shlinkio/shlink/issues/273) Improved code coverage in repository classes.
|
||||
|
||||
#### Deprecated
|
||||
|
||||
|
|
|
@ -119,7 +119,7 @@
|
|||
|
||||
"test:pretty": [
|
||||
"@test",
|
||||
"phpcov merge build --html build/html"
|
||||
"phpdbg -qrr vendor/bin/phpcov merge build --html build/html"
|
||||
],
|
||||
"test:unit:pretty": "phpdbg -qrr vendor/bin/phpunit --coverage-html build/coverage --order-by=random",
|
||||
|
||||
|
|
7
indocker
7
indocker
|
@ -1,2 +1,9 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Run docker containers if they are not up yet
|
||||
if [[ $(docker ps | grep shlink_swoole) ]]; then :
|
||||
else
|
||||
docker-compose up -d
|
||||
fi
|
||||
|
||||
docker exec -it shlink_swoole /bin/sh -c "$*"
|
||||
|
|
|
@ -14,7 +14,7 @@ class TagRepository extends EntityRepository implements TagRepositoryInterface
|
|||
* @param array $names
|
||||
* @return int The number of affected entries
|
||||
*/
|
||||
public function deleteByName(array $names)
|
||||
public function deleteByName(array $names): int
|
||||
{
|
||||
if (empty($names)) {
|
||||
return 0;
|
||||
|
|
|
@ -13,5 +13,5 @@ interface TagRepositoryInterface extends ObjectRepository
|
|||
* @param array $names
|
||||
* @return int The number of affected entries
|
||||
*/
|
||||
public function deleteByName(array $names);
|
||||
public function deleteByName(array $names): int;
|
||||
}
|
||||
|
|
|
@ -92,7 +92,10 @@ class ShortUrlRepositoryTest extends DatabaseTestCase
|
|||
$this->getEntityManager()->persist($foo);
|
||||
|
||||
$bar = new ShortUrl('bar');
|
||||
$bar->setShortCode('bar_very_long_text');
|
||||
$visit = new Visit($bar, Visitor::emptyInstance());
|
||||
$this->getEntityManager()->persist($visit);
|
||||
$bar->setShortCode('bar_very_long_text')
|
||||
->setVisits(new ArrayCollection([$visit]));
|
||||
$this->getEntityManager()->persist($bar);
|
||||
|
||||
$foo2 = new ShortUrl('foo_2');
|
||||
|
@ -104,6 +107,22 @@ class ShortUrlRepositoryTest extends DatabaseTestCase
|
|||
$result = $this->repo->findList(null, null, 'foo', ['bar']);
|
||||
$this->assertCount(1, $result);
|
||||
$this->assertSame($foo, $result[0]);
|
||||
|
||||
$result = $this->repo->findList();
|
||||
$this->assertCount(3, $result);
|
||||
|
||||
$result = $this->repo->findList(2);
|
||||
$this->assertCount(2, $result);
|
||||
|
||||
$result = $this->repo->findList(2, 1);
|
||||
$this->assertCount(2, $result);
|
||||
|
||||
$result = $this->repo->findList(2, 2);
|
||||
$this->assertCount(1, $result);
|
||||
|
||||
$result = $this->repo->findList(null, null, null, [], ['visits' => 'DESC']);
|
||||
$this->assertCount(3, $result);
|
||||
$this->assertSame($bar, $result[0]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -82,6 +82,8 @@ class VisitRepositoryTest extends DatabaseTestCase
|
|||
$this->assertCount(4, $this->repo->findVisitsByShortCode($shortUrl->getShortCode(), new DateRange(
|
||||
Chronos::parse('2016-01-03')
|
||||
)));
|
||||
$this->assertCount(3, $this->repo->findVisitsByShortCode($shortUrl->getShortCode(), null, 3, 2));
|
||||
$this->assertCount(2, $this->repo->findVisitsByShortCode($shortUrl->getShortCode(), null, 5, 4));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in a new issue