@@ -1920,6 +1920,76 @@ public void DeserializePatternPropertiesExtensionInV3AssignsPatternPropertiesPro
19201920 Assert . True ( schema . Extensions is null || ! schema . Extensions . ContainsKey ( "x-jsonschema-patternProperties" ) ) ;
19211921 }
19221922
1923+ [ Fact ]
1924+ public void DeserializeExamplesExtensionInV2AssignsExamplesProperty ( )
1925+ {
1926+ var jsonContent = """
1927+ {
1928+ "swagger": "2.0",
1929+ "info": { "title": "Test", "version": "1.0" },
1930+ "paths": {},
1931+ "definitions": {
1932+ "TestSchema": {
1933+ "type": "string",
1934+ "example": "primary example",
1935+ "x-jsonschema-examples": [
1936+ "secondary example",
1937+ 42
1938+ ]
1939+ }
1940+ }
1941+ }
1942+ """ ;
1943+
1944+ var readResult = OpenApiDocument . Parse ( jsonContent , "json" ) ;
1945+
1946+ Assert . Empty ( readResult . Diagnostic . Errors ) ;
1947+ var schema = readResult . Document . Components . Schemas [ "TestSchema" ] ;
1948+ Assert . Equal ( "primary example" , schema . Example ? . GetValue < string > ( ) ) ;
1949+ Assert . NotNull ( schema . Examples ) ;
1950+ Assert . Collection (
1951+ schema . Examples ,
1952+ example => Assert . Equal ( "secondary example" , example . GetValue < string > ( ) ) ,
1953+ example => Assert . Equal ( 42 , example . GetValue < int > ( ) ) ) ;
1954+ Assert . True ( schema . Extensions is null || ! schema . Extensions . ContainsKey ( OpenApiConstants . JsonSchemaExamplesExtension ) ) ;
1955+ }
1956+
1957+ [ Fact ]
1958+ public void DeserializeExamplesExtensionInV3AssignsExamplesProperty ( )
1959+ {
1960+ var jsonContent = """
1961+ {
1962+ "openapi": "3.0.0",
1963+ "info": { "title": "Test", "version": "1.0" },
1964+ "paths": {},
1965+ "components": {
1966+ "schemas": {
1967+ "TestSchema": {
1968+ "type": "string",
1969+ "example": "primary example",
1970+ "x-jsonschema-examples": [
1971+ "secondary example",
1972+ 42
1973+ ]
1974+ }
1975+ }
1976+ }
1977+ }
1978+ """ ;
1979+
1980+ var readResult = OpenApiDocument . Parse ( jsonContent , "json" ) ;
1981+
1982+ Assert . Empty ( readResult . Diagnostic . Errors ) ;
1983+ var schema = readResult . Document . Components . Schemas [ "TestSchema" ] ;
1984+ Assert . Equal ( "primary example" , schema . Example ? . GetValue < string > ( ) ) ;
1985+ Assert . NotNull ( schema . Examples ) ;
1986+ Assert . Collection (
1987+ schema . Examples ,
1988+ example => Assert . Equal ( "secondary example" , example . GetValue < string > ( ) ) ,
1989+ example => Assert . Equal ( 42 , example . GetValue < int > ( ) ) ) ;
1990+ Assert . True ( schema . Extensions is null || ! schema . Extensions . ContainsKey ( OpenApiConstants . JsonSchemaExamplesExtension ) ) ;
1991+ }
1992+
19231993 [ Fact ]
19241994 public void DeserializeContainsExtensionsInV3AssignsContainsProperties ( )
19251995 {
0 commit comments