@@ -82,6 +82,7 @@ public function contextMetadataDummyProvider(): array
82
82
return [
83
83
[ContextMetadataDummy::class],
84
84
[ContextChildMetadataDummy::class],
85
+ [ClassAndPropertyContextMetadataDummy::class],
85
86
];
86
87
}
87
88
@@ -100,7 +101,7 @@ public function testContextDenormalizeWithNameConverter()
100
101
class ContextMetadataDummy
101
102
{
102
103
/**
103
- * @var \DateTime
104
+ * @var \DateTimeImmutable
104
105
*/
105
106
#[Groups(['extended ' , 'simple ' ])]
106
107
#[Context([DateTimeNormalizer::FORMAT_KEY => \DateTimeInterface::RFC3339 ])]
@@ -118,7 +119,7 @@ class ContextMetadataDummy
118
119
class ContextChildMetadataDummy
119
120
{
120
121
/**
121
- * @var \DateTime
122
+ * @var \DateTimeImmutable
122
123
*/
123
124
#[Groups(['extended ' , 'simple ' ])]
124
125
#[DummyContextChild([DateTimeNormalizer::FORMAT_KEY => \DateTimeInterface::RFC3339 ])]
@@ -133,10 +134,28 @@ class ContextChildMetadataDummy
133
134
public $ date ;
134
135
}
135
136
137
+ #[Context(context: [DateTimeNormalizer::FORMAT_KEY => \DateTimeInterface::RFC3339 ])]
138
+ #[Context(
139
+ context: [DateTimeNormalizer::FORMAT_KEY => \DateTimeInterface::RFC3339_EXTENDED ],
140
+ groups: ['extended ' ],
141
+ )]
142
+ class ClassAndPropertyContextMetadataDummy
143
+ {
144
+ /**
145
+ * @var \DateTimeImmutable
146
+ */
147
+ #[Groups(['extended ' , 'simple ' ])]
148
+ #[Context(
149
+ denormalizationContext: [DateTimeNormalizer::FORMAT_KEY => 'd/m/Y ' ],
150
+ groups: ['simple ' ],
151
+ )]
152
+ public $ date ;
153
+ }
154
+
136
155
class ContextMetadataNamingDummy
137
156
{
138
157
/**
139
- * @var \DateTime
158
+ * @var \DateTimeImmutable
140
159
*/
141
160
#[Context([DateTimeNormalizer::FORMAT_KEY => 'd/m/Y ' ])]
142
161
public $ createdAt ;
0 commit comments