68 lines
2.2 KiB
Gherkin
68 lines
2.2 KiB
Gherkin
Feature:
|
|
Application should fetch document for stored queries in background.
|
|
So we must have command that do it.
|
|
|
|
@db-fixtures @external-index-fixtures
|
|
Scenario:
|
|
Fetch document for stored queries.
|
|
|
|
|
|
Given I run command socialhose:stored_query:fetch
|
|
|
|
Then command returned 0 exit code
|
|
|
|
# Check entities in database.
|
|
And database has entity CacheBundle:Query\StoredQuery
|
|
| raw | cat |
|
|
| status | synced |
|
|
And has entity CacheBundle:Document
|
|
| title | About cat |
|
|
And don't has entity AppBundle:FetchJob
|
|
| id | 1 |
|
|
|
|
When I wait 1000 milliseconds until documents was indexed
|
|
Then internal index has 1 document
|
|
| query | eq | #getStoredQuery({'raw': 'cat', 'status': 'synced'}).getId()# |
|
|
|
|
# After add new document.
|
|
Given has new document in external index
|
|
| sequence | 2 |
|
|
| title | New cat article |
|
|
| date_found | #date().getTimestamp()# |
|
|
|
|
When I run command socialhose:stored_query:update
|
|
Then command returned 0 exit code
|
|
|
|
# Check entities in database.
|
|
And database has entity CacheBundle:Query\StoredQuery
|
|
| raw | cat |
|
|
| status | synced |
|
|
And has entity CacheBundle:Document
|
|
| title | About cat |
|
|
And has entity CacheBundle:Document
|
|
| title | New cat article |
|
|
|
|
When I wait 1000 milliseconds until documents was indexed
|
|
Then internal index has 2 document
|
|
| query | eq | #getStoredQuery({'raw': 'cat', 'status': 'synced'}).getId()# |
|
|
|
|
# Add third document.
|
|
Given has new document in external index
|
|
| sequence | 3 |
|
|
| title | About dogs |
|
|
| date_found | #date().getTimestamp()# |
|
|
|
|
When I run command socialhose:stored_query:update
|
|
Then command returned 0 exit code
|
|
|
|
# Check entities in database.
|
|
And has entity CacheBundle:Document
|
|
| title | About cat |
|
|
And has entity CacheBundle:Document
|
|
| title | New cat article |
|
|
But don't has entity CacheBundle:Document
|
|
| title | About dogs |
|
|
|
|
When I wait 1000 milliseconds until documents was indexed
|
|
Then internal index has 2 document
|
|
| query | eq | #getStoredQuery({'raw': 'cat', 'status': 'synced'}).getId()# | |