Commit graph

573 commits

Author SHA1 Message Date
Jeremy Benoist
f40c88eb1f
Jump to Symfony 3.3 & update others deps
Also update tests urls
2017-10-09 16:45:12 +02:00
Jeremy Benoist
33264c2d02
Fix tests 2017-09-06 22:49:16 +02:00
Jeremy Benoist
7c04b7396a
Multiple tag search was broken from API
First, the setParameter() were done on the same parameter which in fact
just duplicated the condition in the SQL query (like `where t.label =
'test' and t.label = 'test'`.

Changed the parameter doesn't help because the query was then wrong.

Changing the way to match associated tags for an entry and it worked.
2017-09-06 22:49:15 +02:00
Jérémy Benoist
3af5d41759 Merge pull request #3139 from Kdecherf/2502-tag-case
Ignore tag's case
2017-09-03 20:25:15 +02:00
Jeremy Benoist
e437ad810b Fix tests
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-08-27 16:51:23 +02:00
Kevin Decherf
7036d91fe7 Tag: render tags case-insensitive by storing them in lowercase
Fixes #2502

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-08-27 16:51:23 +02:00
François D
a991c46eed Set a starred_at field when an entry is starred.
This date is used to sort starred entries.

Can not use Entry::timestamps method otherwise starred_at will be updated each time entry is updated.
Add an updateStar method into Entry class
A migration script has been added in order to set starred_at field.
2017-08-25 21:19:47 +02:00
Nicolas Hart
511f1ce1e8 Add reload entry command 2017-08-21 10:45:48 +02:00
Nicolas Hart
f7a4b44136 add search argument and limit option to list users command 2017-07-31 23:20:41 +02:00
Nicolas Hart
af31cfed76 Add list user command 2017-07-30 22:04:29 +02:00
Nicolas Hart
e1b33efb3d Better rendering for all core commands 2017-07-29 11:09:02 +02:00
Jeremy Benoist
ff9f89fd23
Add a test for updatePublishedAt
To avoid error when a content is re-submitted and it previously add a
published date.

Also, fix the `testPostSameEntry`
2017-07-24 17:07:47 +02:00
Jeremy Benoist
c6c45673af
Put the final URL in data test 2017-07-24 11:13:53 +02:00
Jeremy Benoist
2e5b2fa808
Revert client_credentials grant types 2017-07-08 19:28:12 +02:00
Jeremy Benoist
c18a2476b6
CS 2017-07-03 13:56:39 +02:00
Jeremy Benoist
d0ec2ddd23
Fix validateAndSetPreviewPicture
Which wasn't covered by a test!
2017-07-03 13:45:04 +02:00
Jeremy Benoist
a05b61159e
Fix PATCH method
The PATCH method for the entry should only update what user sent to us and not the whole entry as it was before.
Also, sending tags when patching an entry will now remove all current tags & assocatied new ones.
2017-07-03 13:45:04 +02:00
Jeremy Benoist
38520658ad
Fix tests 2017-07-03 07:30:54 +02:00
Jeremy Benoist
f808b01692
Add a real configuration for CS-Fixer 2017-07-01 09:52:38 +02:00
Jeremy Benoist
39ffaba323
Return null instead of false 2017-06-28 08:15:06 +02:00
Jeremy Benoist
18696f77fd
Avoid BC on exists endpoint 2017-06-23 08:30:23 +02:00
Nicolas Lœuillet
d0702f9fbd Merge pull request #3227 from wallabag/oauth-client-credentials
Add client_credentials oAuth2 auth method
2017-06-22 10:00:23 +02:00
Jeremy Benoist
11b8695663
Fix tests 2017-06-21 11:44:35 +02:00
Jeremy Benoist
18c38dffc6
Add RSS tags feeds 2017-06-21 11:44:35 +02:00
Jérémy Benoist
80784b782b Merge pull request #2683 from wallabag/credentials-in-db
Store credentials in DB
2017-06-20 16:40:48 +02:00
Thomas Citharel
bead8b42da
Fix reviews
Encrypt username too
Redirect to list after saving credentials
Fix typos

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-20 16:03:39 +02:00
Jeremy Benoist
906424c1b6
Crypt site credential password 2017-06-20 16:03:35 +02:00
Jeremy Benoist
9de9f1e5ce
Add a live test for restricted article
It is not aimed to test if we can get the full article (since we aren't using real login/password)
but mostly to test the full work (with authentication, etc.)

Do not clean fixtured to avoid SQLite to re-use id for entry tag relation 😓
2017-06-20 16:03:20 +02:00
Jeremy Benoist
b8427f22f0
Add menu access to site credentials CRUD 2017-06-20 16:03:14 +02:00
Thomas Citharel
caa0b1765b Add client_credentials oAuth2 auth method
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-14 17:30:12 +02:00
Thomas Citharel
41d45c6122 Fix empty language and preview pics 2017-06-12 16:46:33 +02:00
Jeremy Benoist
1112e54772
Add public filter/field in the API
Listing entries can now be filtered by “public”.
Creating or patching an entry can now set is to public or remove the public.
Entry response now include “is_public” boolean field
2017-06-10 15:31:57 +02:00
Jeremy Benoist
e8911f7c09
Add isPublic filter on entries 2017-06-10 15:00:52 +02:00
Jérémy Benoist
679aaf0836 Merge pull request #3173 from wallabag/domain-name-param
remove craueconfig domain name setting and add a proper one in parame…
2017-06-10 11:36:03 +02:00
Jérémy Benoist
a899399989 Merge pull request #3192 from wallabag/validate-content-fields
Validate language & preview picture fields
2017-06-09 13:51:26 +02:00
Jeremy Benoist
1f7018e1fe
Cleanup test
Looks like we didn't ALWAYS get a value for language from 20minutes.
Ahem.
2017-06-09 11:52:41 +02:00
Jeremy Benoist
80e49ba7b0
Convert - to _ in language
Mostly to increase language supports
2017-06-09 11:42:09 +02:00
Jeremy Benoist
42f3bb2c63
Use Locale instead of Language 2017-06-09 11:28:04 +02:00
Jeremy Benoist
1a94252831
Promote https 2017-06-09 10:07:27 +02:00
Jeremy Benoist
f81a34e379
Use a listener to catch auth failure 2017-06-09 09:45:43 +02:00
Jeremy Benoist
e9056dd96f
Fix test
de_DE is not valid language.
Zataz doesn’t send a valid language in their content (they use `fr-FR`).
2017-06-08 22:51:30 +02:00
Jeremy Benoist
0d349ea670
Validate language & preview picture fields
Instead of saving the value of each field right into the content without any validation, it seems better to validate them.
This might sounds obvious now we say that.
2017-06-08 21:51:46 +02:00
Jeremy Benoist
80f4d85ac9
Review 2017-06-08 19:15:33 +02:00
Jeremy Benoist
a8d3fe50df
Add ability to name the client 2017-06-08 14:25:44 +02:00
Jeremy Benoist
eb570e49c8
CS 2017-06-07 23:31:14 +02:00
Jeremy Benoist
0c00e52516
Create a client when creating a user using the api
While creating a new user using the API, we also create a new client for the current user.
So the app which just create the user can use its newly created client to configure the app.

That new client is only return after creating the user.
When calling the endpoint /api/user to get user information, the new client information won’t be return.
2017-06-07 23:23:28 +02:00
Nicolas Lœuillet
7bb3aa3177 Merge pull request #3093 from aaa2000/annotation-error-on-save
Displays an error with an annotation with a too long quote
2017-06-07 16:30:27 +02:00
Jérémy Benoist
c0d756f67d Merge pull request #3181 from wallabag/api-content-patch
Add ability to patch an entry with more fields
2017-06-07 15:40:59 +02:00
Jérémy Benoist
4e4a5b534f Merge pull request #3184 from wallabag/better-way-image-extension
Use an alternative way to detect images
2017-06-07 13:41:25 +02:00
Jérémy Benoist
a3f16a5685 Merge pull request #3179 from wallabag/show-user-command
Show user command
2017-06-07 09:40:56 +02:00
Jeremy Benoist
577c0b6dd8
Use an alternative way to detect image
When parsing content to retrieve images to save locally, we only check for the content-type of the image response.
In some case, that value is empty.
Now we’re also checking for the first few bytes of the content as an alternative to detect if it’s an image wallabag can handle.
We might get higher image supports using that alternative method.
2017-06-05 22:54:02 +02:00
Thomas Citharel
0d8ecb82a3 Fix review
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-04 17:57:40 +02:00
adev
2c3e148b00 Displays an error with an annotation with a too long quote
Fix #2762
2017-06-04 11:38:29 +02:00
Jeremy Benoist
645291e8fe
Add ability to patch an entry with more fields
Like when we create an entry, we can now patch an entry with new fields:
- content
- language
- preview_picture
- published_at
- authors
2017-06-02 20:52:49 +02:00
Jeremy Benoist
a1e6187406
Return 201 on user creation 2017-06-02 20:03:25 +02:00
Thomas Citharel
d143fa243d Add show user command
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-02 16:53:03 +02:00
Jeremy Benoist
426bb453d2
API user creation behing a toggle
I've added a toggle feature (in internal settings) so that user api creation can be disabled while form registration still can be enabled.
Also, the /api/user endpoint shouldn't require authentication. Even if we check the authentication when sending a GET request, to retrieve current user information.

I've moved all the internal settings definition to config to avoid duplicated place to define them.
I don't know why we didn't did that earlier.
2017-06-02 11:32:38 +02:00
Jérémy Benoist
a687c8d915 Merge pull request #2708 from jcharaoui/import-disablecontentupdate
Import disableContentUpdate
2017-06-02 11:26:37 +02:00
Jeremy Benoist
fcad69a427
Replace images with &
Images with `&` in the path weren’t well replaced because they might be with `&amp;` in the html instead.

Replacing `&` with `&amp;` fix the problem.
2017-06-01 22:50:33 +02:00
Jeremy Benoist
6acadf8e98
Rewrote code & fix tests 2017-06-01 11:31:45 +02:00
Jeremy Benoist
d5c2cc54b5
Fix tests 2017-06-01 09:49:15 +02:00
Jerome Charaoui
704803e182
Replace Wallabag v1 error strings with v2 strings 2017-06-01 09:48:14 +02:00
Jerome Charaoui
d0e9b3d640
Add disableContentUpdate import option
This commit also decouples the "import" and "update" functions inside
ContentProxy. If a content array is available, it must be passed to the
new importEntry method.
2017-06-01 09:48:14 +02:00
Jerome Charaoui
7aba665e48
Avoid returning objects passed by reference.
Objects are always passed by reference, so it doesn't make sense to
return an object which is passed by reference as it will always be the
same object. This change makes the code a bit more readable.
2017-06-01 09:43:01 +02:00
Jérémy Benoist
2a0eec07a5 Merge pull request #3137 from aaa2000/isolated-tests
Isolated tests
2017-06-01 07:58:17 +02:00
adev
7ab5eb9508 Isolated tests
Use https://github.com/dmaicher/doctrine-test-bundle to have test isolation.
2017-05-31 16:03:54 +02:00
Jeremy Benoist
695af58857
Fix tests following rebase 2017-05-31 14:00:15 +02:00
Jeremy Benoist
38a04dee34
CS 2017-05-31 14:00:15 +02:00
Jeremy Benoist
f0378b4d7c
Forced date can now be a timestamp too
Add adding more tests for forced content
2017-05-31 14:00:15 +02:00
Jeremy Benoist
0d6cfb884c
Remove htmlawed and use graby instead
Instead of using htmlawed (which is already used in graby) use graby directly (which require some refacto on graby side).
Still needs some tests.
2017-05-31 14:00:15 +02:00
Jeremy Benoist
cf05a1ae34
Reduce imported entries
Down from 2.2 minutes to 1.39 minutes
2017-05-31 14:00:15 +02:00
Jeremy Benoist
74a75f7d43
Use graby ContentExtractor to clean html
It might be better to re-use some graby functionalities to clean html instead of building a new system.
2017-05-31 14:00:15 +02:00
Jeremy Benoist
fb436e8ca0
Add support for authors 2017-05-31 13:59:45 +02:00
Jeremy Benoist
e668a8124c
Allow other fields to be send using API
Entry API can now have these new fields:
- content
- language
- preview_picture
- published_at

Re-use the ContentProxy to be able to do the same using the web UI (in the future).
htmLawed is used to clean stuff from content, I hope it’ll be enough to avoid security breach.

Lower content validation when we want to update an entry with content already defined. Before, language & content_type were required. If there weren’t provided, we re-fetched the content using graby. I think these fields aren’t required for an entry to be created. So I removed them.
Which means some import from the v1 export won’t be re-fetched since they provide content, url & title.

Also, remove liberation link from Readability import to avoid overlaping import (from wallabag v1, which had the same link)
2017-05-31 13:59:45 +02:00
Nicolas Lœuillet
4423b88c5b Merge pull request #3168 from wallabag/instapaper-tags-import
Add support for tag in Instapaper import
2017-05-31 12:32:09 +02:00
Nicolas Lœuillet
d61fd8be4f Merge pull request #3138 from Kdecherf/2835-tags
Ignore ActionMarkAsRead when removing tag from entry
2017-05-31 11:48:42 +02:00
Nicolas Lœuillet
3f8578ded3 Merge pull request #3161 from wallabag/scrutinizer-2.3
Fix some Scrutinizer issues
2017-05-31 11:46:41 +02:00
Jeremy Benoist
31485bddb9
Ensure retrieved data are fresh 2017-05-31 11:11:02 +02:00
Jeremy Benoist
bad7df8c00
CS & improve tags assertions 2017-05-31 10:38:15 +02:00
Jeremy Benoist
7a8ed3cee1
Add support for tag in Instapaper import 2017-05-31 10:38:00 +02:00
Nicolas Lœuillet
7aa5607f29 Merge pull request #3143 from wallabag/fix-wllbg2-import
Fixed is_starred for wallabag v2 import
2017-05-31 09:08:34 +02:00
Kevin Decherf
5dbf3f2326 TagController: ignore ActionMarkAsRead when removing tag from entry
Fixes #2835

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-05-31 00:36:46 +02:00
Jeremy Benoist
047fdc767a
Add tests 2017-05-30 20:27:44 +02:00
Jérémy Benoist
2150576d86 Merge pull request #3065 from wallabag/api-creation-endpoint
Register through API
2017-05-30 15:26:11 +02:00
Jeremy Benoist
26650fdbf8
Use a better way to set input for command
Actually use the correct to way handle that

http://symfony.com/doc/current/components/console/helpers/questionhelper.html#testing-a-command-that-expects-input
2017-05-30 12:47:28 +02:00
Jeremy Benoist
d181bd7285
Merge remote-tracking branch 'origin/master' into 2.3 2017-05-30 09:59:06 +02:00
Jeremy Benoist
fe6461e4aa
Avoid side effect on other tests 2017-05-30 09:57:57 +02:00
Jeremy Benoist
d069bff4f6
Remove unknown validation_groups
The Profile validation_groups does not exist and then for validation to be skipped (like password length)
2017-05-30 08:04:11 +02:00
Jeremy Benoist
5709ecb368
Re-use NewUserType to validate registration
The only ugly things is how we handle error by generating the view and then parse the content to retrieve all errors…

Fix exposition fields in User entity
2017-05-30 07:56:01 +02:00
Thomas Citharel
de8d2a9005 CS
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-28 12:59:48 +02:00
Thomas Citharel
6bc6fb1f60 Move Tags assigner to a separate file
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-27 22:08:14 +02:00
Damien Cassou
ac1509a66b
Fix documentation URL for "How can I help to fix that?" 2017-05-24 12:57:46 +02:00
Jeremy Benoist
216dee4d8a
Fix SO tests
SO switched to http yesterday
2017-05-24 12:13:25 +02:00
Jeremy Benoist
be085c3d18
Ensure download_images_enabled is disabled
Even if the tests fail, that config must stay disabled after the test.
Otherwise it might timeout on other test (because it'll try to save all other images)
2017-05-19 13:10:46 +02:00
Jeremy Benoist
4ab0d25f65
Merge remote-tracking branch 'origin/master' into 2.3 2017-05-19 11:25:19 +02:00
Nicolas Lœuillet
a1146b6551
Added tests on logs records 2017-05-12 15:01:18 +02:00
Nicolas Lœuillet
3554364bed
Fixed tests 2017-05-12 13:47:53 +02:00
Nicolas Lœuillet
1517d5772d Replaced json_array with array
And fixed failing test due to @j0k3r :trollface:
2017-05-11 14:59:53 +02:00
Nicolas Lœuillet
dda6a6addc
Added headers field in Entry 2017-05-11 14:18:21 +02:00
Jérémy Benoist
09edbff336 Merge pull request #3101 from wallabag/credentials-new-extrafields
Skip auth when no credentials are found
2017-05-10 10:58:19 +02:00
Thomas Citharel
91ba9a5975 Merge pull request #3095 from aaa2000/api-error-on-fail-fetch-content
Create a new entry via API even when its content can't be retrieved
2017-05-10 09:38:55 +02:00
adev
a9357a8311 Remove the created entry to avoid side effects on other tests 2017-05-09 23:19:24 +02:00
Jeremy Benoist
1594a79fc5
Retrieve tag / tags value from query or request
It allows to request to delete a tag using query string instead of body parameter (which seems to be the standard).
Instead of breaking the previous behavior, I used a generic way to retrieve parameter (which looks into request attributes, query parameters and request parameters)
2017-05-09 23:15:25 +02:00
Jeremy Benoist
94b232bbb8
Skip auth when no credentials are found
If we can’t find a credential for the current host, even if it required login, we won’t add them and website will be fetched without any login.
2017-05-09 22:53:42 +02:00
Jérémy Benoist
0eb8220204 Merge pull request #2751 from bdunogier/2.2-guzzle_subscribers_improvement
Improved Guzzle subscribers extensibility
2017-05-09 17:10:03 +02:00
Nicolas Lœuillet
a2ae05a61c Merge pull request #3076 from wallabag/hotfix/2979
Disable negative numbers in filters
2017-05-09 13:56:44 +02:00
Jeremy Benoist
54c2d164a3
Merge remote-tracking branch 'origin/master' into 2.3 2017-05-09 13:55:31 +02:00
Jeremy Benoist
1b1647175d
Add some tests 2017-05-09 12:12:23 +02:00
adev
b60a666df2 Fix API pagination is broken if perPage is custom value
Fix #2720
2017-05-08 16:27:16 +02:00
adev
08f29ae7b6 Create a new entry via API even when its content can't be retrieved
Fix #2988
2017-05-08 14:57:25 +02:00
Jérémy Benoist
43f81a62e9 Merge pull request #3088 from wallabag/execute-migrations-after-install
Added migrations execution after fresh install
2017-05-05 17:42:42 +02:00
Jérémy Benoist
ab742ee9c6 Merge pull request #2920 from wallabag/cleanduplicatescommand
Clean Duplicates Command
2017-05-05 17:42:18 +02:00
Nicolas Lœuillet
4eeb29ff78
Fixed test 2017-05-05 15:20:58 +02:00
Nicolas Lœuillet
7d2d1d6859
Added migrations execution after fresh install 2017-05-05 15:14:58 +02:00
Nicolas Lœuillet
89f108b45a
Fixed @j0k3r review 2017-05-05 14:54:03 +02:00
Nicolas Lœuillet
d09fe4d233
Added test for deduplication 2017-05-05 14:33:36 +02:00
Nicolas Lœuillet
6980304968 Merge pull request #3053 from wallabag/api-bulk-add
Added API endpoint to handle a list of URL
2017-05-05 13:56:34 +02:00
Jeremy Benoist
72db15ca5d
Little refacto and send 400 on reaching urls limit 2017-05-05 12:05:50 +02:00
Bertrand Dunogier
662db41bae Changed parsing of login_extra_fields in guzzle auth 2017-05-04 21:45:06 +02:00
Nicolas Lœuillet
cebed9c01f Merge pull request #3080 from wallabag/use-username-to-import
Use username to import
2017-05-04 15:19:16 +02:00
Thomas Citharel
d1e5059ea0 Use username to import
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

add docs

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

use username as default

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

rename user to username

typo

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-04 14:41:42 +02:00
Thomas Citharel
6b76ae3d1f Merge pull request #3060 from wallabag/search-users
Search & paginate users
2017-05-04 14:35:14 +02:00
Nicolas Lœuillet
9c09c253fe Merge pull request #3047 from wallabag/add-notmatches-operator
Added notmatches operator for tagging rule
2017-05-03 11:53:01 +02:00
Nicolas Lœuillet
a162b1a99b
Changed export test 2017-05-03 10:53:10 +02:00
Thomas Citharel
d01dc5a81e rename index to list
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-02 15:28:39 +02:00
Thomas Citharel
a2daa32d0c Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-02 15:28:39 +02:00
Thomas Citharel
3d57d625f8 Add basic tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-05-01 13:04:31 +02:00
Nicolas Lœuillet
efd351c98f Added limit 2017-05-01 09:26:12 +02:00
Jeremy Benoist
7fa844a349 Fix tests (for real this time) 2017-05-01 09:26:12 +02:00
Jeremy Benoist
719ba257d3 Fix tests 2017-05-01 09:26:12 +02:00
Nicolas Lœuillet
a7abcc7b7a Splitted the endpoint in two 2017-05-01 09:26:12 +02:00
Nicolas Lœuillet
1eca7831a6 Added API endpoint to handle a list of URL
By passing an array, you can add / delete URL in mass (bulk request)
2017-05-01 09:25:34 +02:00
Jeremy Benoist
dcbebc17aa
Fix tests 2017-04-29 12:58:39 +02:00
Nicolas Lœuillet
80299ed282
Added endpoint to handle URL list to add/delete tags 2017-04-24 12:24:17 +02:00
Nicolas Lœuillet
d1fc590211
Added API endpoint to handle a list of URL and to add/delete tags 2017-04-24 11:12:41 +02:00
Nicolas Lœuillet
fdd725f58c Added notmatches operator for tagging rule 2017-04-20 15:17:02 +02:00
Nicolas Lœuillet
e9c80c99bd
Added test for multiple authors 2017-04-10 17:58:27 +02:00
Nicolas Lœuillet
7b0b3622ab Added author of article 2017-04-09 15:24:51 +02:00
Nicolas Lœuillet
5e9009ce86 Added publication date 2017-04-05 22:22:52 +02:00
Nicolas Lœuillet
73f28afb19
Renamed countAllEntriesByUsername method 2017-03-31 10:46:47 +02:00
Thomas Citharel
6da1aebc94 Allow to remove all archived entries
Since we still support fucking SQLite, we need to retrieve all tags & annotations for archived entries before deleting them.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-03-31 10:46:05 +02:00
Jérémy Benoist
fa884b30ba Merge pull request #3021 from wallabag/rename-method
Rename method
2017-03-30 16:40:18 +02:00
Thomas Citharel
273b6f0658 Rename method from *username to *user
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-03-30 16:07:48 +02:00
Jeremy Benoist
7d1d961267
Merge remote-tracking branch 'origin/master' into 2.3 2017-03-28 14:07:42 +02:00
Thomas Citharel
ca9a83ee51 return id of article instead of true if entry exists 2017-02-24 11:31:31 +01:00
Nicolas Lœuillet
b45b6b6707
Import: we now skip messages when user is null 2017-02-20 09:16:02 +01:00
Kevin Decherf
eac09b48b0 Search by term: extend to entries url
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-02-16 21:47:52 +01:00
Thomas Citharel
3b0380f049 Fix phpcs and tests 2017-01-24 20:42:02 +01:00
Thomas Citharel
a607b7a9c0 add filepath test
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-01-22 13:19:46 +01:00
Thomas Citharel
8303b037fb add cli export
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-01-22 12:51:14 +01:00
Jeremy Benoist
72e634b06c
Fix registration.submit test 2017-01-10 18:50:45 +01:00
Jeremy Benoist
3d71d40349
Avoid false preview image
If the website doesn't provide an og_image, the value will be false and so it'll be saved like that in the database.
We prefer to leave it as null instead of false.
2017-01-10 17:42:36 +01:00
Nicolas Lœuillet
8527238846 Merge pull request #2702 from wallabag/add-index-uuid
Added index on entry.uuid
2016-12-29 10:54:07 +01:00
Nicolas Lœuillet
7239082a5e
Renamed uuid to uid 2016-12-29 10:09:44 +01:00
Nicolas Lœuillet
c8de7ab94c
Fixed export by tags with a tag which contains space 2016-12-27 21:26:53 +01:00
Nicolas Lœuillet
89cd670abf Changed uuid type in database 2016-12-25 10:51:25 +01:00
Nicolas Lœuillet
8137515171 Fixed index on entry.uuid and changed uuid field type 2016-12-25 10:51:25 +01:00
Jeremy Benoist
24879db1f7
Add default value for list_mode 2016-12-12 17:41:03 +01:00
Nicolas Lœuillet
558d5199b9 Merge pull request #2680 from wallabag/taggingrule-255
Limit rule to 255
2016-12-06 21:00:24 +01:00
Jerome Charaoui
a2c1b94e82 Revert switch to KernelTestCase for ContentProxyTest
Define the error string manually inside the test class instead of
fetching it from app config.
2016-12-03 09:50:36 -05:00
Jeremy Benoist
5aa0294cca
Limit rule to 255
To avoid database error
2016-12-03 11:10:39 +01:00
Jerome Charaoui
cd82ace70a Add missing CoreKernelTestCase class 2016-12-03 00:26:57 -05:00
Jerome Charaoui
dba1e0b188 Fix WallabagV1Controller test
Account for URL redirection in refreshed entry.
2016-12-03 00:14:06 -05:00
Jerome Charaoui
fc2b7bda53 Fix ContentProxy tests 2016-12-03 00:14:06 -05:00
Nicolas Lœuillet
56a7ce17f3 Hide article text on mobile with list mode 2016-11-28 14:27:58 +01:00
Nicolas Lœuillet
8f3ff39ca3 Added test for list view 2016-11-28 14:27:58 +01:00
Nicolas Lœuillet
34ea7be622 Merge pull request #2663 from wallabag/remove-fosuser-attributes
Removed FOSUser attributes removed in alpha4
2016-11-28 14:27:31 +01:00
Nicolas Lœuillet
cda0662311
Removed FOSUser attributes removed in alpha4
See https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Upgrade.md\#200-alpha3-to-200-alpha4
2016-11-28 12:44:17 +01:00
Nicolas Lœuillet
6bb0866cf5 Merge pull request #2659 from akovalyov/bugfix/non-latin-characters-in-reading-time-calculation
Fix incorrect reading time calculation for entries in non-latin languages.
2016-11-28 09:23:04 +01:00
Andrew Kovalyov
5b6888b13f Fix incorrect reading time calculation for entries in languages with
non-latin chars subset.
2016-11-28 01:15:06 +02:00
Kevin Decherf
00fc2b44f4 Enforce lowercase on domain name filter
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2016-11-26 19:52:50 +01:00
Jeremy Benoist
5066c3e066
Re-use FOSUser master branch 2016-11-22 21:25:05 +01:00
Bertrand Dunogier
7aab0ecf2f Added authentication for restricted access articles
Fix #438. Thank you so much @bdunogier
2016-11-22 14:01:46 +01:00
Jeremy Benoist
5cd0857e3c
Return 304 when content isn't reloaded using the API
Previously it was a 400 but this is more related to a real error.
Using the API user should only know the content got reloaded or not.
If reloaded: 200 otherwise: 304.
2016-11-22 10:45:19 +01:00
Jeremy Benoist
56da73969a
Return an explicit error if reload fail 2016-11-20 16:25:13 +01:00
Jeremy Benoist
70584b42aa
Fixing tests 2016-11-20 15:15:13 +01:00
Jeremy Benoist
0a6f4568b5
Add ability to reload entry from API 2016-11-20 13:08:41 +01:00
Jeremy Benoist
edd2472faa
Fix tests 2016-11-20 09:39:26 +01:00
Jeremy Benoist
8670250a26
Add RSS pagination
Following https://tools.ietf.org/html/rfc5005#page-4
2016-11-20 09:39:26 +01:00
Nicolas Lœuillet
995c204428 Added shortcut 2016-11-19 20:05:16 +01:00
Nicolas Lœuillet
32f455c131 Added tests 2016-11-19 20:05:16 +01:00
Jeremy Benoist
68003139e1
Merge remote-tracking branch 'origin/master' into 2.2
# Conflicts:
#	.editorconfig
#	docs/de/index.rst
#	docs/de/user/import.rst
#	docs/en/index.rst
#	docs/en/user/configuration.rst
#	docs/en/user/import.rst
#	docs/fr/index.rst
#	docs/fr/user/import.rst
#	src/Wallabag/CoreBundle/Command/InstallCommand.php
#	src/Wallabag/CoreBundle/Resources/translations/messages.da.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.de.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.en.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.es.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.it.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml
#	src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml
#	src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig
#	web/bundles/wallabagcore/themes/baggy/css/style.min.css
#	web/bundles/wallabagcore/themes/baggy/js/baggy.min.js
#	web/bundles/wallabagcore/themes/material/css/style.min.css
#	web/bundles/wallabagcore/themes/material/js/material.min.js
2016-11-19 15:30:49 +01:00
Nicolas Lœuillet
d215273c65
Check if status code is OK 2016-11-18 23:05:02 +01:00
Nicolas Lœuillet
10b3509757
Added http_status in Entry entity 2016-11-18 15:09:21 +01:00
Jeremy Benoist
5cc367b83a
Fix tests 2016-11-17 19:58:10 +01:00
Jeremy Benoist
d8a35aba49
Put log in the most common failure tests
So we’ll quickly be able to see what kind of test is failing when viewing Travis
2016-11-17 19:30:50 +01:00
Nicolas Lœuillet
540a9bc4a2 Added help on config screen 2016-11-17 09:22:39 +01:00
Jeremy Benoist
e6b133c60c
CS 2016-11-16 23:10:01 +01:00
Jeremy Benoist
00bf45b6f2
Update unit test for Redirect 2016-11-16 23:07:34 +01:00
Nicolas Lœuillet
54fd55fda1
Tried to fix tests 2016-11-16 23:07:34 +01:00
Nicolas Lœuillet
65cd8a4a9a
Added tests 2016-11-16 23:07:34 +01:00
Nicolas Lœuillet
a42f38d9fb
Added a configuration to define the redirection after archiving an entry
Fix #496
2016-11-16 23:07:34 +01:00
Jeremy Benoist
94060509b8
Use more explicit check 2016-11-07 08:36:52 +01:00
Jeremy Benoist
e92fbdc852
Fix tests 2016-11-06 09:58:07 +01:00
Jeremy Benoist
9ab024b4f5
Add Pinboard import 2016-11-04 22:44:31 +01:00
Jeremy Benoist
5a619812ca
Merge remote-tracking branch 'origin/master' into 2.2 2016-11-03 16:41:29 +01:00
Jeremy Benoist
7816eb622d
Add entry.saved event to import & rest 2016-11-02 07:10:23 +01:00
Jeremy Benoist
e0597476d1
Use custom event instead of Doctrine ones
This give us ability to use Entry ID to determine where to store images and it’s then more easy to remove them when we remove the entry.
2016-11-01 14:49:02 +01:00
Jeremy Benoist
d1495dd0a4
Ability to enable/disable downloading images
This will speed up the test suite because it won’t download everything when we add new entry…
Add a custom test with downloading image enabled
2016-10-30 21:30:45 +01:00
Jeremy Benoist
e1632cea0e
Fix tests 2016-10-30 20:43:37 +01:00
Jeremy Benoist
41ada277f0
Add instance url to the downloaded images 2016-10-30 19:50:00 +01:00
Jeremy Benoist
48656e0eaa
Fixing tests 2016-10-30 11:27:09 +01:00
Jeremy Benoist
7f55941856
Use doctrine event to download images 2016-10-30 10:48:29 +01:00
Nicolas Lœuillet
794ac861cb
Added test for export by filtering with tag 2016-10-29 14:03:55 +02:00
Nicolas Lœuillet
900c844861
Exploded WallabagRestController into many controllers
Fix #2503
2016-10-28 14:46:30 +02:00
Nicolas Lœuillet
f24ea59ea4
Fixed migration and added tests 2016-10-28 10:55:39 +02:00
Jeremy Benoist
64a8781e45
Merge remote-tracking branch 'origin/master' into 2.2 2016-10-24 12:03:17 +02:00
Jeremy Benoist
9313ea9d44 Merge pull request #2401 from wallabag/reset-account
Reset account
2016-10-24 11:57:51 +02:00
Jeremy Benoist
206bade58a
Add ability to reset some datas
- annotations
- tags
- entries
2016-10-22 13:13:06 +02:00
Jeremy Benoist
aa4741091f
Add test on /api/annotations
Fix controller forward in WallabagRestController.
Update PHPDoc so it is sorted the same way as others one
Duplicate all annotations test to use both api & normal way
Also, make annotation tests independent to each other
2016-10-22 12:09:20 +02:00
Nicolas Lœuillet
e5edb6e127
PHP CS 2016-10-22 09:06:07 +02:00
Thomas Citharel
0c271b9eb0
fix cs and phpdoc 2016-10-22 09:06:07 +02:00
Nicolas Lœuillet
f99ddbc6f8 Merge pull request #2481 from wallabag/some-fixes
Some fixes
2016-10-21 15:15:41 +02:00
Jeremy Benoist
f6798f69c3
This test doesn’t require an internet connection 2016-10-20 23:26:16 +02:00
Jeremy Benoist
9095497191
Fix test 2016-10-20 23:03:37 +02:00
Jeremy Benoist
2297d60f10
If reload content failed, don’t update it
In case user wants a fresh version of the current one and the website isn’t available, don’t erase it with a boring message saying wallabag wasn’t able to refresh the content.
2016-10-20 22:49:46 +02:00
Jeremy Benoist
b1b561da51 Merge pull request #2372 from pmartin/api-get-entry-as-epub
API: ability to export entry in all available format (epub, pdf, etc...)
2016-10-12 14:06:33 +02:00
Jeremy Benoist
e4cf672ccf
Merge remote-tracking branch 'origin/master' into 2.2 2016-10-11 21:01:30 +02:00
Jeremy Benoist
a0a4ce3135
Lock deps for FOSUser
We’ll wait until the final release will be out and other related project will be update to support it.
Meanwhile we can safely lock to a previous version.
2016-10-11 18:59:08 +02:00
Jeremy Benoist
e40bed3607
Avoid error when Redis isn't here in tests 2016-10-10 16:34:57 +02:00
Jeremy Benoist
876d77a67d
Better display and description
Confirmation message isn’t required since it is written in the delete description
2016-10-08 20:25:42 +02:00
Jeremy Benoist
c3396c65ef
Fix some tests 2016-10-08 14:07:13 +02:00
Nicolas Lœuillet
93a95c09bf Merge pull request #2351 from wallabag/fix-api-client-deletion
Changed relation between API client and refresh token
2016-10-08 13:31:54 +02:00
Nicolas Lœuillet
4ad6f5878a Merge pull request #2393 from wallabag/api-urls-exist
Ability to check multiple urls in API
2016-10-08 13:31:31 +02:00
Nicolas Lœuillet
b840268711
Added a test to check if entries are also deleted 2016-10-08 13:27:18 +02:00
Nicolas Lœuillet
71254701b7
Changed tests 2016-10-08 13:27:18 +02:00
Nicolas Lœuillet
821bb87685
Added tests 2016-10-08 13:27:18 +02:00
Jeremy Benoist
3f3a60879e
Add entry export in API
Export isn't available for json & xml because user can use the default
entry endpoint instead.
2016-10-08 12:59:19 +02:00
Jeremy Benoist
ee32248f43
Ensure access_token are removed
When we remove the client, we should ensure that access_token are also removed.

To ensure that, I created a test that generated an access_token. So when we remove the client, this association should be cascaded and shouldn’t generate an error.

Also I moved some Api related stuff to the ApiBundle (like the developer controler and ClientType form)
2016-10-08 00:05:41 +02:00
Jeremy Benoist
ac8cf632bb
Ensure orphan tag are remove in API
When the association between a tag and an entry is removed, if the tag doesn’t have other entries, we can remove it.

Also add more tests for that part and ensure TagControllerTest is isolated from the rest of the test suite (finally!)
2016-10-07 23:31:53 +02:00
Jeremy Benoist
f0abc22d09
Ability to check multiple urls in API 2016-10-07 20:37:01 +02:00
Nicolas Lœuillet
20bf78b935 Merge pull request #2389 from wallabag/add-info-publich-articles
Added default picture if preview picture is null
2016-10-07 16:35:32 +02:00
Nicolas Lœuillet
d5c45d5288
Added default picture if preview picture is null 2016-10-07 15:21:31 +02:00
Nicolas Lœuillet
5e7786f3c4
Fixed two-factor checkbox display in user admin panel
Fix #2380
2016-10-07 14:56:26 +02:00
Nicolas Lœuillet
c8d2dcdafe Merge pull request #2383 from wallabag/add-info-publich-articles
Added OpenGraph support for public articles
2016-10-07 14:30:46 +02:00
Nicolas Lœuillet
21d82c3c5d
Added test for OpenGraph 2016-10-07 14:06:12 +02:00
Jeremy Benoist
74e1f7433a
Fix tag test 2016-10-07 07:43:48 +02:00
Jeremy Benoist
b0458874c8
Fix relations export for Entry
Tags & Annotations weren’t really well exported.
This is now fixed (+ tests)
2016-10-07 07:43:19 +02:00
Jeremy Benoist
0b174d69d7
Fix typo & add test 2016-10-05 19:30:56 +02:00
Jeremy Benoist
755ff9e835
Create config even if user is disabled
When a user register itself AND the wallabag instance is configured to send a confirmation email, the user is disabled when the listener (which create the config) receive the event.
There were a check (don't know why) if the user is enabled we create the config. But the user is disabled when confirmation email is actived.
2016-10-04 10:42:46 +02:00
Jeremy Benoist
c3f8b428dd
Fix parameters in API _links
We forgot to pass them to the factory
2016-10-02 15:41:08 +02:00
Jeremy Benoist
1dc3bee6b9 Merge pull request #2327 from wallabag/user-management
Add users management UI
2016-10-02 15:00:02 +02:00
Jeremy Benoist
ccc7faec09
Disabled delete button for the logged user
To avoid some bad things to happen…
2016-10-02 13:29:57 +02:00
Nicolas Lœuillet
18b8dc0e99 Merge pull request #2325 from wallabag/api-entries-exists
Add an exists endpoint in API
2016-10-02 13:17:23 +02:00
Nicolas Lœuillet
92395680b6 Merge pull request #2328 from wallabag/avoid-duplicate-url
Avoid duplicate url with accents
2016-10-02 13:14:16 +02:00
Jeremy Benoist
eb4142e0af
Remove NewUser test from Config 2016-10-02 11:09:28 +02:00
Jeremy Benoist
152fcccd44
Add users management UI
- remove the “add a user” from the config page
- add a CRUD on user
- fix some missing translations (+ bad indentation)
2016-10-02 11:08:53 +02:00
Jeremy Benoist
52c1fc7449 Merge pull request #2326 from wallabag/update-quickstart
Changed quickstart layout
2016-10-02 11:06:03 +02:00
Jeremy Benoist
6e5e27ab07 Merge pull request #2324 from wallabag/edit-tagging-rule
Add ability to edit a tagging rule
2016-10-02 11:05:10 +02:00
Jeremy Benoist
bfb3ae01da Merge pull request #2323 from wallabag/footer-stats
Add simple stats in footer
2016-10-02 11:04:49 +02:00
Jeremy Benoist
24ad330be6
Update test 2016-10-02 01:47:10 +02:00
Jeremy Benoist
d6d3fb6e4c
Remove additional entry
After the test is done, cleanup what we’ve done
2016-10-02 01:42:21 +02:00
Jeremy Benoist
19ca0b2f35
Avoid duplicate url with accents 2016-10-01 18:00:11 +02:00
Jeremy Benoist
55551e332c
Add test when url doesn’t exist 2016-10-01 17:26:36 +02:00
Jeremy Benoist
6273fefd5d
Add an exists endpoint in API
It should allow third party to check if an url was already saved by a user
2016-10-01 17:15:28 +02:00
Jeremy Benoist
bf3dc999e7
Add ability to edit a tagging rule 2016-10-01 16:52:05 +02:00
Nicolas Lœuillet
c4bf7af96f Merge pull request #2322 from wallabag/v2-404
Customize errors templates
2016-10-01 16:35:48 +02:00
Jeremy Benoist
1264029cd4
Add simple stats in footer 2016-10-01 16:03:50 +02:00
Jeremy Benoist
40e219622a
Customize errors templates
All error goes to the same template which only display the error message and the status code.
2016-10-01 14:58:48 +02:00
Jeremy Benoist
ca17abce2d
Create user config in one place
Using a listener, user config is now created when a user:

- is created from the command line
- register (with or without email confirmation)
- is created from the config panel
2016-09-30 21:01:36 +02:00
Nicolas Lœuillet
084fb0d303 Some fixes about upgrade from 2.0.x -> 2.1.0 2016-09-28 10:04:36 +02:00
Jeremy Benoist
c7ea9b41f3 Add controller test for Instapaper 2016-09-27 20:27:08 +02:00
Jeremy Benoist
ff1a5362f7 Add Instapaper import
Also update ImportController with latest import (chrome, firefox & instapaper).
2016-09-27 20:27:08 +02:00
Jeremy Benoist
d6de23a100 Merge pull request #2192 from wallabag/import-browser-bookmarks
Import Firefox & Chrome bookmarks into wallabag
2016-09-26 14:47:02 +02:00
Nicolas Lœuillet
fefef9d41b
Added tags for Firefox import 2016-09-26 13:40:10 +02:00
Jeremy Benoist
12d93e6896
Update Firefox file
With real data, the previous looks more than a Chrome converted file.
Also, fix date conversion (hope so).
2016-09-25 22:24:07 +02:00
Jeremy Benoist
27acc6ddb8
Fix bad date format in Browser import 2016-09-25 15:32:02 +02:00
Jeremy Benoist
f0fd82d039
Fix bad parameter for tests 2016-09-25 14:21:12 +02:00
Thomas Citharel
64b1229b2d
fix tests 2016-09-25 12:29:19 +02:00
Thomas Citharel
59201088b4
bring chrome and firefox as separate imports 2016-09-25 12:29:18 +02:00
Nicolas Lœuillet
f7c55b3812
Added tests for Chrome bookmarks import 2016-09-25 12:29:18 +02:00
Nicolas Lœuillet
06d13ddfbc
Indentation and renamed fixtures file 2016-09-25 12:28:55 +02:00
Nicolas Lœuillet
efe659ab84
Add Chrome path for Mac OS 2016-09-25 12:28:55 +02:00
Thomas Citharel
ae669126e7
Import Firefox & Chrome bookmarks into wallabag 2016-09-25 12:28:54 +02:00
Jeremy Benoist
401135852c
Use scheduled entity insertions to avoid tag duplicate
Using `getScheduledEntityInsertions()` we can retrieve not yet flushed but already persisted entities and then avoid tags duplication on import.
2016-09-25 12:03:49 +02:00
Jeremy Benoist
0e0102b6fc
Avoid failing test for user who didn’t install Redis 2016-09-24 19:57:59 +02:00
Jeremy Benoist
d7b4b2c72c
Merge remote-tracking branch 'origin/master' into 2.1 2016-09-19 11:23:07 +02:00
Jeremy Benoist
59b97fae99
Avoid losing entry when fetching fail
Instead of just say “Failed to save entry” we’ll save the entry at all cost and try to fetch content. If fetching content failed, the entry will still be saved at least, but without content.
2016-09-17 07:40:56 +02:00
Jeremy Benoist
ebe0787e09
Moved Pocket token to user config 2016-09-16 22:22:25 +02:00
Jeremy Benoist
ac87e0db2a
AMPQ -> AMQP 2016-09-14 10:18:02 +02:00
Jeremy Benoist
47d7c682a4
Add more “real” tests 2016-09-13 22:27:27 +02:00
Jeremy Benoist
c80cc01afa
Change flash message for queued articles 2016-09-13 21:09:05 +02:00
Jeremy Benoist
886d479734
Fix tests 2016-09-11 23:57:27 +02:00
Jeremy Benoist
ebf5e5087d
Add tests on ImportCommand 2016-09-11 22:15:31 +02:00
Jeremy Benoist
015c7a8359
Add more tests
And ability to define how many messages can be hanle by the redis worker before stopping (usefull for tests)
2016-09-11 22:15:31 +02:00
Jeremy Benoist
7230e4c39f
Enable Redis on Travis
Add generated files from `composer up`
Add more articles for Readability tests
2016-09-11 21:58:57 +02:00
Jeremy Benoist
b3437d58ae
Enable Redis async import
- using javibravo/simpleue
- internal config value are now `import_with_redis` & `import_with_rabbit` which are more clear
- if both option are enable rabbit will be choosen
- services imports related to async are now splitted into 2 files: `redis.yml` & `rabbit.yml`
-
2016-09-11 21:58:56 +02:00
Jeremy Benoist
7f7531171f
Retrieve created date from Pocket 2016-09-11 21:58:56 +02:00
Jeremy Benoist
13470c3596
Add test for RabbitMQ
Also update Symfony deps
2016-09-11 21:58:56 +02:00
Jeremy Benoist
6d65c0a8b0
Add ability to define created_at for all import
At the moment only Readability & wallabag v2 import allow created_at import.
Pocket removed `time_added` field from their API v2 to v3...
And wallabag v1 doesn't export that value.
2016-09-11 21:58:55 +02:00
Jeremy Benoist
02f6489572
Retrieve all items from Pocket
5000 by 5000.
Also, retrieve newest item first.
2016-09-11 21:58:31 +02:00
Jeremy Benoist
ef75e1220e
Send every imported item to the queue
Instead of queing real Entry to process, we queue all the item to import from Pocket in a raw format.
Then, the worker retrieve that information, find / create the entry and save it.
2016-09-11 21:57:46 +02:00
Nicolas Lœuillet
40d2a29443
Replace RabbitMQ injection with CraueConfiguration 2016-09-11 21:57:09 +02:00
Nicolas Lœuillet
56c778b415
1st draft for rabbitMQ 2016-09-11 21:57:09 +02:00
Jeremy Benoist
9401696fe4
Export dates from entries 2016-09-08 16:49:21 +02:00
Jeremy Benoist
f62c3faf88
Update test
If the database isn't found when checking for the connection it means, we can connect to the server.
The InstallCommand will create the database later.

Also, when checking for the SQLite connection, Doctrine creates the file (so the database). That's why the test is skipped for SQLite.
2016-09-03 10:34:27 +02:00
Jeremy Benoist
a1a1077059
Add tests on ReadabilityImport 2016-09-01 13:39:41 +02:00
Jeremy Benoist
ca15aaac18
Fix import count tests 2016-09-01 09:36:11 +02:00
Jeremy Benoist
03e3753f6b
Add Readability import
Based on the JSON export instead of the API (which will be shutting down by the September 30, 2016)
2016-09-01 08:00:30 +02:00
Nicolas Lœuillet
d5d1612153
Add tests for untagged entries 2016-08-28 14:44:00 +02:00