Skip to content
  • Daniel Vrátil's avatar
    Extend IdentityTest and fix all bugs it discovered · 2c4cf6d5
    Daniel Vrátil authored
    Fixes main serialization and deserialization of Identity to raw data.
    The serializer was serializing QStrings, while the deserializer was
    expecting QVariants, which did not behave as expected. The serializer
    now serializes everything as QVariants too.
    
    Fixes serialization of Signature - signature was never being stored
    in mPropertiesMap, so the key was always empty. We instead serialize
    mSignature directly. Calls to setSignature() etc. now also insert the
    mSignature into the mPropertiesMap.
    
    Improves operator==() to handle comparision between manually created
    and deserialized Identity. Deserialization will fill mPropertiesMap
    with lots of empty QVariants, but the default ctor will not so simple
    mPropertiesMap == other.mPropertiesMap comparision was failing. The
    algorithm now assumes that if a key is not present in one map but
    is present in another the maps are considered equal as long as the
    value is invalid.
    
    Differential Revision: https://phabricator.kde.org/D2254
    2c4cf6d5