BUG Altered test case to prove issue with old DataObject::write has been fixed. Previously calling write with $writeComponents = true (3.1 branch) would only work if the object had no changed fields.