Alejandro Celaya
|
07b12fac3c
|
Refactored short URL creation so that the long URL is part of the ShortUrlMeta
|
2021-01-30 14:18:44 +01:00 |
|
Alejandro Celaya
|
0cbd965010
|
Fixed merge conflicts
|
2021-01-24 14:21:21 +01:00 |
|
Alejandro Celaya
|
f585cfe02e
|
Fixed CrossDomainMiddleware not inferring proper allowed methods
|
2021-01-24 13:49:57 +01:00 |
|
Alejandro Celaya
|
927fb51313
|
Removed Action sufix from API tests
|
2021-01-24 09:25:36 +01:00 |
|
Alejandro Celaya
|
76aa6502db
|
Changed value returned in Access-Control-Allow-Origin so that it is always set to '*'
|
2021-01-24 09:22:46 +01:00 |
|
Alejandro Celaya
|
55ddc4ae75
|
Replaced laminas-paginator with pagerfanta
|
2021-01-23 14:37:34 +01:00 |
|
Alejandro Celaya
|
4a5cc9a986
|
Added API test for single-step short URL creation action
|
2021-01-21 19:43:34 +01:00 |
|
Alejandro Celaya
|
da9896a28b
|
Fixed single step shortening endpoint
|
2021-01-21 19:26:19 +01:00 |
|
Alejandro Celaya
|
45d162e71a
|
Updated roleName col length in entity metadata definition
|
2021-01-18 17:22:09 +01:00 |
|
Alejandro Celaya
|
75dab92225
|
Improved tests covering ListKeysCommand
|
2021-01-11 17:01:01 +01:00 |
|
Alejandro Celaya
|
9e9d213f20
|
Added roles info to api key generation and api key list
|
2021-01-11 16:32:59 +01:00 |
|
Alejandro Celaya
|
c49a0ca040
|
Added list of roles to print after an API is generated
|
2021-01-11 15:20:26 +01:00 |
|
Alejandro Celaya
|
c9ff2b3834
|
Updated services required to initialize API keys with roles
|
2021-01-10 20:05:14 +01:00 |
|
Alejandro Celaya
|
34bb023b7d
|
Created API tests to cover deletion and renaming of tags with non-admin API keys
|
2021-01-10 10:28:00 +01:00 |
|
Alejandro Celaya
|
2be0050f3d
|
Improved tag list api test to cover different API key cases
|
2021-01-10 10:17:27 +01:00 |
|
Alejandro Celaya
|
ff1af82ffd
|
Improved tag visits api test to cover different API key cases
|
2021-01-10 10:00:00 +01:00 |
|
Alejandro Celaya
|
13cc70e6d4
|
Added more tags to more fixture short URLs in API keys
|
2021-01-10 09:54:19 +01:00 |
|
Alejandro Celaya
|
fa5934b8b6
|
Improved global visits api test to cover different API key cases
|
2021-01-10 09:36:10 +01:00 |
|
Alejandro Celaya
|
c8eb956778
|
Improved list domains api test to cover different API key cases
|
2021-01-10 09:32:19 +01:00 |
|
Alejandro Celaya
|
c56d56d38c
|
Added api tests to cover implicit domain when creating short URLs with proper API key
|
2021-01-10 09:09:56 +01:00 |
|
Alejandro Celaya
|
ea05259bbe
|
Improved api tests where a short URL needs to be resolved, covering cases where API key lacks permissions
|
2021-01-10 09:02:05 +01:00 |
|
Alejandro Celaya
|
f17873b527
|
Added api tests for short URLs lists using API keys with permissions
|
2021-01-10 08:49:31 +01:00 |
|
Alejandro Celaya
|
f827186c77
|
Updated API test fixtures to include API keys with roles
|
2021-01-10 08:40:32 +01:00 |
|
Alejandro Celaya
|
14eeb91c58
|
Added db test for VisitRepository::countVisits
|
2021-01-09 17:54:04 +01:00 |
|
Alejandro Celaya
|
bef1b13a33
|
Enhanced DomainRepositoryTest covering API key permissions
|
2021-01-09 13:16:33 +01:00 |
|
Alejandro Celaya
|
caa1ae0de8
|
Added all missing unit tests covering API key permissions
|
2021-01-09 12:38:06 +01:00 |
|
Alejandro Celaya
|
a8b68f07b5
|
Ensured delete/rename tags cannot be done with non-admin API keys
|
2021-01-06 17:31:49 +01:00 |
|
Alejandro Celaya
|
b5710f87e2
|
Created value object to wrap the renaming of a tag
|
2021-01-06 13:11:28 +01:00 |
|
Alejandro Celaya
|
041f231ff2
|
Implemented mechanism to add/remove roles from API keys
|
2021-01-06 10:59:08 +01:00 |
|
Alejandro Celaya
|
f821dea06c
|
Fixed typo on fixture
|
2021-01-05 19:29:42 +01:00 |
|
Alejandro Celaya
|
4b67d41362
|
Applied API role specs to short URL creation
|
2021-01-04 20:15:42 +01:00 |
|
Alejandro Celaya
|
19834f6715
|
Applied API role specs to domains list
|
2021-01-04 15:55:59 +01:00 |
|
Alejandro Celaya
|
262a06f624
|
Renamed method to be more consistent to what it actually does
|
2021-01-04 15:16:51 +01:00 |
|
Alejandro Celaya
|
a01e0ba337
|
Changed logic to list domains to centralize conditions in service
|
2021-01-04 15:02:37 +01:00 |
|
Alejandro Celaya
|
29cdfaed39
|
Changed ShortUrlMeta so that it expects an ApiKey instance instead of the key as string
|
2021-01-04 13:32:44 +01:00 |
|
Alejandro Celaya
|
24f7fb9c4f
|
Applied API role specs to tags list without stats
|
2021-01-04 12:44:29 +01:00 |
|
Alejandro Celaya
|
68c601a5a8
|
Applied API role specs to global visits
|
2021-01-04 11:27:55 +01:00 |
|
Alejandro Celaya
|
8aa6bdb934
|
Applied API role specs to tag visits
|
2021-01-04 11:14:28 +01:00 |
|
Alejandro Celaya
|
4a1e7b761a
|
Applied API role specs to short URL visits
|
2021-01-03 17:48:32 +01:00 |
|
Alejandro Celaya
|
25ee9b5daf
|
Applied API role specs to single short URL tags edition
|
2021-01-03 16:50:47 +01:00 |
|
Alejandro Celaya
|
fff10ebee4
|
Applied API role specs to single short URL edition
|
2021-01-03 16:41:44 +01:00 |
|
Alejandro Celaya
|
65797b61a0
|
Applied API role specs to single short URL deletion
|
2021-01-03 14:03:10 +01:00 |
|
Alejandro Celaya
|
dc08286a72
|
Applied API role specs to single short URL resolution
|
2021-01-03 13:33:07 +01:00 |
|
Alejandro Celaya
|
940383646b
|
Applied API role specs to short URLs list
|
2021-01-03 13:05:21 +01:00 |
|
Alejandro Celaya
|
df53e6c6f2
|
Created specs for API key roles
|
2021-01-02 20:08:49 +01:00 |
|
Alejandro Celaya
|
7e6882960e
|
Added a system to set roles to API keys
|
2021-01-02 19:35:16 +01:00 |
|
Alejandro Celaya
|
ecf22ae4b6
|
Added happyr/doctrine-specification to support dunamically applying specs to queries
|
2021-01-02 17:14:42 +01:00 |
|
Alejandro Celaya
|
90551ff3bc
|
Added used API key to request
|
2021-01-02 10:34:35 +01:00 |
|
Alejandro Celaya
|
850a5b412c
|
Removed Access-Control-Expose-Headers header from CrossDomainM;iddleware, as it's actually not correct
|
2020-12-31 15:41:02 +01:00 |
|
Alejandro Celaya
|
84331135f7
|
Created API tests for CORS
|
2020-12-31 13:28:06 +01:00 |
|
Alejandro Celaya
|
39bda5113b
|
#912 Fixed unit tests
|
2020-11-22 18:11:31 +01:00 |
|
Alejandro Celaya
|
8d3ceaf462
|
#901 Ensured only domains in use are returned to lists
|
2020-11-21 08:44:28 +01:00 |
|
Alejandro Celaya
|
d6395a3de8
|
Deleted everything related with authentication plugins, as shlink only supports API key auth since v2.0.0
|
2020-11-07 12:53:14 +01:00 |
|
Alejandro Celaya
|
27bc8d4823
|
Ensured API key is tracked when creating short URLs from the REST API
|
2020-11-07 10:23:08 +01:00 |
|
Alejandro Celaya
|
97f89bcede
|
Simplified transactional URL shortening
|
2020-11-06 20:05:57 +01:00 |
|
Alejandro Celaya
|
1621f3a943
|
Updated dependencies
|
2020-11-02 11:53:14 +01:00 |
|
Alejandro Celaya
|
544836b986
|
Deprecated tags creation
|
2020-11-02 11:05:14 +01:00 |
|
Daniel Londero
|
065d314608
|
Invoke PHPUnit's assertions statically
|
2020-10-04 00:35:14 +02:00 |
|
Alejandro Celaya
|
073e4eeac8
|
Created command to list domains
|
2020-09-27 12:39:02 +02:00 |
|
Alejandro Celaya
|
06eda073bf
|
Added API test for /domains endpoint
|
2020-09-27 10:23:17 +02:00 |
|
Alejandro Celaya
|
24aab5cc0e
|
Created unit tests for new Domain-related elements
|
2020-09-27 10:11:41 +02:00 |
|
Alejandro Celaya
|
76d6d9a7a9
|
Created rest endpoint to list existing domains
|
2020-09-27 09:53:12 +02:00 |
|
Alejandro Celaya
|
be71a6eeb4
|
Replaced colon by hyphen as the ordering field-dir separator as it's a valid URL character
|
2020-09-21 22:03:43 +02:00 |
|
Alejandro Celaya
|
25fbbee883
|
Added support to order short urls liusts using the <field>:<dir> notaiton as string
|
2020-09-20 13:21:21 +02:00 |
|
Alejandro Celaya
|
78b838f6b6
|
Used league/uri to validate URLs including deeplinks, and fixed tests
|
2020-06-27 11:14:10 +02:00 |
|
Alejandro Celaya
|
08950f6433
|
Replaced UriInterface by string when creating a short URL
|
2020-06-27 10:48:35 +02:00 |
|
Alejandro Celaya
|
68919c19b8
|
Added deprecation in BodyParserMiddleware
|
2020-06-08 23:25:54 +02:00 |
|
Alejandro Celaya
|
4d346d1fea
|
Created API test for tags visits endpoint
|
2020-05-09 10:31:39 +02:00 |
|
Alejandro Celaya
|
7f39e6d768
|
Created TagVisitsActionTest
|
2020-05-09 10:22:07 +02:00 |
|
Alejandro Celaya
|
3218f8c283
|
Added Created endpoint to serve visits by tag
|
2020-05-09 09:53:45 +02:00 |
|
Alejandro Celaya
|
00cac4ba72
|
Created rest test for list tags action
|
2020-05-08 11:51:28 +02:00 |
|
Alejandro Celaya
|
91aaffc6db
|
Updated ListTagsActionTest
|
2020-05-08 11:32:06 +02:00 |
|
Alejandro Celaya
|
06c59fe2dd
|
Fixed invalid imports after class refactoring
|
2020-05-08 10:29:24 +02:00 |
|
Alejandro Celaya
|
626c92460b
|
Enhanced list tags endpoint so that it can also return stats foir every tag
|
2020-05-08 10:15:33 +02:00 |
|
Alejandro Celaya
|
aece9e68ba
|
Removed logger dependency from rest actions
|
2020-05-01 12:08:44 +02:00 |
|
Alejandro Celaya
|
b5947d1642
|
Created more unit tests
|
2020-05-01 11:57:46 +02:00 |
|
Alejandro Celaya
|
1ef10f11cb
|
Created new action to get default visit stats
|
2020-05-01 11:40:02 +02:00 |
|
Alejandro Celaya
|
5beaab85ac
|
Renamed GetVisitsAction to ShortUrlVisitsAction
|
2020-05-01 11:17:07 +02:00 |
|
Alejandro Celaya
|
15a8305209
|
Fixed random 503 responses from the HealthAction when the database connection injected on it has expired
|
2020-04-25 19:58:49 +02:00 |
|
Alejandro Celaya
|
078c8ea011
|
Changed default mercure token duration to 1 day
|
2020-04-18 11:29:49 +02:00 |
|
Alejandro Celaya
|
7f888c49b4
|
Created MercureUpdatesGeneratorTest
|
2020-04-12 18:01:13 +02:00 |
|
Alejandro Celaya
|
e97dfbfdda
|
Created NotifyVisitToMercureTest
|
2020-04-12 17:50:40 +02:00 |
|
Alejandro Celaya
|
b858d79b9e
|
Fixed mercure hub URL returned by MercureInfoAction
|
2020-04-12 17:50:09 +02:00 |
|
Alejandro Celaya
|
31db97228d
|
Created MercureInfoActionTest
|
2020-04-12 14:22:23 +02:00 |
|
Alejandro Celaya
|
2ffbf03cf8
|
Created action to get mercure integration info
|
2020-04-12 13:59:10 +02:00 |
|
Alejandro Celaya
|
f915b97606
|
Created decorator for database connection closing and reopening for swoole tasks
|
2020-04-11 18:00:40 +02:00 |
|
Alejandro Celaya
|
3beb27acc2
|
Added API tests for the edition of the longURL
|
2020-03-22 17:30:01 +01:00 |
|
Alejandro Celaya
|
4e6836c605
|
Long URLs can now be edited on existing short URLs
|
2020-03-22 14:04:01 +01:00 |
|
Alejandro Celaya
|
d2c06dd0ab
|
Initialized typed nullable props as null in all entities
|
2020-03-21 14:38:24 +01:00 |
|
Alejandro Celaya
|
d32112fe7e
|
Updated shlink packages and installed shlink-config
|
2020-03-15 17:14:37 +01:00 |
|
Alejandro Celaya
|
bb231e668b
|
Registered middleware generating request ID
|
2020-02-19 18:58:25 +01:00 |
|
Alejandro Celaya
|
343ee04acb
|
Created middleware which injects default short code length from config when a value was not explicitly provided
|
2020-02-18 19:21:34 +01:00 |
|
Alejandro Celaya
|
faec758fba
|
Added test to ensure default domain is ignored if provided when creatin a short URL
|
2020-02-08 12:30:47 +01:00 |
|
Alejandro Celaya
|
ccec6e03aa
|
Updated middleware which drops default domain so that it is capable of doing it from parsed body too
|
2020-02-08 12:22:07 +01:00 |
|
Alejandro Celaya
|
8ff913aaf2
|
Ensured search terms are applied to the domain too
|
2020-02-02 20:07:19 +01:00 |
|
Alejandro Celaya
|
ce990c67e3
|
Fixed coding styles
|
2020-02-02 19:19:35 +01:00 |
|
Alejandro Celaya
|
8a0ba11f79
|
Added one more test case for not found URLs on API tests
|
2020-02-02 19:15:14 +01:00 |
|
Alejandro Celaya
|
0c1ecd3caa
|
Created DropDefaultDomainFromQueryMiddlewareTest
|
2020-02-02 19:13:32 +01:00 |
|
Alejandro Celaya
|
c07c37f7bd
|
Created middleware to drop domain from query when it is the default one
|
2020-02-02 19:03:43 +01:00 |
|
Alejandro Celaya
|
fe652c67f4
|
Covered with API tests getting invalid short URLs by short code and domain
|
2020-02-02 13:15:08 +01:00 |
|
Alejandro Celaya
|
297985cf01
|
Ensured trying to fetch a short URL for any operation through the API results in 404 if it does not match with porovided domain
|
2020-02-02 12:58:26 +01:00 |
|
Alejandro Celaya
|
e87d4d61bc
|
Added API test for editing tags with and without domain
|
2020-02-02 10:53:49 +01:00 |
|
Alejandro Celaya
|
e58f2a384e
|
Added API test for visits with and without domain
|
2020-02-02 10:46:38 +01:00 |
|
Alejandro Celaya
|
881002634a
|
Added API tests for short URL deletion with domain
|
2020-02-02 10:28:10 +01:00 |
|
Alejandro Celaya
|
aa80c2bb82
|
Updated API tests so that fixture short URLs are created with matching short codes and different domains
|
2020-02-02 09:51:17 +01:00 |
|
Alejandro Celaya
|
1a8e4cdfd7
|
Exposed domain on short URLs
|
2020-02-02 08:57:04 +01:00 |
|
Alejandro Celaya
|
6858dc4785
|
Updated setting short URL tags so that it accepts providing the domain
|
2020-02-01 22:59:21 +01:00 |
|
Alejandro Celaya
|
5d1d9dcac3
|
Allowed domain to be provided when editing short URL meta
|
2020-02-01 22:54:21 +01:00 |
|
Alejandro Celaya
|
732bb06c62
|
Updated short URL deletion so that it accepts the domain
|
2020-02-01 18:06:50 +01:00 |
|
Alejandro Celaya
|
279bd12a2d
|
Ensured domain can be passed when fetching visits for a short URL
|
2020-02-01 17:34:16 +01:00 |
|
Alejandro Celaya
|
fd82de31c0
|
Fixed the way ShortUrlIdentifier is created from requests, on different request scopes
|
2020-02-01 12:54:10 +01:00 |
|
Alejandro Celaya
|
327d35fe57
|
Created DTO used to transfer props needed to uniquely identify a short URL
|
2020-02-01 11:47:01 +01:00 |
|
Alejandro Celaya
|
bd2f488e2c
|
Updated entity mappings so that schema an table prefixes can be eventually provided
|
2020-01-29 10:53:06 +01:00 |
|
Alejandro Celaya
|
96350c8b8f
|
Updated entities mapping config so that they return a function
|
2020-01-29 10:06:42 +01:00 |
|
Alejandro Celaya
|
6ff5a532ea
|
Added extra API test covering complex order by for short URL lists
|
2020-01-28 11:20:48 +01:00 |
|
Alejandro Celaya
|
452bfea088
|
Created DTOs with implicit validation to wrap short URLs lists params
|
2020-01-28 10:49:55 +01:00 |
|
Alejandro Celaya
|
240d2588f9
|
Extracted some private functions ase helper global functions
|
2020-01-28 09:41:48 +01:00 |
|
Alejandro Celaya
|
4ebd48b2b0
|
Created new service to resolve short URLs
|
2020-01-26 19:21:51 +01:00 |
|
Alejandro Celaya
|
1f9a912c04
|
Added API tests covering the edition of short URL meta with resetted values
|
2020-01-26 09:29:04 +01:00 |
|
Alejandro Celaya
|
45151cdde6
|
Standardized how the ShortUrlMeta object is created by exposing a single named constructor
|
2020-01-26 08:42:51 +01:00 |
|
Alejandro Celaya
|
09e3464426
|
Ensured CrossDomainMiddleware always returns empty responses with success status on OPTIONS requests
|
2020-01-11 20:36:17 +01:00 |
|
Alejandro Celaya
|
2b544ad141
|
Refactored Rest ConfigProvider so that it appends the health action with and without version
|
2020-01-07 18:07:51 +01:00 |
|
Alejandro Celaya
|
36d5e057d0
|
Ensured the health action is registered bit with and without version
|
2020-01-06 23:32:43 +01:00 |
|
Alejandro Celaya
|
9c5f5a46b5
|
Replaced use of deprecated class by a non-deprecated one
|
2020-01-06 23:08:14 +01:00 |
|
Alejandro Celaya
|
2151b97bec
|
Project migrated from zend to laminas
|
2020-01-01 21:13:09 +01:00 |
|
Alejandro Celaya
|
50100c251e
|
Updated to coding standard v2.1
|
2020-01-01 20:48:31 +01:00 |
|
Alejandro Celaya
|
339121fbb1
|
Removed PathVersionMiddleware as routes without version are not longer supported
|
2019-12-31 16:26:00 +01:00 |
|
Alejandro Celaya
|
5c90a7c7a7
|
Removed remaining deprecated elements
|
2019-12-31 16:05:02 +01:00 |
|
Alejandro Celaya
|
434b56fa8c
|
Removed several deprecated components
|
2019-12-31 15:38:37 +01:00 |
|
Alejandro Celaya
|
bd6243b2ac
|
Updated to problem-details 1.1, removing custom code
|
2019-12-30 22:42:29 +01:00 |
|
Alejandro Celaya
|
bfeb915cd2
|
Replaced regular callbacks by arrow functions when possible
|
2019-12-29 23:16:55 +01:00 |
|
Alejandro Celaya
|
a830420d75
|
Added property types to all non-deprecated classes
|
2019-12-29 22:48:40 +01:00 |
|
Alejandro Celaya
|
b17bcb6c93
|
Updated LocateShortUrlVisit so that it dispatches a VisitLocated event
|
2019-12-28 13:07:11 +01:00 |
|
Alejandro Celaya
|
4886825564
|
Improved NotifyVisitToWebHooksTest to kill more mutants
|
2019-12-28 10:43:13 +01:00 |
|
Alejandro Celaya
|
79cd3ba912
|
Created NotifyVisitToWebhooksTest
|
2019-12-27 20:32:21 +01:00 |
|
Alejandro Celaya
|
75b91dc26b
|
Hardcoded different creation dates for fixture short URLs to avoid random API test failures
|
2019-12-18 15:26:23 +01:00 |
|
Alejandro Celaya
|
8142801f1f
|
Updated ListShortUrlsAction api test so that it covers filtering use cases
|
2019-12-16 23:03:32 +01:00 |
|
Alejandro Celaya
|
8ad8b08aa4
|
Improved ListShortUrlsActionTest covering different scenarios in which date ranges are provided
|
2019-12-16 21:55:48 +01:00 |
|
Alejandro Celaya
|
839ca31821
|
Ensured date range filtering is also passed to the count function on ShortUrlRepository
|
2019-12-16 21:46:27 +01:00 |
|
Alejandro Celaya
|
99fd5f937e
|
Fixed existing tests and coding styles
|
2019-12-16 15:16:18 +01:00 |
|
Alejandro Medina
|
a28e7987e6
|
fixup! Add date range filter to list urls endpoint parameters
|
2019-12-14 18:32:58 -03:00 |
|
Alejandro Medina
|
f9ba322547
|
Add date range filter to list urls endpoint parameters
|
2019-12-14 13:55:03 -03:00 |
|
Alejandro Celaya
|
a070a68a57
|
Fixed merge conflicts
|
2019-12-06 23:34:50 +01:00 |
|
Alejandro Celaya
|
05a64b8d9e
|
Ensured dates parsing does not mask actual validation errors
|
2019-12-06 22:38:22 +01:00 |
|
Alejandro Celaya
|
05451e3d1a
|
Handled tag conflict from rename tag action
|
2019-12-06 21:03:27 +01:00 |
|
Alejandro Celaya
|
7f43890713
|
Improved CreateShortUrlAction test so that it cover more mutants
|
2019-12-01 12:26:31 +01:00 |
|
Alejandro Celaya
|
57070ef155
|
Improved Rest's ConfigProvider test to kill more mutants
|
2019-12-01 12:04:31 +01:00 |
|
Alejandro Celaya
|
fc5904e743
|
Improved BodyParserMiddlewareTest to kill more mutants
|
2019-12-01 10:58:48 +01:00 |
|
Alejandro Celaya
|
46c0620236
|
More test improvements trying to increase mutation score
|
2019-12-01 10:47:56 +01:00 |
|
Alejandro Celaya
|
1bf56b658b
|
Improved domain exception tests to cover more possible mutants
|
2019-12-01 10:24:42 +01:00 |
|