@@ -200,4 +200,49 @@ public function testGetNormalizerThrowsOnNotDefinedOption()
200
200
$ debug = new OptionsResolverIntrospector ($ resolver );
201
201
$ this ->assertSame ('bar ' , $ debug ->getNormalizer ('foo ' ));
202
202
}
203
+
204
+ public function testGetDeprecationMessage ()
205
+ {
206
+ $ resolver = new OptionsResolver ();
207
+ $ resolver ->setDefined ('foo ' );
208
+ $ resolver ->setDeprecated ('foo ' , 'The option "foo" is deprecated. ' );
209
+
210
+ $ debug = new OptionsResolverIntrospector ($ resolver );
211
+ $ this ->assertSame ('The option "foo" is deprecated. ' , $ debug ->getDeprecationMessage ('foo ' ));
212
+ }
213
+
214
+ public function testGetClosureDeprecationMessage ()
215
+ {
216
+ $ resolver = new OptionsResolver ();
217
+ $ resolver ->setDefined ('foo ' );
218
+ $ resolver ->setDeprecated ('foo ' , $ closure = function ($ value ) {});
219
+
220
+ $ debug = new OptionsResolverIntrospector ($ resolver );
221
+ $ this ->assertSame ($ closure , $ debug ->getDeprecationMessage ('foo ' ));
222
+ }
223
+
224
+ /**
225
+ * @expectedException \Symfony\Component\OptionsResolver\Exception\NoConfigurationException
226
+ * @expectedExceptionMessage No deprecation was set for the "foo" option.
227
+ */
228
+ public function testGetDeprecationMessageThrowsOnNoConfiguredValue ()
229
+ {
230
+ $ resolver = new OptionsResolver ();
231
+ $ resolver ->setDefined ('foo ' );
232
+
233
+ $ debug = new OptionsResolverIntrospector ($ resolver );
234
+ $ this ->assertSame ('bar ' , $ debug ->getDeprecationMessage ('foo ' ));
235
+ }
236
+
237
+ /**
238
+ * @expectedException \Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException
239
+ * @expectedExceptionMessage The option "foo" does not exist.
240
+ */
241
+ public function testGetDeprecationMessageThrowsOnNotDefinedOption ()
242
+ {
243
+ $ resolver = new OptionsResolver ();
244
+
245
+ $ debug = new OptionsResolverIntrospector ($ resolver );
246
+ $ this ->assertSame ('bar ' , $ debug ->getDeprecationMessage ('foo ' ));
247
+ }
203
248
}
0 commit comments