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