Commit graph

343 commits

Author SHA1 Message Date
Jeremy Benoist
0447a75b06
Use only one method to randomize
Instead of one per type, one for all is ok.
2019-01-19 21:09:33 +01:00
Jeremy Benoist
1e0d8ad7b7
Enable PHPStan
- Fix error for level 0 & 1 (level 7 has 699 errors...)
- Add `updated_at` to site_credential (so the `timestamps()` method applies correctly)
2019-01-18 15:25:50 +01:00
Jeremy Benoist
5419a8368e
Merge remote-tracking branch 'origin/master' into 2.4 2019-01-15 09:41:18 +01:00
Kevin Decherf
dac93644e8 EntriesExport: sanitize filename and fix tests
Filename will now only use a-zA-Z0-9-' and space.

Fixes remaining filename issue on #3811

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-01-08 15:13:35 +01:00
lizyn
7f8630b91c Counting two characters together as a word in CJK 2019-01-06 01:21:13 +08:00
Jeremy Benoist
35983eb9bb
Improve reading time tests 2019-01-04 11:23:33 +01:00
lizyn
5becf260fa fix incorrect reading time calculation for entries with CJK characters 2018-12-25 15:31:44 +08:00
Jeremy Benoist
877787e5fe
Fix utf8mb4 on vendor tables
When creating the schema for test these tables use default length for
string: 255. Which fail when using utf8mb4.

> Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

Also move the `setKeepStaticConnections` in before and after class to
avoid:

> SAVEPOINT DOCTRINE2_SAVEPOINT_2 does not exist

See https://github.com/dmaicher/doctrine-test-bundle#troubleshooting
2018-11-28 22:04:55 +01:00
Jeremy Benoist
9a8a1bdfdb
Use our own fork for CraueConfigBundle
Mostly to fix utf8mb4 issue
2018-11-28 22:04:55 +01:00
Jeremy Benoist
b878be4cc9
Merge remote-tracking branch 'origin/master' into 2.4
# Conflicts:
#	web/wallassets/baggy.js
#	web/wallassets/manifest.json
#	web/wallassets/material.css
#	web/wallassets/material.js
2018-11-25 09:58:18 +01:00
Jeremy Benoist
dc90eab32b
Prepare 2.3.4 release 2018-11-23 08:34:13 +01:00
Kevin Decherf
6059967951 updateOriginUrl: remove 'query string' case from ignore list
Two urls with a different query string may refer to two different pages
so keep them both.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-24 22:27:27 +02:00
Kevin Decherf
b49c87acf1 ignoreOriginUrl: add initial support of ignore lists
Add the ability to specify hosts and patterns lists to ignore the given
entry url and replace it with the fetched content url without touching
to origin_url.

