This is a dump of a simple class which is valid in structure but is overall
invalid. That being said, the system should still have no trouble parsing and
dumping it.

The salient bit of parsing tested here is that the class has a series of
fields, each with a single ConstantValue attribute, which points at one
of the appropriate sorts of cpes.
