Add CompositeKey::clear().

This commit is contained in:
Felix Geyer 2012-01-11 23:59:50 +01:00
parent 279585fff4
commit 0ad1bf0a70
3 changed files with 18 additions and 0 deletions

View File

@ -36,6 +36,12 @@ CompositeKey::~CompositeKey()
qDeleteAll(m_keys);
}
void CompositeKey::clear()
{
qDeleteAll(m_keys);
m_keys.clear();
}
CompositeKey* CompositeKey::clone() const
{
return new CompositeKey(*this);

View File

@ -28,6 +28,7 @@ public:
CompositeKey();
CompositeKey(const CompositeKey& key);
~CompositeKey();
void clear();
CompositeKey* clone() const;
CompositeKey& operator=(const CompositeKey& key);

View File

@ -56,6 +56,17 @@ void TestKeys::testComposite()
QVERIFY(compositeKey2->transform(QByteArray(32, '\0'), 1).size() == 32);
delete compositeKey2;
CompositeKey* compositeKey3 = new CompositeKey();
CompositeKey* compositeKey4 = new CompositeKey();
compositeKey3->addKey(PasswordKey("test"));
compositeKey3->clear();
QCOMPARE(compositeKey3->rawKey(), compositeKey4->rawKey());
delete compositeKey3;
delete compositeKey4;
}
void TestKeys::testFileKey()