This initial support should be reworked in the following months to move
the hardcoded ignore lists in the database.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-22 23:42:09 +02:00
Kevin Decherf
fc040c749d updateOriginUrl: add behavior when diff is fragment and query
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-22 23:08:58 +02:00
Kevin Decherf
e07fadea76 Refactor updateOriginUrl to include new behaviors behaviors
- Leave origin_url unchanged if difference is an ending slash
- Leave origin_url unchanged if difference is scheme
- Ignore (noop) if difference is query string or fragment

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-22 23:01:16 +02:00
Kevin Decherf
781864b954 ContentProxy: swap entry url to origin_url and set new url according to graby content
Closes #3529

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-21 16:15:31 +02:00
Jérémy Benoist
e673b54f70
Merge pull request #3574 from shulard/feature/rename-tags
Allow to rename tags from the web interface.
2018-10-15 08:32:59 +00:00
Jeremy Benoist
4d4147b228
Ensure language is valid
- Do not override locale if user has choosen a locale from the login screen.
- Add some tests about locale url
2018-10-13 09:39:00 +02:00
Jeremy Benoist
115de64e5b
Jump to Symfony 3.4
Thanks to the BC compatibility, almost nothing have to be changed.
All changes are related to new bundle version of:
- SensioFrameworkExtraBundle
- DoctrineFixturesBundle
2018-10-04 14:11:57 +02:00
Stéphane HULARD
03b2058dbe
Add tests about the tag renaming process. 2018-09-25 10:18:36 +02:00
Tobi823
28cc645b93 Run php-cs-fixer for fixing coding standard issues (on ContentProxyTest) 2018-09-23 23:42:05 +02:00
Tobi823
d64139d812 Make helper methods strToHex and hexToStr in ContentProxyTest.php private
to prevent misusage (from outside this class)
2018-09-21 13:31:28 +02:00
Tobi823
c01d953292 Add tests for logic
Try to translate the title of a PDF from UTF-8 (then UTF-16BE, then WINDOWS-1252) to UTF-8
2018-09-21 13:15:00 +02:00
Sébastien Viande
7975395d10
Entry: add archived_at property and updateArchived method 2018-09-21 10:33:33 +02:00
Jeremy Benoist
84b3bdaac0
Liberation goes https 2018-09-21 09:07:40 +02:00
Jeremy Benoist
4408ebd40a
Fix tests 2018-09-07 15:18:00 +02:00
Kevin Decherf
2a1ceb67b4 php-cs-fixer
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-09-05 14:25:32 +02:00
Jeremy Benoist
72efc80fdc
Removing failing test from Travis 2018-08-19 16:38:48 +02:00
Simounet
e6f12c0734 More robust srcset image attribute handling
Linked to HTMLawed PR https://github.com/kesar/HTMLawed/pull/17
2018-07-12 14:29:30 +02:00
Simounet
3fbbe0d9f1 Fix image downloading on null image path 2018-07-05 11:40:51 +02:00
Jeremy Benoist
778543311f
Fix tests 2018-06-06 17:34:20 +02:00
Simounet
c15bb5ad72 Fix srcset attribute on images downloaded 2018-06-01 13:49:16 +02:00
Floran Brutel
08d6bedcaa
Allow login by email 2018-04-01 20:57:10 +02:00
Floran Brutel
80d4260a8e
Fix CS in UtilsTest.php 2018-03-31 12:55:27 +02:00
Floran Brutel
739a4024fa
Replace zataz url 2018-03-30 23:09:03 +02:00
Floran Brutel
3be96dcb17
Use https instead of http for bild.de to fix tests 2018-03-29 22:58:40 +02:00
Nicolas Lœuillet
5614df19cf Fixed tests 2018-01-12 11:19:11 +01:00
Kevin Decherf
b8568662bd php-cs
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-31 13:19:26 +01:00
Kevin Decherf
e0a862b626 Add test to prevent regression for #3534
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-31 00:56:40 +01:00
Jeremy Benoist
5661e8d42a
Fix countable in tests 2017-12-18 13:29:34 +01:00
Jeremy Benoist
4b6942d2d8
Add missing TestCase namespace 2017-12-18 13:29:33 +01:00
Jeremy Benoist
26e2f07419
Fix typo 2017-12-18 13:29:33 +01:00
Jeremy Benoist
bd91bd5c32
Use namespaced PHPUnit classes 2017-12-18 13:29:33 +01:00
Kevin Decherf
300f293cb1 Add test on EntryControllerTest for #3442
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-13 22:44:31 +01:00
Christophe VERGNE
a40a8038d3
Fix All RSS not accessible if not logged in + Tests 2017-12-11 16:04:06 +01:00
Jérémy Benoist
ceff312db8
Merge pull request #3401 from aaa2000/migration-initial
Add an initial doctrine migration
2017-11-25 12:28:41 +01:00
Jérémy Benoist
f818f64145
Merge pull request #3431 from wallabag/disable-site-credentials
Disable controller access if feature disabled
2017-11-22 15:11:25 +01:00
Jeremy Benoist
ef2b4041fb
Disable controller access if feature disabled
If `restricted_access` is disabled, accessing `/site-credentials/` must be disabled.
2017-11-22 10:00:45 +01:00
adev
2680b0bc8c Fix installation command 2017-11-21 21:35:17 +01:00
Nicolas Lœuillet
95b7d92ea5
Merge pull request #3425 from wallabag/add-setting-for-headers
Added internal setting to enable/disable headers storage
2017-11-21 13:26:24 +01:00
Jeremy Benoist
709e21a3f4
Define storeArticleHeaders false by default
Fix tests which must use `$storeArticleHeaders`.
Fix CS
2017-11-21 10:37:36 +01:00
Jeremy Benoist
64a5a6cfc5
CS 2017-11-21 10:30:35 +01:00
Nicolas Lœuillet
8a21985474 Added internal setting to enable/disable headers storage 2017-11-20 18:47:48 +01:00
Kevin Decherf
eae8138b33 Fix phpcs
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:26:13 +01:00
Kevin Decherf
97444566db Update EntryControllerTest to handle origin_url
Set an origin_url in testEditUpdate
Test origin_url deletion in testEditRemoveOriginUrl

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:02:11 +01:00
Kevin Decherf
e50e45d6fa Twig: add removeSchemeAndWww filter
This twig filter removes scheme (only http and https are supported) and
pass the result to removeWww filter to also remove 'www.' at the
beginning of an url.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:02:11 +01:00
adev
cc79712738 Fix phpcs 2017-11-11 23:55:13 +01:00
adev
d81bf605af Fix tests 2017-11-11 23:37:57 +01:00
Jeremy Benoist
f645d371ce
Fix MondeDiplo https url 2017-10-10 10:20:57 +02:00
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
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
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
c6c45673af
Put the final URL in data test 2017-07-24 11:13:53 +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
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
41d45c6122 Fix empty language and preview pics 2017-06-12 16:46:33 +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
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
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
eb570e49c8
CS 2017-06-07 23:31:14 +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
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
Thomas Citharel
d143fa243d Add show user command
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-02 16:53:03 +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
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
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
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
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
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
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
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
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
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
Jeremy Benoist
1b1647175d
Add some tests 2017-05-09 12:12:23 +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
Bertrand Dunogier
662db41bae Changed parsing of login_extra_fields in guzzle auth 2017-05-04 21:45:06 +02:00
Nicolas Lœuillet
a162b1a99b
Changed export test 2017-05-03 10:53:10 +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
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
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
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