docs
evals
scenario-1
scenario-10
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "This criteria evaluates how well the engineer uses the plist package to handle dictionary key-value pairs with missing or undefined values, specifically testing their understanding of plist.parse() and plist.build() functions for edge cases in dictionary handling.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Uses plist.parse()",
"description": "Implementation calls plist.parse() function to parse plist XML strings into JavaScript objects in the parseConfig function",
"max_score": 20
},
{
"name": "Uses plist.build()",
"description": "Implementation calls plist.build() function to convert JavaScript objects into plist XML strings in the buildConfig function",
"max_score": 20
},
{
"name": "Handles missing values",
"description": "Correctly leverages plist.parse()'s default behavior where dictionary keys without corresponding value elements result in empty string values in the returned JavaScript object",
"max_score": 25
},
{
"name": "Handles undefined values",
"description": "Correctly leverages plist.build()'s default behavior where undefined values in JavaScript objects result in keys being present in the plist XML output without corresponding value elements",
"max_score": 25
},
{
"name": "Correct return types",
"description": "parseConfig correctly returns the JavaScript object produced by plist.parse(), and buildConfig correctly returns the XML string produced by plist.build()",
"max_score": 10
}
]
}