1. plain values ok host ok port 2. an empty value followed by a comment must be EMPTY, not the comment ok DB_SOCKET is absent or empty 3. trailing inline comment is stripped ok mode 4. a quoted password containing # survives intact ok password with hash 4b. escaped quotes inside a double-quoted value round-trip ok escaped double quotes unescaped ok escaped backslashes unescaped ok single quotes stay literal 5. an unquoted value with no space before # keeps the hash ok no-space hash is part of the value 6. quoted values keep their spaces; quotes are removed ok user agent 7. full-line comments and blanks are ignored ok only A parsed ok A value 8. a value containing = is preserved (base64, DSNs) ok base64 padding kept 9. typed getters ok int ok float ok bool true ok bool off ok empty falls back to the default ok has() is false for empty ok missing key default 20 passed, 0 failed