         if !resultsDirty
             { return }
 
-        let json = ["results": results.toJson["children"]]
+        let json = ["results": results.toJson["children"]!]
         let jsonData = try! JSONSerialization.data(withJSONObject: json, options: [])
         if !((try? jsonData.write(to: URL(fileURLWithPath: "/tmp/siesta-spec-results.json"), options: [.atomic])) != nil)
             { print("unable to write spec results json") }


    var toJson: [String:Any]
        {
        var json: [String:Any] = ["name": name as AnyObject]
        if let callsite = callsite
            {
            json["file"] = callsite.file

        if let passed = passed
            { json["passed"] = passed }
        if !children.isEmpty
            { json["children"] = children.map { $0.toJson } }
        return json
        }
    }
