[
{
"description"
:
"Proper UTF-16 surrogate pair handling: pattern"
,
"comment"
:
"Optional because .Net doesn't correctly handle 32-bit Unicode characters"
,
"schema"
: {
"pattern"
:
"^🐲*$"
},
"tests"
: [
{
"description"
:
"matches empty"
,
"data"
:
""
,
"valid"
:
true
},
{
"description"
:
"matches single"
,
"data"
:
"🐲"
,
"valid"
:
true
},
{
"description"
:
"matches two"
,
"data"
:
"🐲🐲"
,
"valid"
:
true
},
{
"description"
:
"doesn't match one"
,
"data"
:
"🐉"
,
"valid"
:
false
},
{
"description"
:
"doesn't match two"
,
"data"
:
"🐉🐉"
,
"valid"
:
false
},
{
"description"
:
"doesn't match one ASCII"
,
"data"
:
"D"
,
"valid"
:
false
},
{
"description"
:
"doesn't match two ASCII"
,
"data"
:
"DD"
,
"valid"
:
false
}
]
},
{
"description"
:
"Proper UTF-16 surrogate pair handling: patternProperties"
,
"comment"
:
"Optional because .Net doesn't correctly handle 32-bit Unicode characters"
,
"schema"
: {
"patternProperties"
: {
"^🐲*$"
: {
"type"
:
"integer"
}
}
},
"tests"
: [
{
"description"
:
"matches empty"
,
"data"
: {
""
: 1 },
"valid"
:
true
},
{
"description"
:
"matches single"
,
"data"
: {
"🐲"
: 1 },
"valid"
:
true
},
{
"description"
:
"matches two"
,
"data"
: {
"🐲🐲"
: 1 },
"valid"
:
true
},
{
"description"
:
"doesn't match one"
,
"data"
: {
"🐲"
:
"hello"
},
"valid"
:
false
},
{
"description"
:
"doesn't match two"
,
"data"
: {
"🐲🐲"
:
"hello"
},
"valid"
:
false
}
]
}
]