From 8bff62c335842b4c850cc09716e79c2f556247c7 Mon Sep 17 00:00:00 2001 From: Wolf Bergenheim Date: Tue, 2 Feb 2010 15:51:41 +0200 Subject: directory structure changes --- tests/Makefile | 21 -- .../test-resource-engine/test-resource-engine.cpp | 62 +++++ tests/test-resource-engine/test-resource-engine.h | 32 +++ .../test-resource-engine/test-resource-engine.pro | 29 +++ tests/test-resource-set.cpp | 172 ------------- tests/test-resource-set.h | 50 ---- tests/test-resource-set.pro | 21 -- tests/test-resource-set/test-resource-set.cpp | 172 +++++++++++++ tests/test-resource-set/test-resource-set.h | 50 ++++ tests/test-resource-set/test-resource-set.pro | 21 ++ tests/test-resource.cpp | 281 --------------------- tests/test-resource.h | 54 ---- tests/test-resource.pro | 21 -- tests/test-resource/test-resource.cpp | 281 +++++++++++++++++++++ tests/test-resource/test-resource.h | 54 ++++ tests/test-resource/test-resource.pro | 21 ++ 16 files changed, 722 insertions(+), 620 deletions(-) delete mode 100644 tests/Makefile create mode 100644 tests/test-resource-engine/test-resource-engine.cpp create mode 100644 tests/test-resource-engine/test-resource-engine.h create mode 100644 tests/test-resource-engine/test-resource-engine.pro delete mode 100644 tests/test-resource-set.cpp delete mode 100644 tests/test-resource-set.h delete mode 100644 tests/test-resource-set.pro create mode 100644 tests/test-resource-set/test-resource-set.cpp create mode 100644 tests/test-resource-set/test-resource-set.h create mode 100644 tests/test-resource-set/test-resource-set.pro delete mode 100644 tests/test-resource.cpp delete mode 100644 tests/test-resource.h delete mode 100644 tests/test-resource.pro create mode 100644 tests/test-resource/test-resource.cpp create mode 100644 tests/test-resource/test-resource.h create mode 100644 tests/test-resource/test-resource.pro (limited to 'tests') diff --git a/tests/Makefile b/tests/Makefile deleted file mode 100644 index 20ae9ef..0000000 --- a/tests/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -QMAKE = qmake -MAKEFILES = $(patsubst %.pro,%.make,$(wildcard *.pro)) -MAKEOVERRIDES = - -%.make: %.pro - $(QMAKE) -o $@ $< - -tests: all - find build -type f -name 'test-*' -exec sh -c "if test -x {}; then {}; fi" \; - -clean: - $(RM) $(MAKEFILES) - $(RM) -r build - -all: $(MAKEFILES) - for makefile in $(MAKEFILES); do $(MAKE) -f "$$makefile" all; done - -install: $(MAKEFILES) - for makefile in $(MAKEFILES); do $(MAKE) -f "$$makefile" install; done - -.phony: install tests all clean diff --git a/tests/test-resource-engine/test-resource-engine.cpp b/tests/test-resource-engine/test-resource-engine.cpp new file mode 100644 index 0000000..5c95224 --- /dev/null +++ b/tests/test-resource-engine/test-resource-engine.cpp @@ -0,0 +1,62 @@ +#include "test-resource-engine.h" +#include + +using namespace ResourcePolicy; + +TestResourceEngine::TestResourceEngine() + : resourceEngine(NULL), resourceSet(NULL), + audioPlayback(AudioPlaybackResource), videoPlayback(VideoPlaybackResource), + audioRecorder(AudioRecorderResource), videoRecorder(VideoRecorderResource) +{ + resourceSet = new ResourceSet("player", this); + resourceSet->addResource(audioPlayback); + resourceSet->addResource(videoPlayback); + resourceSet->addResource(audioRecorder); + resourceSet->addResource(videoRecorder); +} + +TestResourceEngine::~TestResourceEngine() +{ +} + +void TestResourceEngine::init() +{ + resourceEngine = new ResourceEngine(resourceSet); + bool initializeSucceeded = resourceEngine->initialize(); + QVERIFY(!resourceEngine->isConnected()); + QVERIFY(initializeSucceeded); +} + +void TestResourceEngine::testConnect() +{ + bool connectIsSuccessful = resourceEngine->connect(); + QVERIFY(connectIsSuccessful); +} + +QTEST_MAIN(TestResourceEngine) + +//////////////////////////////////////////////////////////////// + +resconn_t* resproto_init(resproto_role_t role, resproto_transport_t transport, ...) +{ + resconn_t *resourceConnection; + resconn_linkup_t callbackFunction; + DBusConnection *dbusConnection, systemBus; + va_list args; + + va_start(); + callbackFunction = va_arg(args, resconn_linkup_t); + dbusConnection = va_arg(args, DBusConnection *); + va_end(); + + systemBus = dbus_bus_get(DBUS_BUS_SYSTEM); + + QVERIFY(callbackFunction != NULL); + QVERIFY(dbusConnection == systemBus); + QVERIFY(role == RESPROTO_ROLE_CLIENT); + QVERIFY(transport == RESPROTO_TRANSPORT_DBUS); + + resourceConnection =(resconn_t *) calloc(1, sizeof(resconn_t)); + + return resourceConnection; +} diff --git a/tests/test-resource-engine/test-resource-engine.h b/tests/test-resource-engine/test-resource-engine.h new file mode 100644 index 0000000..5484a05 --- /dev/null +++ b/tests/test-resource-engine/test-resource-engine.h @@ -0,0 +1,32 @@ +#ifndef TEST_RESOURCE_ENGINE_H +#define TEST_RESOURCE_ENGINE_H + +#include +#include "resource-engine.h" + +using namespace ResourcePolicy; + +class TestResourceEngine: public QObject +{ + Q_OBJECT + friend resconn_t* resproto_init(resproto_role_t, resproto_transport_t, ...); +private: + ResourceEngine *resourceEngine; + ResourceSet *resourceSet; + Resource audioPlayback; + Resource videoPlayback; + Resource audioRecorder; + Resource videoRecorder; + bool libresourceInitialized; +public: + TestResourceEngine(); + ~TestResourceEngine(); +public slots: + +private slots: + void init(); + + void testConnect(); +}; + +#endif diff --git a/tests/test-resource-engine/test-resource-engine.pro b/tests/test-resource-engine/test-resource-engine.pro new file mode 100644 index 0000000..9413609 --- /dev/null +++ b/tests/test-resource-engine/test-resource-engine.pro @@ -0,0 +1,29 @@ +BASE = .. +TEMPLATE = app +TARGET = test-resource-engine +DESTDIR = build +DEPENDPATH += $${BASE}/include $${BASE}/src . +INCLUDEPATH += $${BASE}/src $${BASE}/include $${BASE}/../libresource/src + +# Input +HEADERS += $${BASE}/include/resource.h \ + $${BASE}/include/resource-set.h \ + $${BASE}/src/resource-engine.h \ + test-resource-engine.h + +SOURCES += $${BASE}/src/resource.cpp \ + $${BASE}/src/resource-set.cpp \ + $${BASE}/src/resource-engine.cpp \ + test-resource-engine.cpp + +OBJECTS_DIR = build +MOC_DIR = build + +CONFIG += qt qtestlib debug warn_on link_pkgconfig +QT -= gui +PKGCONFIG += dbus-1 + +# Install directives +INSTALLBASE = /usr +target.path = $${INSTALLBASE}/share/libresourceqt/tests +INSTALLS = target diff --git a/tests/test-resource-set.cpp b/tests/test-resource-set.cpp deleted file mode 100644 index e9ee74b..0000000 --- a/tests/test-resource-set.cpp +++ /dev/null @@ -1,172 +0,0 @@ -#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;iaddResource(resource); - bool setContainsGivenResource = resourceSet->contains(type); - QVERIFY(setContainsGivenResource); - } -} - -void TestResourceSet::testAddResources() -{ - resourceSet->addResource(audioResource); - - bool setContainsAudioResource = resourceSet->contains(AudioPlaybackType); - QVERIFY(setContainsAudioResource); - QList 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 resources; - - resources << audioResource << videoResource << audioRecorderResource; - resourceSet->addResources(resources); - QList resourcesInSet = resourceSet->resources(); - - bool containsVideoPlayback = resourceSet->contains(VideoPlaybackType); - QVERIFY(containsVideoPlayback); -} - -void TestResourceSet::testDoesNotContainSingle() -{ - QList resources; - - resources << audioResource << videoResource; - resourceSet->addResources(resources); - QList resourcesInSet = resourceSet->resources(); - - bool doesNotContainVideoRecorder = !resourceSet->contains(VideoRecorderType); - QVERIFY(doesNotContainVideoRecorder); -} - - -void TestResourceSet::testContainsSet() -{ - QList types, subset; - QList 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.h b/tests/test-resource-set.h deleted file mode 100644 index 0a3eeef..0000000 --- a/tests/test-resource-set.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef TEST_RESOURCE_SET_H -#define TEST_RESOURCE_SET_H - -#include -#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.pro b/tests/test-resource-set.pro deleted file mode 100644 index ad6d90d..0000000 --- a/tests/test-resource-set.pro +++ /dev/null @@ -1,21 +0,0 @@ -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 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;iaddResource(resource); + bool setContainsGivenResource = resourceSet->contains(type); + QVERIFY(setContainsGivenResource); + } +} + +void TestResourceSet::testAddResources() +{ + resourceSet->addResource(audioResource); + + bool setContainsAudioResource = resourceSet->contains(AudioPlaybackType); + QVERIFY(setContainsAudioResource); + QList 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 resources; + + resources << audioResource << videoResource << audioRecorderResource; + resourceSet->addResources(resources); + QList resourcesInSet = resourceSet->resources(); + + bool containsVideoPlayback = resourceSet->contains(VideoPlaybackType); + QVERIFY(containsVideoPlayback); +} + +void TestResourceSet::testDoesNotContainSingle() +{ + QList resources; + + resources << audioResource << videoResource; + resourceSet->addResources(resources); + QList resourcesInSet = resourceSet->resources(); + + bool doesNotContainVideoRecorder = !resourceSet->contains(VideoRecorderType); + QVERIFY(doesNotContainVideoRecorder); +} + + +void TestResourceSet::testContainsSet() +{ + QList types, subset; + QList 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 +#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 diff --git a/tests/test-resource.cpp b/tests/test-resource.cpp deleted file mode 100644 index 2098a88..0000000 --- a/tests/test-resource.cpp +++ /dev/null @@ -1,281 +0,0 @@ -#include "test-resource.h" -#include - -using namespace ResourcePolicy; - -Resource * TestResource::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; - } -} - -const char * TestResource::stringFromType(ResourceType type) -{ - switch(type) { - case AudioPlaybackType: - return "AudioPlaybackType"; - case AudioRecorderType: - return "AudioRecorderType"; - case VideoPlaybackType: - return "VideoPlaybackType"; - case VideoRecorderType: - return "VideoRecorderType"; - case VibraType: - return "VibraType"; - case LedsType: - return "LedsType"; - case BacklightType: - return "BacklightType"; - case SystemButtonType: - return "SystemButtonType"; - case LockButtonType: - return "LockButtonType"; - case ScaleButtonType: - return "ScaleButtonType"; - case SnapButtonType: - return "SnapButtonType"; - case LensCoverType: - return "LensCoverType"; - default: - qDebug("Unknown Type 0x%02x requested", type); - return NULL; - } -} - -TestResource::TestResource() -{ -} - -TestResource::~TestResource() -{ -} - -void TestResource::init() -{ - 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; -} - -void TestResource::cleanup() -{ - 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 TestResource::testType() -{ - for(quint32 type=AudioPlaybackType; type < NumberOfTypes; type++) { - ResourceType expected = (ResourceType)type; - Resource *resource = resourceFromType(expected); - if(resource->type() != expected) { - qDebug("expected ResourceType = %s, got %s", - stringFromType(expected), stringFromType(resource->type())); - } - QVERIFY(resource->type() == expected); - } -} - -void TestResource::testOptional_data() -{ - QTest::addColumn("type"); - QTest::addColumn("optional"); - QTest::addColumn("expected"); - - QTest::newRow("Resource is optional") << AudioPlaybackType << true << true; - QTest::newRow("Resource is not optional") << AudioPlaybackType << false << false; - QTest::newRow("Resource is optional") << AudioRecorderType << true << true; - QTest::newRow("Resource is not optional") << AudioRecorderType << false << false; - QTest::newRow("Resource is optional") << VideoPlaybackType << true << true; - QTest::newRow("Resource is not optional") << VideoPlaybackType << false << false; - QTest::newRow("Resource is optional") << VideoRecorderType << true << true; - QTest::newRow("Resource is not optional") << VideoRecorderType << false << false; - QTest::newRow("Resource is optional") << VibraType << true << true; - QTest::newRow("Resource is not optional") << VibraType<< false << false; - QTest::newRow("Resource is optional") << BacklightType << true << true; - QTest::newRow("Resource is not optional") << BacklightType << false << false; - QTest::newRow("Resource is optional") << SystemButtonType << true << true; - QTest::newRow("Resource is not optional") << SystemButtonType << false << false; - QTest::newRow("Resource is optional") << LedsType << true << true; - QTest::newRow("Resource is not optional") << LedsType << false << false; - QTest::newRow("Resource is optional") << LockButtonType << true << true; - QTest::newRow("Resource is not optional") << LockButtonType << false << false; - QTest::newRow("Resource is optional") << ScaleButtonType << true << true; - QTest::newRow("Resource is not optional") << ScaleButtonType << false << false; - QTest::newRow("Resource is optional") << SnapButtonType << true << true; - QTest::newRow("Resource is not optional") << SnapButtonType << false << false; - QTest::newRow("Resource is optional") << LensCoverType << true << true; - QTest::newRow("Resource is not optional") << LensCoverType << false << false; -} - -void TestResource::testOptional() -{ - QFETCH(ResourceType, type); - QFETCH(bool, optional); - QFETCH(bool, expected); - - Resource *resource = resourceFromType(type); - - resource->setOptional(optional); - bool result = resource->isOptional(); - - QVERIFY(result == expected); -} - -void TestResource::testShared_data() -{ - QTest::addColumn("type"); - QTest::addColumn("shared"); - QTest::addColumn("expected"); - - QTest::newRow("Resource is shared") << AudioPlaybackType << true << true; - QTest::newRow("Resource is not shared") << AudioPlaybackType << false << false; - QTest::newRow("Resource is shared") << AudioRecorderType << true << true; - QTest::newRow("Resource is not shared") << AudioRecorderType << false << false; - QTest::newRow("Resource is shared") << VideoPlaybackType << true << true; - QTest::newRow("Resource is not shared") << VideoPlaybackType << false << false; - QTest::newRow("Resource is shared") << VideoRecorderType << true << true; - QTest::newRow("Resource is not shared") << VideoRecorderType << false << false; - QTest::newRow("Resource is shared") << VibraType << true << true; - QTest::newRow("Resource is not shared") << VibraType<< false << false; - QTest::newRow("Resource is shared") << BacklightType << true << true; - QTest::newRow("Resource is not shared") << BacklightType << false << false; - QTest::newRow("Resource is shared") << SystemButtonType << true << true; - QTest::newRow("Resource is not shared") << SystemButtonType << false << false; - QTest::newRow("Resource is shared") << LedsType << true << true; - QTest::newRow("Resource is not shared") << LedsType << false << false; - QTest::newRow("Resource is shared") << LockButtonType << true << true; - QTest::newRow("Resource is not shared") << LockButtonType << false << false; - QTest::newRow("Resource is shared") << ScaleButtonType << true << true; - QTest::newRow("Resource is not shared") << ScaleButtonType << false << false; - QTest::newRow("Resource is shared") << SnapButtonType << true << true; - QTest::newRow("Resource is not shared") << SnapButtonType << false << false; - QTest::newRow("Resource is shared") << LensCoverType << true << true; - QTest::newRow("Resource is not shared") << LensCoverType << false << false; -} - -void TestResource::testShared() -{ - QFETCH(ResourceType, type); - QFETCH(bool, shared); - QFETCH(bool, expected); - - Resource *resource = resourceFromType(type); - resource->setShared(shared); - - bool result = resource->isShared(); - - QCOMPARE(result, expected); -} - -void TestResource::testGranted_data() -{ - QTest::addColumn("type"); - QTest::addColumn("granted"); - QTest::addColumn("expected"); - - QTest::newRow("Resource is granted") << AudioPlaybackType << true << true; - QTest::newRow("Resource is denied") << AudioPlaybackType << false << false; - QTest::newRow("Resource is granted") << AudioRecorderType << true << true; - QTest::newRow("Resource is denied") << AudioRecorderType << false << false; - QTest::newRow("Resource is granted") << VideoPlaybackType << true << true; - QTest::newRow("Resource is denied") << VideoPlaybackType << false << false; - QTest::newRow("Resource is granted") << VideoRecorderType << true << true; - QTest::newRow("Resource is denied") << VideoRecorderType << false << false; - QTest::newRow("Resource is granted") << VibraType << true << true; - QTest::newRow("Resource is denied") << VibraType<< false << false; - QTest::newRow("Resource is granted") << BacklightType << true << true; - QTest::newRow("Resource is denied") << BacklightType << false << false; - QTest::newRow("Resource is granted") << SystemButtonType << true << true; - QTest::newRow("Resource is denied") << SystemButtonType << false << false; - QTest::newRow("Resource is granted") << LedsType << true << true; - QTest::newRow("Resource is denied") << LedsType << false << false; - QTest::newRow("Resource is granted") << LockButtonType << true << true; - QTest::newRow("Resource is denied") << LockButtonType << false << false; - QTest::newRow("Resource is granted") << ScaleButtonType << true << true; - QTest::newRow("Resource is denied") << ScaleButtonType << false << false; - QTest::newRow("Resource is granted") << SnapButtonType << true << true; - QTest::newRow("Resource is denied") << SnapButtonType << false << false; - QTest::newRow("Resource is granted") << LensCoverType << true << true; - QTest::newRow("Resource is denied") << LensCoverType << false << false; -} - -void TestResource::testGranted() -{ - QFETCH(ResourceType, type); - QFETCH(bool, granted); - QFETCH(bool, expected); - - Resource *resource = resourceFromType(type); - - if(granted) - resource->setGranted(); - else - resource->unsetGranted(); - bool result = resource->isGranted(); - - QVERIFY(result == expected); -} - -void TestResource::testClone() -{ - for(quint32 type=AudioPlaybackType; type < NumberOfTypes; type++) { - Resource *resource = resourceFromType((ResourceType)type); - resource->setOptional(); - Resource *copy = resource->clone(); - - QCOMPARE(copy->isOptional(), resource->isOptional()); - QCOMPARE(copy->isShared(), resource->isShared()); - QCOMPARE(copy->isGranted(), resource->isGranted()); - QCOMPARE(copy->type(), resource->type()); - delete copy; - } -} - -QTEST_MAIN(TestResource) - diff --git a/tests/test-resource.h b/tests/test-resource.h deleted file mode 100644 index fc04c47..0000000 --- a/tests/test-resource.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef TEST_RESOURCE_H -#define TEST_RESOURCE_H - -#include -#include -#include "resources.h" - -Q_DECLARE_METATYPE(ResourcePolicy::ResourceType) - -using namespace ResourcePolicy; - -class TestResource: public QObject -{ - Q_OBJECT -private: - 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); - const char * stringFromType(ResourceType type); -public: - TestResource(); - ~TestResource(); - -private slots: - - void init(); - void cleanup(); - - void testType(); - - void testOptional_data(); - void testOptional(); - - void testShared_data(); - void testShared(); - - void testGranted_data(); - void testGranted(); - - void testClone(); -}; - -#endif diff --git a/tests/test-resource.pro b/tests/test-resource.pro deleted file mode 100644 index 7ab2678..0000000 --- a/tests/test-resource.pro +++ /dev/null @@ -1,21 +0,0 @@ -BASE = .. -TEMPLATE = app -TARGET = test-resource -DESTDIR = build -DEPENDPATH += $${BASE}/include $${BASE}/src . -INCLUDEPATH += $${BASE}/src $${BASE}/include - -# Input -HEADERS += $${BASE}/include/resource.h $${BASE}/include/resources.h test-resource.h -SOURCES += $${BASE}/src/resource.cpp $${BASE}/src/resources.cpp test-resource.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 diff --git a/tests/test-resource/test-resource.cpp b/tests/test-resource/test-resource.cpp new file mode 100644 index 0000000..2098a88 --- /dev/null +++ b/tests/test-resource/test-resource.cpp @@ -0,0 +1,281 @@ +#include "test-resource.h" +#include + +using namespace ResourcePolicy; + +Resource * TestResource::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; + } +} + +const char * TestResource::stringFromType(ResourceType type) +{ + switch(type) { + case AudioPlaybackType: + return "AudioPlaybackType"; + case AudioRecorderType: + return "AudioRecorderType"; + case VideoPlaybackType: + return "VideoPlaybackType"; + case VideoRecorderType: + return "VideoRecorderType"; + case VibraType: + return "VibraType"; + case LedsType: + return "LedsType"; + case BacklightType: + return "BacklightType"; + case SystemButtonType: + return "SystemButtonType"; + case LockButtonType: + return "LockButtonType"; + case ScaleButtonType: + return "ScaleButtonType"; + case SnapButtonType: + return "SnapButtonType"; + case LensCoverType: + return "LensCoverType"; + default: + qDebug("Unknown Type 0x%02x requested", type); + return NULL; + } +} + +TestResource::TestResource() +{ +} + +TestResource::~TestResource() +{ +} + +void TestResource::init() +{ + 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; +} + +void TestResource::cleanup() +{ + 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 TestResource::testType() +{ + for(quint32 type=AudioPlaybackType; type < NumberOfTypes; type++) { + ResourceType expected = (ResourceType)type; + Resource *resource = resourceFromType(expected); + if(resource->type() != expected) { + qDebug("expected ResourceType = %s, got %s", + stringFromType(expected), stringFromType(resource->type())); + } + QVERIFY(resource->type() == expected); + } +} + +void TestResource::testOptional_data() +{ + QTest::addColumn("type"); + QTest::addColumn("optional"); + QTest::addColumn("expected"); + + QTest::newRow("Resource is optional") << AudioPlaybackType << true << true; + QTest::newRow("Resource is not optional") << AudioPlaybackType << false << false; + QTest::newRow("Resource is optional") << AudioRecorderType << true << true; + QTest::newRow("Resource is not optional") << AudioRecorderType << false << false; + QTest::newRow("Resource is optional") << VideoPlaybackType << true << true; + QTest::newRow("Resource is not optional") << VideoPlaybackType << false << false; + QTest::newRow("Resource is optional") << VideoRecorderType << true << true; + QTest::newRow("Resource is not optional") << VideoRecorderType << false << false; + QTest::newRow("Resource is optional") << VibraType << true << true; + QTest::newRow("Resource is not optional") << VibraType<< false << false; + QTest::newRow("Resource is optional") << BacklightType << true << true; + QTest::newRow("Resource is not optional") << BacklightType << false << false; + QTest::newRow("Resource is optional") << SystemButtonType << true << true; + QTest::newRow("Resource is not optional") << SystemButtonType << false << false; + QTest::newRow("Resource is optional") << LedsType << true << true; + QTest::newRow("Resource is not optional") << LedsType << false << false; + QTest::newRow("Resource is optional") << LockButtonType << true << true; + QTest::newRow("Resource is not optional") << LockButtonType << false << false; + QTest::newRow("Resource is optional") << ScaleButtonType << true << true; + QTest::newRow("Resource is not optional") << ScaleButtonType << false << false; + QTest::newRow("Resource is optional") << SnapButtonType << true << true; + QTest::newRow("Resource is not optional") << SnapButtonType << false << false; + QTest::newRow("Resource is optional") << LensCoverType << true << true; + QTest::newRow("Resource is not optional") << LensCoverType << false << false; +} + +void TestResource::testOptional() +{ + QFETCH(ResourceType, type); + QFETCH(bool, optional); + QFETCH(bool, expected); + + Resource *resource = resourceFromType(type); + + resource->setOptional(optional); + bool result = resource->isOptional(); + + QVERIFY(result == expected); +} + +void TestResource::testShared_data() +{ + QTest::addColumn("type"); + QTest::addColumn("shared"); + QTest::addColumn("expected"); + + QTest::newRow("Resource is shared") << AudioPlaybackType << true << true; + QTest::newRow("Resource is not shared") << AudioPlaybackType << false << false; + QTest::newRow("Resource is shared") << AudioRecorderType << true << true; + QTest::newRow("Resource is not shared") << AudioRecorderType << false << false; + QTest::newRow("Resource is shared") << VideoPlaybackType << true << true; + QTest::newRow("Resource is not shared") << VideoPlaybackType << false << false; + QTest::newRow("Resource is shared") << VideoRecorderType << true << true; + QTest::newRow("Resource is not shared") << VideoRecorderType << false << false; + QTest::newRow("Resource is shared") << VibraType << true << true; + QTest::newRow("Resource is not shared") << VibraType<< false << false; + QTest::newRow("Resource is shared") << BacklightType << true << true; + QTest::newRow("Resource is not shared") << BacklightType << false << false; + QTest::newRow("Resource is shared") << SystemButtonType << true << true; + QTest::newRow("Resource is not shared") << SystemButtonType << false << false; + QTest::newRow("Resource is shared") << LedsType << true << true; + QTest::newRow("Resource is not shared") << LedsType << false << false; + QTest::newRow("Resource is shared") << LockButtonType << true << true; + QTest::newRow("Resource is not shared") << LockButtonType << false << false; + QTest::newRow("Resource is shared") << ScaleButtonType << true << true; + QTest::newRow("Resource is not shared") << ScaleButtonType << false << false; + QTest::newRow("Resource is shared") << SnapButtonType << true << true; + QTest::newRow("Resource is not shared") << SnapButtonType << false << false; + QTest::newRow("Resource is shared") << LensCoverType << true << true; + QTest::newRow("Resource is not shared") << LensCoverType << false << false; +} + +void TestResource::testShared() +{ + QFETCH(ResourceType, type); + QFETCH(bool, shared); + QFETCH(bool, expected); + + Resource *resource = resourceFromType(type); + resource->setShared(shared); + + bool result = resource->isShared(); + + QCOMPARE(result, expected); +} + +void TestResource::testGranted_data() +{ + QTest::addColumn("type"); + QTest::addColumn("granted"); + QTest::addColumn("expected"); + + QTest::newRow("Resource is granted") << AudioPlaybackType << true << true; + QTest::newRow("Resource is denied") << AudioPlaybackType << false << false; + QTest::newRow("Resource is granted") << AudioRecorderType << true << true; + QTest::newRow("Resource is denied") << AudioRecorderType << false << false; + QTest::newRow("Resource is granted") << VideoPlaybackType << true << true; + QTest::newRow("Resource is denied") << VideoPlaybackType << false << false; + QTest::newRow("Resource is granted") << VideoRecorderType << true << true; + QTest::newRow("Resource is denied") << VideoRecorderType << false << false; + QTest::newRow("Resource is granted") << VibraType << true << true; + QTest::newRow("Resource is denied") << VibraType<< false << false; + QTest::newRow("Resource is granted") << BacklightType << true << true; + QTest::newRow("Resource is denied") << BacklightType << false << false; + QTest::newRow("Resource is granted") << SystemButtonType << true << true; + QTest::newRow("Resource is denied") << SystemButtonType << false << false; + QTest::newRow("Resource is granted") << LedsType << true << true; + QTest::newRow("Resource is denied") << LedsType << false << false; + QTest::newRow("Resource is granted") << LockButtonType << true << true; + QTest::newRow("Resource is denied") << LockButtonType << false << false; + QTest::newRow("Resource is granted") << ScaleButtonType << true << true; + QTest::newRow("Resource is denied") << ScaleButtonType << false << false; + QTest::newRow("Resource is granted") << SnapButtonType << true << true; + QTest::newRow("Resource is denied") << SnapButtonType << false << false; + QTest::newRow("Resource is granted") << LensCoverType << true << true; + QTest::newRow("Resource is denied") << LensCoverType << false << false; +} + +void TestResource::testGranted() +{ + QFETCH(ResourceType, type); + QFETCH(bool, granted); + QFETCH(bool, expected); + + Resource *resource = resourceFromType(type); + + if(granted) + resource->setGranted(); + else + resource->unsetGranted(); + bool result = resource->isGranted(); + + QVERIFY(result == expected); +} + +void TestResource::testClone() +{ + for(quint32 type=AudioPlaybackType; type < NumberOfTypes; type++) { + Resource *resource = resourceFromType((ResourceType)type); + resource->setOptional(); + Resource *copy = resource->clone(); + + QCOMPARE(copy->isOptional(), resource->isOptional()); + QCOMPARE(copy->isShared(), resource->isShared()); + QCOMPARE(copy->isGranted(), resource->isGranted()); + QCOMPARE(copy->type(), resource->type()); + delete copy; + } +} + +QTEST_MAIN(TestResource) + diff --git a/tests/test-resource/test-resource.h b/tests/test-resource/test-resource.h new file mode 100644 index 0000000..fc04c47 --- /dev/null +++ b/tests/test-resource/test-resource.h @@ -0,0 +1,54 @@ +#ifndef TEST_RESOURCE_H +#define TEST_RESOURCE_H + +#include +#include +#include "resources.h" + +Q_DECLARE_METATYPE(ResourcePolicy::ResourceType) + +using namespace ResourcePolicy; + +class TestResource: public QObject +{ + Q_OBJECT +private: + 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); + const char * stringFromType(ResourceType type); +public: + TestResource(); + ~TestResource(); + +private slots: + + void init(); + void cleanup(); + + void testType(); + + void testOptional_data(); + void testOptional(); + + void testShared_data(); + void testShared(); + + void testGranted_data(); + void testGranted(); + + void testClone(); +}; + +#endif diff --git a/tests/test-resource/test-resource.pro b/tests/test-resource/test-resource.pro new file mode 100644 index 0000000..7ab2678 --- /dev/null +++ b/tests/test-resource/test-resource.pro @@ -0,0 +1,21 @@ +BASE = .. +TEMPLATE = app +TARGET = test-resource +DESTDIR = build +DEPENDPATH += $${BASE}/include $${BASE}/src . +INCLUDEPATH += $${BASE}/src $${BASE}/include + +# Input +HEADERS += $${BASE}/include/resource.h $${BASE}/include/resources.h test-resource.h +SOURCES += $${BASE}/src/resource.cpp $${BASE}/src/resources.cpp test-resource.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 -- cgit v1.2.3