diff options
author | Wolf Bergenheim <ext-wolf.2.bergenheim@nokia.com> | 2010-02-02 15:51:41 +0200 |
---|---|---|
committer | Wolf Bergenheim <ext-wolf.2.bergenheim@nokia.com> | 2010-02-02 15:51:41 +0200 |
commit | 8bff62c335842b4c850cc09716e79c2f556247c7 (patch) | |
tree | 281dd5c4a92087f6308e3fb540aba62d7fd272c2 /tests/test-resource-set | |
parent | b7d622788b55d30d51ce30bd58634763fddf66fc (diff) |
directory structure changes
Diffstat (limited to 'tests/test-resource-set')
-rw-r--r-- | tests/test-resource-set/test-resource-set.cpp | 172 | ||||
-rw-r--r-- | tests/test-resource-set/test-resource-set.h | 50 | ||||
-rw-r--r-- | tests/test-resource-set/test-resource-set.pro | 21 |
3 files changed, 243 insertions, 0 deletions
diff --git a/tests/test-resource-set/test-resource-set.cpp b/tests/test-resource-set/test-resource-set.cpp new file mode 100644 index 0000000..e9ee74b --- /dev/null +++ b/tests/test-resource-set/test-resource-set.cpp @@ -0,0 +1,172 @@ +#include "test-resource-set.h" + +Resource * TestResourceSet::resourceFromType(ResourceType type) +{ + switch(type) { + case AudioPlaybackType: + return audioResource; + case AudioRecorderType: + return audioRecorderResource; + case VideoPlaybackType: + return videoResource; + case VideoRecorderType: + return videoRecorderResource; + case VibraType: + return vibraResource; + case LedsType: + return ledsResource; + case BacklightType: + return backlightResource; + case SystemButtonType: + return systemButtonResource; + case LockButtonType: + return lockButtonResource; + case ScaleButtonType: + return scaleButtonResource; + case SnapButtonType: + return snapButtonResource; + case LensCoverType: + return lensCoverResource; + default: + return NULL; + } +} + +using namespace ResourcePolicy; + +TestResourceSet::TestResourceSet() +{ + audioResource = new AudioResource; + audioRecorderResource = new AudioRecorderResource; + videoResource = new VideoResource; + videoRecorderResource = new VideoRecorderResource; + vibraResource = new VibraResource; + ledsResource = new LedsResource; + backlightResource = new BacklightResource; + systemButtonResource = new SystemButtonResource; + lockButtonResource = new LockButtonResource; + scaleButtonResource = new ScaleButtonResource; + snapButtonResource = new SnapButtonResource; + lensCoverResource = new LensCoverResource; +} + +TestResourceSet::~TestResourceSet() +{ + delete audioResource; + delete audioRecorderResource; + delete videoResource; + delete videoRecorderResource; + delete vibraResource; + delete ledsResource; + delete backlightResource; + delete systemButtonResource; + delete lockButtonResource; + delete scaleButtonResource; + delete snapButtonResource; + delete lensCoverResource; +} + +void TestResourceSet::init() +{ + resourceSet = new ResourceSet("player"); +} + +void TestResourceSet::cleanup() +{ + delete resourceSet; +} + +void TestResourceSet::testIdentifier() +{ + ResourceSet otherSet("game"); + + bool identifiersAreUnique = (resourceSet->id() != otherSet.id()); + QVERIFY(identifiersAreUnique); + QVERIFY(resourceSet->id() == (quint32)resourceSet); + QVERIFY(otherSet.id() == (quint32)&otherSet); +} + +void TestResourceSet::testAddResource() +{ + for(int i=0;i<NumberOfTypes;i++) { + ResourceType type = (ResourceType)i; + Resource *resource = resourceFromType(type); + resourceSet->addResource(resource); + bool setContainsGivenResource = resourceSet->contains(type); + QVERIFY(setContainsGivenResource); + } +} + +void TestResourceSet::testAddResources() +{ + resourceSet->addResource(audioResource); + + bool setContainsAudioResource = resourceSet->contains(AudioPlaybackType); + QVERIFY(setContainsAudioResource); + QList<Resource *> resources; + + resources << audioResource << videoResource; + + resourceSet->addResources(resources); + + QVERIFY(resourceSet->contains(AudioPlaybackType)); + QVERIFY(resourceSet->contains(VideoPlaybackType)); +} + +void TestResourceSet::testDelResource() +{ + resourceSet->addResource(audioResource); + resourceSet->addResource(vibraResource); + resourceSet->delResource(AudioPlaybackType); + + bool setDoesNotContainAudioResource = !resourceSet->contains(AudioPlaybackType); + QVERIFY(setDoesNotContainAudioResource); + QVERIFY(resourceSet->contains(VibraType)); +} + +void TestResourceSet::testContainsSingle() +{ + QList<Resource *> resources; + + resources << audioResource << videoResource << audioRecorderResource; + resourceSet->addResources(resources); + QList<Resource *> resourcesInSet = resourceSet->resources(); + + bool containsVideoPlayback = resourceSet->contains(VideoPlaybackType); + QVERIFY(containsVideoPlayback); +} + +void TestResourceSet::testDoesNotContainSingle() +{ + QList<Resource *> resources; + + resources << audioResource << videoResource; + resourceSet->addResources(resources); + QList<Resource *> resourcesInSet = resourceSet->resources(); + + bool doesNotContainVideoRecorder = !resourceSet->contains(VideoRecorderType); + QVERIFY(doesNotContainVideoRecorder); +} + + +void TestResourceSet::testContainsSet() +{ + QList<ResourceType> types, subset; + QList<Resource *> resources; + + types << AudioPlaybackType << VideoPlaybackType + << AudioRecorderType << VideoRecorderType << LensCoverType; + subset << AudioPlaybackType << VideoPlaybackType << LensCoverType; + + resources << audioResource << videoResource + << audioRecorderResource << videoRecorderResource << lensCoverResource; + + resourceSet->addResources(resources); + + bool containsAll = resourceSet->contains(types); + bool containsSubset = resourceSet->contains(subset); + QVERIFY(containsAll); + QVERIFY(containsSubset); +} +QTEST_MAIN(TestResourceSet) + diff --git a/tests/test-resource-set/test-resource-set.h b/tests/test-resource-set/test-resource-set.h new file mode 100644 index 0000000..0a3eeef --- /dev/null +++ b/tests/test-resource-set/test-resource-set.h @@ -0,0 +1,50 @@ +#ifndef TEST_RESOURCE_SET_H +#define TEST_RESOURCE_SET_H + +#include <QtTest/QTest> +#include "resource-set.h" + +using namespace ResourcePolicy; + +class TestResourceSet: public QObject +{ + Q_OBJECT +private: + ResourceSet *resourceSet; + + AudioResource *audioResource; + AudioRecorderResource *audioRecorderResource; + Resource *videoResource; + Resource *videoRecorderResource; + Resource *vibraResource; + Resource *ledsResource; + Resource *backlightResource; + Resource *systemButtonResource; + Resource *lockButtonResource; + Resource *scaleButtonResource; + Resource *snapButtonResource; + Resource *lensCoverResource; + + Resource * resourceFromType(ResourceType type); +public: + TestResourceSet(); + ~TestResourceSet(); + + +private slots: + + void init(); + void cleanup(); + + void testIdentifier(); + + void testAddResource(); + void testAddResources(); + void testDelResource(); + + void testContainsSingle(); + void testDoesNotContainSingle(); + void testContainsSet(); +}; + +#endif diff --git a/tests/test-resource-set/test-resource-set.pro b/tests/test-resource-set/test-resource-set.pro new file mode 100644 index 0000000..ad6d90d --- /dev/null +++ b/tests/test-resource-set/test-resource-set.pro @@ -0,0 +1,21 @@ +BASE = .. +TEMPLATE = app +TARGET = test-resource-set +DESTDIR = build +DEPENDPATH += $${BASE}/include $${BASE}/src . +INCLUDEPATH += $${BASE}/src $${BASE}/include + +# Input +HEADERS += $${BASE}/include/resources.h $${BASE}/include/resource-set.h test-resource-set.h +SOURCES += $${BASE}/src/resource.cpp $${BASE}/src/resources.cpp $${BASE}/src/resource-set.cpp test-resource-set.cpp + +OBJECTS_DIR = build +MOC_DIR = build + +CONFIG += qt qtestlib debug warn_on +QT -= gui + +# Install directives +INSTALLBASE = /usr +target.path = $$INSTALLBASE/share/libresourceqt/tests +INSTALLS = target |