Zdeněk Drahoš
2c890ff93b
Hotfix testing private service in Symfony < 5.3
...
https://github.com/nelmio/NelmioApiDocBundle/runs/3031148906?check_suite_focus=true#step:7:106
Error: Call to undefined method Nelmio\ApiDocBundle\Tests\Render\Html\GetNelmioAssetTest::getContainer()
https://symfony.com/blog/new-in-symfony-4-1-simpler-service-testing
In practice, tests based on WebTestCase and KernelTestCase now access to a special container via the static::$container property that allows fetching non-removed private services:
https://github.com/symfony/symfony/blob/5.3/CHANGELOG-5.3.md#changelog-for-53x
feature #40366 [FrameworkBundle] Add KernelTestCase::getContainer() (Nyholm)
static $container @deprecated since Symfony 5.3, use static::getContainer() instead
2021-07-10 18:00:11 +02:00
Zdeněk Drahoš
9cb6006b69
Refactoring including assets
2021-06-27 10:00:43 +02:00
Zdeněk Drahoš
5124f07ece
Enable dumping html docs with cdn and offline assets
2021-06-27 09:24:35 +02:00
Zdeněk Drahoš
4ebee933c4
Extract rendering docs from command and controller
2021-06-27 08:41:33 +02:00
Asmir Mustafic
985b43fb60
log name collisions ( #1862 )
2021-08-17 21:51:11 +02:00
Asmir Mustafic
0bcdc59b88
add missing typehint
2021-08-16 15:19:26 +02:00
Asmir Mustafic
497afa1361
improve testing by checking explicitly that collisions are not generated
2021-08-16 13:11:59 +02:00
Guilhem Niot
be014ff11b
Merge pull request #1830 from nelmio/ADDPROP
...
Fix additionalProperties support
2021-08-03 09:35:12 +02:00
Alexander Melihov
2df454c0c3
Compound validation rule support ( #1818 )
...
* Compound validation rule support
* Compound validation rule support
* Compound validation rule support
* Compound validation rule support
* Remove duplicated method
* error during merge
* wrong variable name
* Simplify PR
* Fix CS
* Use same indentation as before
Co-authored-by: Guilhem Niot <guilhem@gniot.fr>
Co-authored-by: Guilhem Niot <guilhem.niot@gmail.com>
2021-06-16 09:59:06 +02:00
Guilhem Niot
ee00f02a48
Fix additionalProperties support
2021-06-07 19:23:02 +02:00
Guilhem Niot
d8a7859484
Explictly enable property access in the tests (related to https://github.com/symfony/symfony/pull/40140 , it is a dev dependency)
2021-06-07 19:04:16 +02:00
Christopher Davis
5f1645db40
Check min/max On Range Constraints Before Use
...
Previously it was possible to set only one of the min or max values and
get a schema like:
"property": {
"type": "integer",
"minimum": 1,
"maximum": 0
}
Also possible that `Range` would be used with {min,max}PropertyPath and
you'd get a schema with both minimum and max set to zero.
With the checks in place, that's no longer the case.
2021-05-25 06:44:16 -05:00
Christopher Davis
7fd8c0ecfe
Check if min
and max
Are Set on Count Constraints
...
It's possible to set a count constraint with a min but no max, which
would generate an OpenAPI Schema like...
"property": {
"type": "array",
"minItems": 1,
"maxItems": 0
}
With this change the schema will only set `minItems` in that example.
2021-05-25 06:44:09 -05:00
Guilhem Niot
bf77277f2f
Merge pull request #1788 from raziel057/patch-1
...
Fix Open API doc for DateTime requirements
2021-03-26 22:54:00 +01:00
tlallement
0e7ebe5650
Small fixes for RFC3339 and new assertion
2021-03-24 18:01:32 +01:00
Thomas Lallement
a72588861f
Add support for 'c' format
2021-03-16 11:05:00 +01:00
Thomas Lallement
73ad2e3cdf
Fix property naming
2021-03-16 10:42:37 +01:00
Thomas Lallement
7f9b00d620
Code improvements and add unit test
2021-03-16 10:40:12 +01:00
Javier Spagnoletti
b08bf79212
Fix calls to nonexistent method ControllerReflector::getReflectionClassAndMethod()
2021-03-14 17:19:25 +01:00
Guilhem Niot
f857061475
Merge pull request #1791 from phansys/useless_checks
...
Remove old useless configurations from tests
2021-03-14 17:08:49 +01:00
Alexander M. Turek
16221de418
Added support for constraint attributes
2021-03-12 10:57:40 +01:00
Javier Spagnoletti
64952d155c
Remove old useless configurations from tests
2021-03-12 00:01:22 -03:00
Dmitry Pchelintsev
8f646b8484
allow areas annotation for controller class ( #1528 )
...
Co-authored-by: pchol <spchols@gmail.com>
Co-authored-by: Guilhem Niot <guilhem@gniot.fr>
2021-03-03 20:47:08 +01:00
Christopher Davis
883d7b6c89
Apply enum
from Choice Constraints to Items When Choice is Multiple ( #1784 )
...
* Apply `enum` from Choice Constraints to Items When Choice is Multiple
Otherwise JSON schema like this is generated:
```
"property": {
"type": "array",
"enum": ["one", "two", "three"],
"items": {
"type": "string"
}
}
```
With this change, however, this schema is generated:
```
"property": {
"type": "array",
"items": {
"type": "string",
"enum": ["one", "two", "three"]
}
}
```
A possible downside here is that the symfony constraint stuff happens
before types are figured out from PHPDoc. So it's _possible_ to end up
with something that won't validated. Take something like this:
```
/**
* @Assert\Choice(multiple=true, choices={"..."})
* @var string
*/
```
This would generate:
```
"property": {
"type": "string",
"items": {
"enum": ["..."]
}
}
```
* Fix CS
* cs
* more cs
* fix tests
Co-authored-by: Guilhem Niot <guilhem@gniot.fr>
2021-02-19 09:41:32 +01:00
Guilhem Niot
ceda09fe85
Merge pull request #1781 from chrisguitarguy/fix_lengths
...
Check Min and Max in Length Constraints Before Setting in Schemas
2021-02-16 01:03:59 +01:00
Guilhem Niot
d074e05436
Merge pull request #1777 from saleh199/add_yaml_doc
...
Add Yaml Documentation
2021-02-16 01:01:33 +01:00
Christopher Davis
530311c489
Check Min and Max in Length Constraints Before Setting in Schemas
...
Sometimes folks will set a `min` length without a max, for instance and
the generated open api schema would previously have been nonsense:
```
"property": {
"type":"string",
"maxLength":0,
"minLength":1
}
```
2021-02-10 10:33:55 -06:00
Guilhem Niot
1b4437d88a
Merge pull request #1776 from chrisguitarguy/discriminator_field
...
Support Polymorphism via the Symfony Discriminator Map
2021-02-08 22:46:49 +01:00
Christopher Davis
87004fc428
Don't Use ref
in Discriminator mapping
...
Instead just include the schema ref directly per the documentation.
2021-02-08 15:39:14 -06:00
Saleh Saeed
2b387e80f2
Fix styleci
2021-02-01 23:34:02 +01:00
Saleh Saeed
46ef005787
Add Yaml Documentation
...
Fixes #1613
2021-02-01 23:29:53 +01:00
Christopher Davis
ac7e29da21
Fix CS
2021-02-01 09:50:15 -06:00
Christopher Davis
9299c0e52e
Support OpenAPI Polymorphism in ObjectModelDescriber
...
This is the default "symfony support" class, so seems like the right
place.
2021-02-01 08:56:31 -06:00
Christopher Davis
d8626c2735
Introduce a Trait to Build OpenAPI Discriminators
...
See https://swagger.io/docs/specification/data-models/inheritance-and-polymorphism/
This is the adapter layer that will be included in the various model
describers. The creation of the discriminator and the `oneOf` values is
a little finicky and I wanted it to be tested and centralized.
2021-02-01 08:37:20 -06:00
Paul des Garets
eeb0b4efba
Support oauth2 scopes in Security annotation
2021-01-26 19:08:53 +01:00
Guilhem Niot
42365c71cc
Fix a regression about manual paths in operation no longer being taken into account
2020-12-27 19:14:14 +01:00
Guilhem Niot
ba3fe1cdfa
Merge branch '3.x'
2020-12-17 00:06:17 +01:00
Guilhem Niot
3895e17fe4
Fix exposure of private/protected methods
2020-12-16 23:46:29 +01:00
Guilhem Niot
909a7934b4
Merge branch '3.x'
2020-12-10 22:31:55 +01:00
Guilhem Niot
0a3785fd26
Fix cs
2020-12-10 22:30:50 +01:00
Guilhem Niot
363fd26f7c
Merge branch '3.x'
2020-12-10 22:28:55 +01:00
Guilhem Niot
6d995a6e03
Add php 8 support ( #1745 )
...
* Add php 8 support
* Ignore platform reqs
* Change php constraint
* Use vendor/bin/simple-phpunit directly
* Remove willdurand/hateoas-bundle when testing php8
* Merge 3.x
* Move to github actions
* Fix the tests
* Change ./phpunit permissions
* Update deprecations policy
2020-12-10 21:59:36 +01:00
Guilhem Niot
90f835f1ef
Allow to not document form types fields ( #1752 )
...
* Allow the usage of `@SWG\Definition` on form types
* Allow to not document form types fields
* Reduce the number of changes
2020-12-02 15:38:38 +01:00
Guilhem Niot
a01fd1e4f0
Fix error
2020-11-28 16:11:05 +01:00
Guilhem Niot
68bf1670f3
Fix CS
2020-11-20 17:10:21 +01:00
Guilhem Niot
0912c85a0d
Improve error when the items type of an array is not specified
2020-11-20 17:06:56 +01:00
Guilhem Niot
e9914097f7
Merge pull request #1740 from nelmio/refparams
...
Fix the detection of references in the RouteMetadataDescriber
2020-11-03 10:32:13 +01:00
Guilhem Niot
412eff9805
Test the support of QueryParam::$map
2020-11-03 10:29:37 +01:00
Guilhem Niot
e1700ba4b5
Fix the detection of references in the RouteMetadataDescriber
2020-11-01 11:41:49 +01:00
Lucas dos Santos Abreu
b022f6b219
(feat): add utf-8 charset to response
...
`swagger-ui-bundle` is very sensible to encoding changes because of the
RegExp performed.
ensuring UTF-8 on the response prevents end-user config to break it.
the annotations already needs to be UTF-8 compatible to generate the
JSON, so it should not break users applications.
2020-10-02 14:04:16 -03:00