Alejandro Celaya
|
b0b9902f40
|
Add unit test to cover device URLs edition, and fix bug thanks to it
|
2023-01-22 12:18:36 +01:00 |
|
Alejandro Celaya
|
b18c9e495f
|
Add API test for short URL edition with device long URLs
|
2023-01-22 11:47:45 +01:00 |
|
Alejandro Celaya
|
d3590234a3
|
Add API test for short URL creation with device long URLs
|
2023-01-22 11:36:00 +01:00 |
|
Alejandro Celaya
|
39adef8ab8
|
Make it impossible to create a short URL with an empty long URL
|
2023-01-22 11:27:16 +01:00 |
|
Alejandro Celaya
|
48bd97fe41
|
Return deviceLongUrls as part of the short URL data and document API changes
|
2023-01-21 12:05:54 +01:00 |
|
Alejandro Celaya
|
237fb95b4b
|
Update ShortUrlRedirectionBuilder to accept a request object instead of a raw query array
|
2023-01-21 10:37:12 +01:00 |
|
Alejandro Celaya
|
c1b7c6ba6c
|
Updated to shlink-common with support for proxies for entities with public readonly props
|
2023-01-21 10:12:52 +01:00 |
|
Alejandro Celaya
|
a93edf158e
|
Added logic to persist device long URLs while creating/editing a short URL
|
2023-01-21 10:12:52 +01:00 |
|
Alejandro Celaya
|
3e26f1113d
|
Extract device long URL validation to its own validation class
|
2023-01-21 10:12:52 +01:00 |
|
Alejandro Celaya
|
1447687ebe
|
Add deviceLongUrls to short URL creation
|
2023-01-21 10:12:52 +01:00 |
|
Alejandro Celaya
|
80e3f01562
|
Replace references to doma.in with s.test
|
2023-01-19 09:05:52 +01:00 |
|
Alejandro Celaya
|
21863e8de6
|
Add support to load openswoole-specific config via env vars
|
2023-01-12 19:39:26 +01:00 |
|
Alejandro Celaya
|
961178fd82
|
Added amount of bots, non-bots and total visits to the list of tags with stats
|
2023-01-02 19:28:32 +01:00 |
|
Alejandro Celaya
|
112cbb9039
|
Added API test for malformed request JSON body
|
2023-01-02 13:38:04 +01:00 |
|
Alejandro Celaya
|
812c5f4993
|
Added new handled error for when request body is not valid JSON
|
2023-01-02 13:33:24 +01:00 |
|
Alejandro Celaya
|
8ecc241a4b
|
Added API test for the visits stats endpoint
|
2023-01-02 12:45:08 +01:00 |
|
Alejandro Celaya
|
1f66ec2af5
|
Fixed API tests
|
2022-12-16 10:53:44 +01:00 |
|
Alejandro Celaya
|
92a83b82a0
|
Split short URL listing capabilities on its own repo and service
|
2022-12-13 19:37:02 +01:00 |
|
Alejandro Celaya
|
c4f28b3a32
|
Renamed ShortUrl::fromMeta to ShortUrl::create
|
2022-12-11 18:24:47 +01:00 |
|
Alejandro Celaya
|
201f25e0ad
|
Improved API tests to cover exlucding disabled URLs from lists
|
2022-12-11 13:38:11 +01:00 |
|
Alejandro Celaya
|
01e0a95e14
|
Added rest of tests to phpstan check
|
2022-10-24 20:25:06 +02:00 |
|
Alejandro Celaya
|
85e18a4754
|
Fixed all phpstan inspections on tests
|
2022-10-24 20:11:25 +02:00 |
|
Alejandro Celaya
|
1650499a38
|
Added more stricter types for mocks
|
2022-10-24 19:59:03 +02:00 |
|
Alejandro Celaya
|
51f243995a
|
Added stricter types for mocks
|
2022-10-24 19:53:13 +02:00 |
|
Alejandro Celaya
|
ef82158368
|
Migrated ApiKeyServiceTest to use PHPUnit mocks
|
2022-10-23 23:07:17 +02:00 |
|
Alejandro Celaya
|
083ccd36b7
|
Migrated OverrideDomainMiddlewareTest to use PHPUnit mocks
|
2022-10-23 23:00:57 +02:00 |
|
Alejandro Celaya
|
d61c79da84
|
Migrated DropDefaultDomainFromRequestMiddlewareTest to use PHPUnit mocks
|
2022-10-23 22:56:12 +02:00 |
|
Alejandro Celaya
|
8f76c3e202
|
Migrated DefaultShortCodesLengthMiddlewareTest to use PHPUnit mocks
|
2022-10-23 22:55:11 +02:00 |
|
Alejandro Celaya
|
23aa7a015c
|
Migrated CreateShortUrlContentNegotiationMiddlewareTest to use PHPUnit mocks
|
2022-10-23 22:53:48 +02:00 |
|
Alejandro Celaya
|
674a4416cf
|
Migrated NotConfiguredMercureErrorHandlerTest to use PHPUnit mocks
|
2022-10-23 22:51:38 +02:00 |
|
Alejandro Celaya
|
db85915c2f
|
Migrated BackwardsCompatibleProblemDetailsHandlerTest to use PHPUnit mocks
|
2022-10-23 22:48:30 +02:00 |
|
Alejandro Celaya
|
dfc8e8d74e
|
Migrated CrossDomainMiddlewareTest to use PHPUnit mocks
|
2022-10-23 22:47:34 +02:00 |
|
Alejandro Celaya
|
b2b424a4ed
|
Migrated BodyParserMiddlewareTest to use PHPUnit mocks
|
2022-10-23 22:45:23 +02:00 |
|
Alejandro Celaya
|
3433899577
|
Migrated AuthenticationMiddlewareTest to use PHPUnit mocks
|
2022-10-23 22:40:14 +02:00 |
|
Alejandro Celaya
|
b1f814e118
|
Migrated InitialApiKeyDelegatorTest to use PHPUnit mocks
|
2022-10-23 22:36:16 +02:00 |
|
Alejandro Celaya
|
7aa6afeb30
|
Migrated TagVisitsActionTest to use PHPUnit mocks
|
2022-10-23 22:28:29 +02:00 |
|
Alejandro Celaya
|
d414496a3c
|
Migrated ShortUrlVisitsActionTest to use PHPUnit mocks
|
2022-10-23 22:27:27 +02:00 |
|
Alejandro Celaya
|
d4684fd01f
|
Migrated OrphanVisitsActionTest to use PHPUnit mocks
|
2022-10-23 22:25:54 +02:00 |
|
Alejandro Celaya
|
bb444a02fe
|
Migrated NonOrphanVisitsActionTest to use PHPUnit mocks
|
2022-10-23 22:24:06 +02:00 |
|
Alejandro Celaya
|
e980a8d121
|
Migrated GlobalVisitsActionTest to use PHPUnit mocks
|
2022-10-23 22:23:08 +02:00 |
|
Alejandro Celaya
|
f493baaf2b
|
Migrated DomainVisitsActionTest to use PHPUnit mocks
|
2022-10-23 22:22:14 +02:00 |
|
Alejandro Celaya
|
28f26920dd
|
Migrated UpdateTagActionTest to use PHPUnit mocks
|
2022-10-23 22:21:23 +02:00 |
|
Alejandro Celaya
|
69e994c067
|
Migrated TagsStatsActionTest to use PHPUnit mocks
|
2022-10-23 22:20:21 +02:00 |
|
Alejandro Celaya
|
656083cb6f
|
Migrated ListTagsActionTest to use PHPUnit mocks
|
2022-10-23 22:19:14 +02:00 |
|
Alejandro Celaya
|
ab9ea887d2
|
Migrated DeleteTagsActionTest to use PHPUnit mocks
|
2022-10-23 22:17:35 +02:00 |
|
Alejandro Celaya
|
9ac6a50e66
|
Migrated SingleStepCreateShortUrlActionTest to use PHPUnit mocks
|
2022-10-23 22:16:19 +02:00 |
|
Alejandro Celaya
|
acc9cb94b5
|
Migrated ResolveShortUrlActionTest to use PHPUnit mocks
|
2022-10-23 22:14:28 +02:00 |
|
Alejandro Celaya
|
01829c82ee
|
Migrated ListShortUrlsActionTest to use PHPUnit mocks
|
2022-10-23 22:13:27 +02:00 |
|
Alejandro Celaya
|
9c02ea8799
|
Migrated EditShortUrlActionTest to use PHPUnit mocks
|
2022-10-23 22:12:27 +02:00 |
|
Alejandro Celaya
|
d202538581
|
Migrated DeleteShortUrlActionTest to use PHPUnit mocks
|
2022-10-23 22:10:41 +02:00 |
|
Alejandro Celaya
|
a84b642ba5
|
Migrated CreateShortUrlActionTest to use PHPUnit mocks
|
2022-10-23 22:09:37 +02:00 |
|
Alejandro Celaya
|
74176c298f
|
Migrated ListDomainsActionTest to use PHPUnit mocks
|
2022-10-23 22:06:48 +02:00 |
|
Alejandro Celaya
|
91e21441f7
|
Migrated DomainRedirectsActionTest to use PHPUnit mocks
|
2022-10-23 22:05:51 +02:00 |
|
Alejandro Celaya
|
896b7f2d73
|
Migrated MercureInfoActionTest to use PHPUnit mocks
|
2022-10-23 22:04:00 +02:00 |
|
Alejandro Celaya
|
66ed152358
|
Migrated HealthActionTest to use PHPUnit mocks
|
2022-10-23 22:02:31 +02:00 |
|
Alejandro Celaya
|
bcd5d2848d
|
Used PHPUnit mocks in RoleResolverTest instead of prophezy
|
2022-10-12 12:47:58 +02:00 |
|
Alejandro Celaya
|
27b680e0cd
|
Created CLI test for short URLs list
|
2022-10-06 21:01:11 +02:00 |
|
Alejandro Celaya
|
d3faa22b78
|
Fixed usage of enum where the enum's value should be used
|
2022-09-30 17:26:22 +02:00 |
|
Alejandro Celaya
|
0c6f8f1136
|
Refactored global entities into their own proper namespaces
|
2022-09-23 19:03:32 +02:00 |
|
Alejandro Celaya
|
e28b73c130
|
Refactored global services into their own proper namespaces
|
2022-09-23 18:42:38 +02:00 |
|
Alejandro Celaya
|
56f953ab2f
|
Refactored global validations into their own proper namespaces
|
2022-09-23 18:30:07 +02:00 |
|
Alejandro Celaya
|
f5f990511c
|
Refactored global models into their own proper namespaces
|
2022-09-23 18:05:17 +02:00 |
|
Alejandro Celaya
|
3f01fad12f
|
Ensured empty initial PAI keys are discarded
|
2022-09-18 09:29:38 +02:00 |
|
Alejandro Celaya
|
8d244c8d34
|
Migrated UrlShortenerOptions to immutable object
|
2022-09-17 15:54:43 +02:00 |
|
Alejandro Celaya
|
20f457a3e9
|
Migrated NotFoundRedirectOptions to immutable object
|
2022-09-17 13:32:40 +02:00 |
|
Alejandro Celaya
|
9685929824
|
Migrated AppOptions to immutable object
|
2022-09-17 13:01:28 +02:00 |
|
Alejandro Celaya
|
1966367caf
|
Fixed ApiKeyRepository for MS and Postgres
|
2022-09-11 12:33:28 +02:00 |
|
Alejandro Celaya
|
eed7b6e565
|
Added db test for ApiKeyRepository
|
2022-09-11 12:18:04 +02:00 |
|
Alejandro Celaya
|
0e54ed691d
|
Created InitialApiKeyDelegatorTest
|
2022-09-11 12:11:39 +02:00 |
|
Alejandro Celaya
|
997289da02
|
Changed all public setUp methods in tests to be protected
|
2022-09-11 12:02:49 +02:00 |
|
Alejandro Celaya
|
c841e57db5
|
Reduced duplication in ApiKeyRepository
|
2022-09-11 11:59:49 +02:00 |
|
Alejandro Celaya
|
f5138385be
|
Created new env var to programatically provide an initial API key
|
2022-09-11 10:45:03 +02:00 |
|
Alejandro Celaya
|
846802c003
|
Slight improvements on RoadRunner config
|
2022-08-26 17:58:25 +02:00 |
|
Alejandro Celaya
|
a41835573b
|
Centralized prefix for problem detail types
|
2022-08-14 13:12:10 +02:00 |
|
Alejandro Celaya
|
2650cb89b5
|
Created BackwardsCompatibleProblemDetailsExceptionTest
|
2022-08-14 12:39:05 +02:00 |
|
Alejandro Celaya
|
4a122e0209
|
Added remaining API tests covering error type convertions
|
2022-08-14 10:51:12 +02:00 |
|
Alejandro Celaya
|
40bbcb3250
|
Added some API tests for v3 API errors
|
2022-08-13 17:49:00 +02:00 |
|
Alejandro Celaya
|
905f51fbd0
|
Added logic to properly map all existing errors from v3 to v2 in the API
|
2022-08-13 17:15:04 +02:00 |
|
Alejandro Celaya
|
cd4fe4362b
|
Created middleware to keep backwards compatibility on errors when using v1 and 2 of the API
|
2022-08-13 16:50:19 +02:00 |
|
Alejandro Celaya
|
709a4639b3
|
Fixed merge conflicts
|
2022-08-09 18:59:55 +02:00 |
|
Alejandro Celaya
|
16bd368a58
|
Centralized how routes are configured to support multi-segment slugs
|
2022-08-06 09:30:13 +02:00 |
|
Alejandro Celaya
|
fc0d99be41
|
Ensure filtering of custom-slug is different depending on the multi-sement lugsfeature flag
|
2022-08-05 08:38:05 +02:00 |
|
Alejandro Celaya
|
619999d4f8
|
Added feature flag to enable/disable multi-segment support
|
2022-08-04 11:49:33 +02:00 |
|
Alejandro Celaya
|
7acf27dd38
|
Replaced usage of deprecated methods in DateRange class
|
2022-08-04 11:27:33 +02:00 |
|
Alejandro Celaya
|
ba517eeeb5
|
Moved routes config together, and ensure they are loaded last
|
2022-08-04 11:14:26 +02:00 |
|
Alejandro Celaya
|
fdd3e24967
|
Added support for multi-segment slugs
|
2022-08-03 19:32:59 +02:00 |
|
Alejandro Celaya
|
2400d1f265
|
Removed unused method
|
2022-04-23 19:07:36 +02:00 |
|
Alejandro Celaya
|
e8f7daac6f
|
Converted Role constants to enum
|
2022-04-23 18:41:16 +02:00 |
|
Alejandro Celaya
|
bca3e62ced
|
Updated to readonly public props on as many models as possible
|
2022-04-23 14:00:47 +02:00 |
|
Alejandro Celaya
|
e79391907a
|
Added some PHP 8.1 features
|
2022-04-23 13:08:21 +02:00 |
|
Alejandro Celaya
|
54a23cc7fa
|
Converted EnvVars to enum
|
2022-04-23 12:44:17 +02:00 |
|
Alejandro Celaya
|
54c1c7ad84
|
Created DomainVisits API test
|
2022-04-23 11:17:32 +02:00 |
|
Alejandro Celaya
|
af15e31b42
|
Created DomainVisitsActionTest
|
2022-04-23 11:07:10 +02:00 |
|
Alejandro Celaya
|
e11bf6ac67
|
Created endpoint to get visits for one specific domain
|
2022-04-23 10:32:07 +02:00 |
|
Alejandro Celaya
|
5a25211371
|
Created NotConfiguredMercureErrorHandlerTest
|
2022-02-20 10:50:21 +01:00 |
|
Alejandro Celaya
|
6983f9b2bf
|
Added middleware that mitigates big error traces being logged for those not using mercure
|
2022-02-20 10:36:54 +01:00 |
|
Alejandro Celaya
|
9e32886f60
|
Created first CLI E2E tests
|
2022-02-13 12:20:02 +01:00 |
|
Alejandro Celaya
|
9ea8f3b590
|
Fixed URL validation still being true by default
|
2022-02-01 19:12:53 +01:00 |
|
Alejandro Celaya
|
8adb6596fb
|
Refactored TagInfo to wrap the raw tag name instead of a Tag entity
|
2022-01-23 09:37:02 +01:00 |
|
Alejandro Celaya
|
d0546a2ea2
|
Split spec to join ApiKey spec with short URLs, into inlined and regular versions
|
2022-01-18 20:14:24 +01:00 |
|
Alejandro Celaya
|
9e9621e7b2
|
Standardized how inlined or regular specs are applied to query builders
|
2022-01-18 20:06:32 +01:00 |
|
Alejandro Celaya
|
fe1fa7689a
|
Created endpoint to list non-orphan visits
|
2022-01-16 12:24:02 +01:00 |
|
Alejandro Celaya
|
ce47d8c591
|
Added full support for emojis
|
2022-01-10 13:04:16 +01:00 |
|
Alejandro Celaya
|
3b359cfc4f
|
Reduced amount of duplicated code in API tests
|
2022-01-09 17:47:19 +01:00 |
|
Alejandro Celaya
|
a6b1647f27
|
Created TagStatsActionTest
|
2022-01-09 17:37:00 +01:00 |
|
Alejandro Celaya
|
d5851bbb6a
|
Created TagsStats endpoint
|
2022-01-09 17:24:07 +01:00 |
|
Alejandro Celaya
|
1b51a1aedd
|
Added ordering support for tags list when not requesting stats
|
2022-01-09 13:31:08 +01:00 |
|
Alejandro Celaya
|
ff75b3cd1f
|
Enhanced test covering list short URLs with invalid params
|
2022-01-09 11:28:32 +01:00 |
|
Alejandro Celaya
|
2abcaf02e2
|
Standardized ordering field handling and added validation for short URLs list
|
2022-01-09 11:23:27 +01:00 |
|
Alejandro Celaya
|
2f42b2d072
|
Added API tests covering pagination for tags
|
2022-01-05 19:16:49 +01:00 |
|
Alejandro Celaya
|
775f58f972
|
Added support for pagination in tags lists
|
2022-01-05 19:12:08 +01:00 |
|
Alejandro Celaya
|
44e3f9b49f
|
Changed default ordering of short URLs, returning newest first
|
2022-01-05 14:10:24 +01:00 |
|
Alejandro Celaya
|
9dec05f62d
|
Added API test covering invalid tagsMode
|
2022-01-04 14:42:31 +01:00 |
|
Alejandro Celaya
|
0447aa07fa
|
Added more API tests covering the new tagsMode param on short URLs list
|
2022-01-04 14:34:31 +01:00 |
|
Alejandro Celaya
|
8e1cd67a3d
|
Simplified some match expressions
|
2022-01-01 18:40:48 +01:00 |
|
Alejandro Celaya
|
277d817429
|
Removed API test which is no longer relevant
|
2021-12-18 18:41:11 +01:00 |
|
Alejandro Celaya
|
8c14526f85
|
Fixed tests and updated changelog
|
2021-12-14 22:30:09 +01:00 |
|
Alejandro Celaya
|
1ff241411b
|
Removed everything that was deprecated
|
2021-12-14 22:21:53 +01:00 |
|
Alejandro Celaya
|
3f3cf5e20e
|
Explicitly required an MSI of 83 for unit tests
|
2021-12-10 14:00:59 +01:00 |
|
Alejandro Celaya
|
0786a962e7
|
Increased MIS to 83%
|
2021-12-10 13:42:33 +01:00 |
|
Alejandro Celaya
|
ee43e68a57
|
Changed behavior of domains list so that it does not return configured redirects as redirects for default domain
|
2021-12-09 12:32:53 +01:00 |
|
Alejandro Celaya
|
348ac78f5a
|
Enhanced ListDomainsAction so that it returns default redirects in the response
|
2021-12-09 12:11:09 +01:00 |
|
Alejandro Celaya
|
f361403888
|
Updated paginator types
|
2021-12-08 17:36:40 +01:00 |
|
Alejandro Celaya
|
a66ddabe8a
|
Added domain to DeleteShortUrlException
|
2021-11-30 21:38:09 +01:00 |
|
Alejandro Celaya
|
bd3a59e9ca
|
Updated to doctrine-migrations 3.3
|
2021-10-23 15:44:56 +02:00 |
|
Alejandro Celaya
|
a4fde0f9e6
|
Changed mechanism to determine if connection to database worked for health endpoint
|
2021-10-23 13:36:27 +02:00 |
|
Alejandro Celaya
|
c7a621cb31
|
Removed transactionality when dispatching async events, as they run in different processes with different db connections
|
2021-10-23 13:22:42 +02:00 |
|
Alejandro Celaya
|
e21f9dd1fb
|
Added forwardQuery prop to the SHortUrl serialization
|
2021-10-02 10:31:23 +02:00 |
|
Alejandro Celaya
|
9a31f53d4d
|
Updated to coding standard v2.2.0
|
2021-08-05 19:47:17 +02:00 |
|
Alejandro Celaya
|
883ac1007a
|
Updated to provisional hero-common v4.0
|
2021-08-04 18:46:19 +02:00 |
|
Alejandro Celaya
|
de81e81ecb
|
Created API test for Domain redirects
|
2021-08-03 19:43:30 +02:00 |
|
Alejandro Celaya
|
7c06633a67
|
Ensured default domain redirects cannot be edited through regular approach
|
2021-08-03 18:28:09 +02:00 |
|
Alejandro Celaya
|
9abf611d63
|
Created DomainResirectsAction unit test
|
2021-08-03 18:09:39 +02:00 |
|
Alejandro Celaya
|
565fe4c348
|
Added redirects to the list of domains
|
2021-08-03 17:00:26 +02:00 |
|
Alejandro Celaya
|
7b43403b1c
|
Fixed error when editing domain redirects for a new domain
|
2021-08-03 16:48:17 +02:00 |
|
Alejandro Celaya
|
9f25979b4c
|
Added validation to not found redirects for domain
|
2021-08-03 14:08:36 +02:00 |
|
Alejandro Celaya
|
b78660c685
|
Updated installer
|
2021-08-02 20:50:35 +02:00 |
|
Alejandro Celaya
|
6a40bbdcb5
|
Created new action to set redirects for a domain
|
2021-08-02 20:49:39 +02:00 |
|
Alejandro Celaya
|
4ef5ab7a90
|
Fixed wrong domains getting resolved for an API key roles
|
2021-08-02 20:49:39 +02:00 |
|
Alejandro Celaya
|
db93498ee6
|
Fixed merge conflicts
|
2021-07-30 18:19:32 +02:00 |
|
Alejandro Celaya
|
7b9ebbbb5f
|
Fixed use of ImplicitOptionsMiddleware with its new signature
|
2021-07-30 18:05:03 +02:00 |
|
Alejandro Celaya
|
8b75ad1e7f
|
Covered detached domains with redirects in domains list API test
|
2021-07-23 13:11:09 +02:00 |
|
Alejandro Celaya
|
24a6a0c23f
|
Added test for DomainRedirectCommand
|
2021-07-22 20:48:58 +02:00 |
|
Alejandro Celaya
|
021cecc216
|
Created command that allows configuring not found redirects for every domain
|
2021-07-21 21:09:33 +02:00 |
|
Alejandro Celaya
|
95770ac104
|
Increased phpstan level to 8
|
2021-07-20 12:51:07 +02:00 |
|
Alejandro Celaya
|
b8fa234dbb
|
Fixed some phpstan errors
|
2021-07-19 18:35:42 +02:00 |
|
Alejandro Celaya
|
bceea090ed
|
Increaed phpstan level to 7
|
2021-07-17 20:58:24 +02:00 |
|
Alejandro Celaya
|
9c6ba4bc61
|
More PHP 8 syntactic sugar
|
2021-05-23 12:37:53 +02:00 |
|
Alejandro Celaya
|
c01121d61a
|
Added nullsafe operator to simplify conditions
|
2021-05-23 12:31:10 +02:00 |
|
Alejandro Celaya
|
e0f0bb5523
|
Migrated all constructor props to property promotion when possible
|
2021-05-23 11:57:31 +02:00 |
|