mirror of
https://github.com/wallabag/wallabag.git
synced 2024-11-26 11:01:04 +00:00
Added tests
This commit is contained in:
parent
49b042dfdf
commit
32f455c131
6 changed files with 73 additions and 5 deletions
|
@ -110,8 +110,7 @@ class EntryRepository extends EntityRepository
|
|||
$qb
|
||||
->andWhere('e.content LIKE :term OR e.title LIKE :term')->setParameter('term', '%'.$term.'%')
|
||||
->leftJoin('e.tags', 't')
|
||||
->groupBy('e.id')
|
||||
->having('count(t.id) = 0');
|
||||
->groupBy('e.id');
|
||||
|
||||
return $qb;
|
||||
}
|
||||
|
|
|
@ -162,7 +162,7 @@ entry:
|
|||
archived: "Articles lus"
|
||||
filtered: "Articles filtrés"
|
||||
filtered_tags: "Articles filtrés par tags :"
|
||||
filtered_search: 'Articles filtrés par une recherche :'
|
||||
filtered_search: 'Articles filtrés par recherche :'
|
||||
untagged: "Article sans tag"
|
||||
list:
|
||||
number_on_the_page: "{0} Il n’y a pas d’articles.|{1} Il y a un article.|]1,Inf[ Il y a %count% articles."
|
||||
|
|
|
@ -9,6 +9,8 @@
|
|||
<span class="black-text">{{ form_errors(form.term) }}</span>
|
||||
{% endif %}
|
||||
|
||||
<input type="hidden" name="currentRoute" value="{{ currentRoute }}" />
|
||||
|
||||
{{ form_widget(form.term, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.search.placeholder'} }) }}
|
||||
|
||||
{{ form_rest(form) }}
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<li class="menu new"><a href="{{ path('new') }}">{{ 'menu.left.save_link'|trans }}</a></li>
|
||||
<li style="position: relative;"><a href="javascript: void(null);" id="search">{{ 'menu.left.search'|trans }}</a>
|
||||
<div id="search-form" class="messages info popup-form">
|
||||
{{ render(controller("WallabagCoreBundle:Entry:searchForm")) }}
|
||||
{{ render(controller("WallabagCoreBundle:Entry:searchForm", {'currentRoute': app.request.attributes.get('_route')})) }}
|
||||
</div>
|
||||
</li>
|
||||
<li class="menu config"><a href="{{ path('config') }}">{{ 'menu.left.config'|trans }}</a></li>
|
||||
|
|
|
@ -1018,4 +1018,71 @@ class EntryControllerTest extends WallabagCoreTestCase
|
|||
|
||||
$this->assertCount(7, $crawler->filter('div[class=entry]'));
|
||||
}
|
||||
|
||||
public function testSearch()
|
||||
{
|
||||
$this->logInAs('admin');
|
||||
$client = $this->getClient();
|
||||
|
||||
// Search on unread list
|
||||
$crawler = $client->request('GET', '/unread/list');
|
||||
|
||||
$form = $crawler->filter('form[name=search]')->form();
|
||||
$data = [
|
||||
'search_entry[term]' => 'title',
|
||||
];
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
|
||||
$this->assertCount(4, $crawler->filter('div[class=entry]'));
|
||||
|
||||
// Search on starred list
|
||||
$crawler = $client->request('GET', '/starred/list');
|
||||
|
||||
$form = $crawler->filter('form[name=search]')->form();
|
||||
$data = [
|
||||
'search_entry[term]' => 'title',
|
||||
];
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
|
||||
$this->assertCount(1, $crawler->filter('div[class=entry]'));
|
||||
|
||||
// Added new article to test on archive list
|
||||
$crawler = $client->request('GET', '/new');
|
||||
$form = $crawler->filter('form[name=entry]')->form();
|
||||
$data = [
|
||||
'entry[url]' => $this->url,
|
||||
];
|
||||
$client->submit($form, $data);
|
||||
$content = $client->getContainer()
|
||||
->get('doctrine.orm.entity_manager')
|
||||
->getRepository('WallabagCoreBundle:Entry')
|
||||
->findByUrlAndUserId($this->url, $this->getLoggedInUserId());
|
||||
$client->request('GET', '/archive/'.$content->getId());
|
||||
|
||||
$crawler = $client->request('GET', '/archive/list');
|
||||
|
||||
$form = $crawler->filter('form[name=search]')->form();
|
||||
$data = [
|
||||
'search_entry[term]' => 'manège',
|
||||
];
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
|
||||
$this->assertCount(1, $crawler->filter('div[class=entry]'));
|
||||
$client->request('GET', '/delete/'.$content->getId());
|
||||
|
||||
// test on list of all articles
|
||||
$crawler = $client->request('GET', '/all/list');
|
||||
|
||||
$form = $crawler->filter('form[name=search]')->form();
|
||||
$data = [
|
||||
'search_entry[term]' => 'pocket',
|
||||
];
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
|
||||
$this->assertCount(0, $crawler->filter('div[class=entry]'));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue