I believe we've run into some gotchas in the past where these values had types that were more complex than just strings (arrays, hashes).  You might want to look at a few raw puppet reports that trigger this behavior and see how they are currently being dealt with when we generate the JSON for the "store report" command, and then include an example of that scenario in your test data.