diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/Makefile.am | 172 | ||||
-rw-r--r-- | test/dgreftest/midiinputengine.cc | 17 | ||||
-rw-r--r-- | test/eventsdstest.cc | 57 | ||||
-rw-r--r-- | test/imagecachetest.cc | 8 | ||||
-rw-r--r-- | test/midimapparsertest.cc | 44 | ||||
-rw-r--r-- | test/midimappertest.cc | 140 | ||||
-rw-r--r-- | test/paintertest.cc | 54 | ||||
-rw-r--r-- | test/resource_test.cc | 6 | ||||
-rw-r--r-- | test/scopedfile.cc | 7 | ||||
-rw-r--r-- | test/translationtest.cc | 8 | ||||
-rw-r--r-- | test/uitests/Makefile.am | 31 | ||||
-rw-r--r-- | test/uitests/benchmarktest.cc | 32 | ||||
-rw-r--r-- | test/uitests/filebrowsertest.cc | 21 | ||||
-rw-r--r-- | test/uitests/framewidgettest.cc | 75 | ||||
-rw-r--r-- | test/uitests/powerwidgettest.cc | 29 | ||||
-rw-r--r-- | test/uitests/resizetest.cc | 23 | ||||
-rw-r--r-- | test/uitests/tabwidgettest.cc | 61 |
17 files changed, 525 insertions, 260 deletions
diff --git a/test/Makefile.am b/test/Makefile.am index c2c151d..6441fd3 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -8,7 +8,7 @@ TESTS = resource enginetest paintertest configfile audiocache \ randomtest atomictest syncedsettingstest imagecachetest \ semaphoretest drumkitcreatortest bytesizeparsertest notifiertest \ dgxmlparsertest domloadertest configparsertest midimapparsertest \ - eventsdstest powermaptest + eventsdstest powermaptest midimappertest if WITH_NLS TESTS += translationtest @@ -24,27 +24,34 @@ if ENABLE_LV2 TESTS += lv2 endif +noinst_PROGRAMS = $(TESTS) check_PROGRAMS = $(TESTS) -resource_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"resource\" $(SNDFILE_CFLAGS) \ + +resource_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"resource\" \ + $(SNDFILE_CFLAGS) \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/hugin resource_LDFLAGS = $(SNDFILE_LIBS) nodist_resource_SOURCES = \ $(top_builddir)/plugingui/resource_data.cc resource_SOURCES = \ - $(top_srcdir)/plugingui/resource.cc \ + $(top_srcdir)/dggui/resource.cc \ $(top_srcdir)/hugin/hugin.c \ $(top_srcdir)/src/random.cc \ uunit/uunit.cc \ drumkit_creator.cc \ resource_test.cc -audiocache_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocache\" \ +audiocache_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocache\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/hugin -DDISABLE_HUGIN $(PTHREAD_CFLAGS) $(SNDFILE_CFLAGS) + -I$(top_srcdir)/hugin -DDISABLE_HUGIN \ + $(PTHREAD_CFLAGS) \ + $(SNDFILE_CFLAGS) audiocache_LDFLAGS = $(PTHREAD_LIBS) $(SNDFILE_LIBS) audiocache_SOURCES = \ $(top_srcdir)/src/audiocache.cc \ @@ -59,10 +66,13 @@ audiocache_SOURCES = \ drumkit_creator.cc \ audiocachetest.cc -audiocachefile_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocachefile\" \ +audiocachefile_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocachefile\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/hugin -DDISABLE_HUGIN $(PTHREAD_CFLAGS) $(SNDFILE_CFLAGS) + -I$(top_srcdir)/hugin -DDISABLE_HUGIN \ + $(PTHREAD_CFLAGS) \ + $(SNDFILE_CFLAGS) audiocachefile_LDFLAGS = $(PTHREAD_LIBS) $(SNDFILE_LIBS) audiocachefile_SOURCES = \ $(top_srcdir)/src/audiocachefile.cc \ @@ -74,20 +84,25 @@ audiocachefile_SOURCES = \ drumkit_creator.cc \ audiocachefiletest.cc -audiocacheidmanager_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocacheidmanager\" \ +audiocacheidmanager_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocacheidmanager\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/hugin -DDISABLE_HUGIN $(SNDFILE_CFLAGS) + -I$(top_srcdir)/hugin -DDISABLE_HUGIN \ + $(SNDFILE_CFLAGS) audiocacheidmanager_LDFLAGS = $(SNDFILE_LIBS) audiocacheidmanager_SOURCES = \ $(top_srcdir)/src/audiocacheidmanager.cc \ uunit/uunit.cc \ audiocacheidmanagertest.cc -audiocacheeventhandler_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocacheeventhandler\" \ +audiocacheeventhandler_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"audiocacheeventhandler\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/hugin -DDISABLE_HUGIN $(PTHREAD_CFLAGS) $(SNDFILE_CFLAGS) + -I$(top_srcdir)/hugin -DDISABLE_HUGIN \ + $(PTHREAD_CFLAGS) \ + $(SNDFILE_CFLAGS) audiocacheeventhandler_LDFLAGS = $(PTHREAD_LIBS) $(SNDFILE_LIBS) audiocacheeventhandler_SOURCES = \ $(top_srcdir)/src/audiocacheeventhandler.cc \ @@ -98,10 +113,12 @@ audiocacheeventhandler_SOURCES = \ uunit/uunit.cc \ audiocacheeventhandlertest.cc -enginetest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"enginetest\" \ +enginetest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"enginetest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/hugin $(PTHREAD_CFLAGS) $(SNDFILE_CFLAGS) + -I$(top_srcdir)/hugin $(PTHREAD_CFLAGS) \ + $(SNDFILE_CFLAGS) enginetest_LDFLAGS = $(PTHREAD_LIBS) $(SNDFILE_LIBS) \ $(top_builddir)/src/libdg.la enginetest_SOURCES = \ @@ -110,20 +127,26 @@ enginetest_SOURCES = \ drumkit_creator.cc \ enginetest.cc -paintertest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"paintertest\" \ +paintertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"paintertest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/plugingui \ - -I$(top_srcdir)/hugin $(PTHREAD_CFLAGS) -paintertest_LDFLAGS = $(top_builddir)/plugingui/libdggui.la + -I$(top_srcdir)/src \ + -I$(top_srcdir)/ \ + -I$(top_srcdir)/hugin \ + $(PTHREAD_CFLAGS) +paintertest_LDFLAGS = \ + $(top_builddir)/dggui/libdggui.la paintertest_SOURCES = \ $(top_srcdir)/hugin/hugin.c \ uunit/uunit.cc \ - paintertest.cc + paintertest.cc \ + $(top_builddir)/plugingui/resource_data.cc -lv2_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"lv2\" \ +lv2_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"lv2\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - `pkg-config --cflags serd-0` `pkg-config --cflags lilv-0` \ + `pkg-config --cflags serd-0` `pkg-config --cflags lilv-0` \ -DLV2_PATH=\"@LV2DIR@\" $(SNDFILE_CFLAGS) lv2_LDFLAGS = `pkg-config --libs serd-0` \ `pkg-config --libs lilv-0` -lcrypto \ @@ -135,9 +158,11 @@ lv2_SOURCES = \ lv2_test_host.cc \ lv2.cc -configfile_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"configfile\" \ +configfile_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"configfile\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/hugin -I$(top_srcdir)/src + -I$(top_srcdir)/hugin \ + -I$(top_srcdir)/src configfile_LDFLAGS = configfile_SOURCES = \ $(top_srcdir)/src/configfile.cc \ @@ -146,7 +171,8 @@ configfile_SOURCES = \ uunit/uunit.cc \ configtest.cc -randomtest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"randomtest\" \ +randomtest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"randomtest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin -DDISABLE_HUGIN @@ -157,30 +183,42 @@ randomtest_SOURCES = \ uunit/uunit.cc \ randomtest.cc -atomictest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"atomictest\" \ +atomictest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"atomictest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/hugin + -I$(top_srcdir)/src \ + -I$(top_srcdir)/hugin atomictest_LDFLAGS = atomictest_SOURCES = atomictest.cc uunit/uunit.cc -syncedsettingstest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"syncedsettingstest\" \ +syncedsettingstest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"syncedsettingstest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/hugin + -I$(top_srcdir)/src \ + -I$(top_srcdir)/hugin syncedsettingstest_LDFLAGS = syncedsettingstest_SOURCES = syncedsettings.cc uunit/uunit.cc -imagecachetest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"imagecachetest\" \ +imagecachetest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"imagecachetest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/plugingui -I$(top_srcdir)/hugin -imagecachetest_LDFLAGS = $(top_builddir)/plugingui/libdggui.la + -I$(top_srcdir)/src \ + -I$(top_srcdir)/ \ + -I$(top_srcdir)/hugin +imagecachetest_LDFLAGS = \ + $(top_builddir)/dggui/libdggui.la \ + $(top_builddir)/plugingui/libplugingui.la imagecachetest_SOURCES = \ $(top_srcdir)/hugin/hugin.c \ imagecachetest.cc \ uunit/uunit.cc -semaphoretest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"semaphoretest\" \ +semaphoretest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"semaphoretest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/hugin $(PTHREAD_CFLAGS) + -I$(top_srcdir)/src \ + -I$(top_srcdir)/hugin \ + $(PTHREAD_CFLAGS) semaphoretest_LDFLAGS = $(PTHREAD_LIBS) semaphoretest_SOURCES = \ $(top_srcdir)/hugin/hugin.c \ @@ -188,10 +226,12 @@ semaphoretest_SOURCES = \ semaphoretest.cc \ uunit/uunit.cc -drumkitcreatortest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"drumkitcreatortest\" \ +drumkitcreatortest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"drumkitcreatortest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/hugin -DDISABLE_HUGIN $(SNDFILE_CFLAGS) + -I$(top_srcdir)/hugin -DDISABLE_HUGIN \ + $(SNDFILE_CFLAGS) drumkitcreatortest_CFLAGS = -DDISABLE_HUGIN drumkitcreatortest_LDFLAGS = $(SNDFILE_LIBS) drumkitcreatortest_SOURCES = \ @@ -200,7 +240,8 @@ drumkitcreatortest_SOURCES = \ drumkit_creator.cc \ drumkitcreatortest.cc -bytesizeparsertest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"bytesizeparsertest\" \ +bytesizeparsertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"bytesizeparsertest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src bytesizeparsertest_LDFLAGS = @@ -209,7 +250,8 @@ bytesizeparsertest_SOURCES = \ bytesizeparsertest.cc \ uunit/uunit.cc -notifiertest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"notifiertest\" \ +notifiertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"notifiertest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src notifiertest_LDFLAGS = @@ -217,9 +259,11 @@ notifiertest_SOURCES = \ notifiertest.cc \ uunit/uunit.cc -dgxmlparsertest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"dgxmlparsertest\" \ +dgxmlparsertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"dgxmlparsertest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/hugin \ + -I$(top_srcdir)/src \ + -I$(top_srcdir)/hugin \ -I$(top_srcdir)/pugixml/src dgxmlparsertest_LDFLAGS = dgxmlparsertest_SOURCES = \ @@ -230,7 +274,8 @@ dgxmlparsertest_SOURCES = \ scopedfile.cc \ uunit/uunit.cc -domloadertest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"domloadertest\" \ +domloadertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"domloadertest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src domloadertest_LDFLAGS = \ @@ -241,9 +286,11 @@ domloadertest_SOURCES = \ scopedfile.cc \ uunit/uunit.cc -configparsertest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"configparsertest\" \ +configparsertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"configparsertest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/hugin \ + -I$(top_srcdir)/src \ + -I$(top_srcdir)/hugin \ -I$(top_srcdir)/pugixml/src configparsertest_LDFLAGS = configparsertest_SOURCES = \ @@ -253,9 +300,11 @@ configparsertest_SOURCES = \ configparsertest.cc \ uunit/uunit.cc -midimapparsertest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"midimapparsertest\" \ +midimapparsertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"midimapparsertest\" \ $(DEBUG_FLAGS) \ - -I$(top_srcdir)/src -I$(top_srcdir)/hugin \ + -I$(top_srcdir)/src \ + -I$(top_srcdir)/hugin \ -I$(top_srcdir)/pugixml/src midimapparsertest_LDFLAGS = midimapparsertest_SOURCES = \ @@ -266,7 +315,8 @@ midimapparsertest_SOURCES = \ midimapparsertest.cc \ uunit/uunit.cc -eventsdstest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"eventsdstest\" \ +eventsdstest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"eventsdstest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src eventsdstest_LDFLAGS = @@ -275,7 +325,8 @@ eventsdstest_SOURCES = \ eventsdstest.cc \ uunit/uunit.cc -powermaptest_CXXFLAGS = -I$(top_srcdir)/test/uunit -DOUTPUT=\"powermaptest\" \ +powermaptest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"powermaptest\" \ $(DEBUG_FLAGS) \ -I$(top_srcdir)/src powermaptest_LDFLAGS = @@ -284,6 +335,21 @@ powermaptest_SOURCES = \ powermaptest.cc \ uunit/uunit.cc +midimappertest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"midimappertest\" \ + $(DEBUG_FLAGS) \ + -I$(top_srcdir)/src \ + -I$(top_srcdir)/hugin \ + -I$(top_srcdir)/pugixml/src +midimappertest_LDFLAGS = +midimappertest_SOURCES = \ + $(top_srcdir)/hugin/hugin.c \ + $(top_srcdir)/src/midimapper.cc \ + $(top_srcdir)/pugixml/src/pugixml.cpp \ + scopedfile.cc \ + midimappertest.cc \ + uunit/uunit.cc + RES = \ $(top_srcdir)/test/locale/da.mo @@ -291,12 +357,12 @@ rcgen_verbose = $(rcgen_verbose_@AM_V@) rcgen_verbose_ = $(rcgen_verbose_@AM_DEFAULT_V@) rcgen_verbose_0 = @echo " RCGEN "$@; -translationtest_resource_data.cc: $(top_builddir)/plugingui/rcgen $(RES) - $(rcgen_verbose)$(top_builddir)/plugingui/rcgen$(EXEEXT) -s $(top_srcdir)/test/ -o $@ $(RES) +translationtest_resource_data.cc: $(top_builddir)/dggui/rcgen $(RES) + $(rcgen_verbose)$(top_builddir)/dggui/rcgen$(EXEEXT) -s $(top_srcdir)/test/ -o $@ $(RES) -translationtest_CXXFLAGS = -I$(top_srcdir)/test/uunit \ - -DOUTPUT=\"translationtest\" \ - -I$(top_srcdir)/plugingui \ +translationtest_CXXFLAGS = \ + -I$(top_srcdir)/test/uunit -DOUTPUT=\"translationtest\" \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin \ -DMO_SRC=\"$(top_srcdir)/test/locale/da.mo\" \ @@ -306,9 +372,9 @@ nodist_translationtest_SOURCES = \ $(top_builddir)/test/translationtest_resource_data.cc translationtest_SOURCES = \ $(top_srcdir)/hugin/hugin.c \ - $(top_srcdir)/plugingui/resource.cc \ + $(top_srcdir)/dggui/resource.cc \ $(top_srcdir)/src/translation.cc \ - $(top_srcdir)/plugingui/uitranslation.cc \ + $(top_srcdir)/dggui/uitranslation.cc \ translationtest.cc \ uunit/uunit.cc diff --git a/test/dgreftest/midiinputengine.cc b/test/dgreftest/midiinputengine.cc index ca223da..dbffec9 100644 --- a/test/dgreftest/midiinputengine.cc +++ b/test/dgreftest/midiinputengine.cc @@ -155,16 +155,15 @@ void MidifileInputEngine::run(size_t pos, size_t len, std::vector<event_t>& even int key = current_event->midi_buffer[1]; int velocity = current_event->midi_buffer[2]; - events.emplace_back(); - auto& event = events.back(); - event.type = EventType::OnSet; - size_t evpos = current_event->time_seconds * (samplerate / speed); - event.offset = evpos - pos; - - int i = mmap.lookup(key); - if(i != -1) + auto instruments = mmap.lookup(key); + for(const auto& instrument_idx : instruments) { - event.instrument = i; + events.emplace_back(); + auto& event = events.back(); + event.type = EventType::OnSet; + size_t evpos = current_event->time_seconds * (samplerate / speed); + event.offset = evpos - pos; + event.instrument = instrument_idx; event.velocity = velocity / 127.0; } } diff --git a/test/eventsdstest.cc b/test/eventsdstest.cc index 3c0af68..822cf14 100644 --- a/test/eventsdstest.cc +++ b/test/eventsdstest.cc @@ -34,7 +34,8 @@ class EventsDSTest public: EventsDSTest() { - uUNIT_TEST(EventsDSTest::test_all); + uTEST(EventsDSTest::test_all); + uTEST(EventsDSTest::test_clear); } public: @@ -48,27 +49,27 @@ public: events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "b", 42); events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "c", 42); - uUNIT_ASSERT(events_ds.getSampleEventGroupIDsOf(13).empty()); - uUNIT_ASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 1); + uASSERT(events_ds.getSampleEventGroupIDsOf(13).empty()); + uASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 1); auto group_id = events_ds.getSampleEventGroupIDsOf(42).back(); const auto& event_ids = events_ds.getEventIDsOf(group_id); - uUNIT_ASSERT(event_ids.size() == 3); + uASSERT(event_ids.size() == 3); // group 2 events_ds.startAddingNewGroup(42); events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "d", 42); - uUNIT_ASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 2); + uASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 2); // group 3 events_ds.startAddingNewGroup(23); events_ds.emplace<SampleEvent>(7, 7, 1.0, nullptr, "foo", 23); events_ds.emplace<SampleEvent>(7, 7, 1.0, nullptr, "bar", 23); - uUNIT_ASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 2); - uUNIT_ASSERT(events_ds.numberOfEvents(13) == 4); - uUNIT_ASSERT(events_ds.numberOfEvents(7) == 2); + uASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 2); + uASSERT(events_ds.numberOfEvents(13) == 4); + uASSERT(events_ds.numberOfEvents(7) == 2); // iterate over std::string group_concat = ""; @@ -76,27 +77,55 @@ public: { group_concat.append(sample_event.group); } - uUNIT_ASSERT(group_concat == "abcd"); + uASSERT(group_concat == "abcd"); // get and getType for (const auto& sample_event: events_ds.iterateOver<SampleEvent>(13)) { - uUNIT_ASSERT(events_ds.get<SampleEvent>(sample_event.id).channel == 13); - uUNIT_ASSERT(events_ds.getType(sample_event.id) == Event::Type::SampleEvent); + uASSERT(events_ds.get<SampleEvent>(sample_event.id).channel == 13); + uASSERT(events_ds.getType(sample_event.id) == Event::Type::SampleEvent); } // remove auto event_id = events_ds.getEventIDsOf(events_ds.getSampleEventGroupIDsOf(42).back()).back(); events_ds.remove(event_id); - uUNIT_ASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 1); + uASSERT(events_ds.getSampleEventGroupIDsOf(42).size() == 1); event_id = events_ds.getEventIDsOf(events_ds.getSampleEventGroupIDsOf(23).back()).back(); events_ds.remove(event_id); - uUNIT_ASSERT(!events_ds.getSampleEventGroupIDsOf(23).empty()); + uASSERT(!events_ds.getSampleEventGroupIDsOf(23).empty()); event_id = events_ds.getEventIDsOf(events_ds.getSampleEventGroupIDsOf(23).back()).back(); events_ds.remove(event_id); - uUNIT_ASSERT(events_ds.getSampleEventGroupIDsOf(23).empty()); + uASSERT(events_ds.getSampleEventGroupIDsOf(23).empty()); } + + void test_clear() + { + EventsDS events_ds; + + uASSERT_EQUAL(0u, events_ds.getSampleEventGroupIDsOf(42).size()); + uASSERT_EQUAL(0u, events_ds.getSampleEventGroupIDsOf(43).size()); + + // group 1 + events_ds.startAddingNewGroup(42); + events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "a", 42); + events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "b", 42); + events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "c", 42); + + // group 2 + events_ds.startAddingNewGroup(43); + events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "a", 43); + events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "b", 43); + events_ds.emplace<SampleEvent>(13, 13, 1.0, nullptr, "c", 43); + + uASSERT_EQUAL(1u, events_ds.getSampleEventGroupIDsOf(42).size() == 1); + uASSERT_EQUAL(1u, events_ds.getSampleEventGroupIDsOf(43).size() == 1); + + events_ds.clear(); + + uASSERT_EQUAL(0u, events_ds.getSampleEventGroupIDsOf(42).size()); + uASSERT_EQUAL(0u, events_ds.getSampleEventGroupIDsOf(43).size()); +} }; // Registers the fixture into the 'registry' diff --git a/test/imagecachetest.cc b/test/imagecachetest.cc index 5471afb..3e7b4fc 100644 --- a/test/imagecachetest.cc +++ b/test/imagecachetest.cc @@ -26,13 +26,11 @@ */ #include <uunit.h> -#include <cassert> - -#include <imagecache.h> -#include <image.h> +#include <dggui/imagecache.h> +#include <dggui/image.h> class TestableImageCache - : public GUI::ImageCache + : public dggui::ImageCache { public: std::size_t count(const std::string& filename) diff --git a/test/midimapparsertest.cc b/test/midimapparsertest.cc index eb4d6d5..3e77c44 100644 --- a/test/midimapparsertest.cc +++ b/test/midimapparsertest.cc @@ -36,8 +36,8 @@ class MidimapParserTest public: MidimapParserTest() { - uUNIT_TEST(MidimapParserTest::test); - uUNIT_TEST(MidimapParserTest::invalid); + uTEST(MidimapParserTest::test); + uTEST(MidimapParserTest::invalid); } void test() @@ -49,23 +49,35 @@ public: " <map note=\"60\" instr=\"Crash_left_whisker\"/>\n" \ " <map note=\"55\" instr=\"Crash_right_tip\"/>\n" \ " <map note=\"62\" instr=\"Crash_right_whisker\"/>\n" \ + " <map note=\"62\" instr=\"Hihat_closed\"/>\n" \ " <map note=\"56\" instr=\"Hihat_closed\"/>\n" \ "</midimap>"); MidiMapParser parser; - uUNIT_ASSERT(parser.parseFile(scoped_file.filename())); - - uUNIT_ASSERT(parser.midimap.find(54) != parser.midimap.end()); - uUNIT_ASSERT(parser.midimap.find(60) != parser.midimap.end()); - uUNIT_ASSERT(parser.midimap.find(55) != parser.midimap.end()); - uUNIT_ASSERT(parser.midimap.find(62) != parser.midimap.end()); - uUNIT_ASSERT(parser.midimap.find(56) != parser.midimap.end()); - - uUNIT_ASSERT_EQUAL(std::string("Crash_left_tip"), parser.midimap[54]); - uUNIT_ASSERT_EQUAL(std::string("Crash_left_whisker"), parser.midimap[60]); - uUNIT_ASSERT_EQUAL(std::string("Crash_right_tip"), parser.midimap[55]); - uUNIT_ASSERT_EQUAL(std::string("Crash_right_whisker"), parser.midimap[62]); - uUNIT_ASSERT_EQUAL(std::string("Hihat_closed"), parser.midimap[56]); + uASSERT(parser.parseFile(scoped_file.filename())); + + const auto& midimap = parser.midimap; + uASSERT_EQUAL(6u, midimap.size()); + + uASSERT_EQUAL(54, midimap[0].note_id); + uASSERT_EQUAL(std::string("Crash_left_tip"), midimap[0].instrument_name); + + uASSERT_EQUAL(60, midimap[1].note_id); + uASSERT_EQUAL(std::string("Crash_left_whisker"), midimap[1].instrument_name); + + uASSERT_EQUAL(55, midimap[2].note_id); + uASSERT_EQUAL(std::string("Crash_right_tip"), midimap[2].instrument_name); + + // These next two note numbers are intentionally the same and trigger two + // different instruments: + uASSERT_EQUAL(62, midimap[3].note_id); + uASSERT_EQUAL(std::string("Crash_right_whisker"), midimap[3].instrument_name); + + uASSERT_EQUAL(62, midimap[4].note_id); + uASSERT_EQUAL(std::string("Hihat_closed"), midimap[4].instrument_name); + + uASSERT_EQUAL(56, midimap[5].note_id); + uASSERT_EQUAL(std::string("Hihat_closed"), midimap[5].instrument_name); } void invalid() @@ -81,7 +93,7 @@ public: "</midimap>"); MidiMapParser parser; - uUNIT_ASSERT(!parser.parseFile(scoped_file.filename())); + uASSERT(!parser.parseFile(scoped_file.filename())); } }; diff --git a/test/midimappertest.cc b/test/midimappertest.cc new file mode 100644 index 0000000..703c646 --- /dev/null +++ b/test/midimappertest.cc @@ -0,0 +1,140 @@ +/* -*- Mode: c++ -*- */ +/*************************************************************************** + * midimappertest.cc + * + * Sun Aug 8 09:55:13 CEST 2021 + * Copyright 2021 Bent Bisballe Nyeng + * deva@aasimon.org + ****************************************************************************/ + +/* + * This file is part of DrumGizmo. + * + * DrumGizmo is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * DrumGizmo is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with DrumGizmo; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ +#include <uunit.h> + +#include <algorithm> + +#include <midimapper.h> + +#include "scopedfile.h" + +class MidiMapperTest + : public uUnit +{ +public: + MidiMapperTest() + { + uTEST(MidiMapperTest::test); + uTEST(MidiMapperTest::exceptional); + } + + void test() + { + midimap_t midimap + { + { 54, "Crash_left_tip" }, + { 60, "Crash_left_whisker" }, + { 55, "Crash_right_tip" }, + { 62, "Crash_right_whisker" }, + { 62, "Hihat_closed" }, + { 56, "Hihat_closed" }, + }; + + instrmap_t instrmap + { + { "Crash_left_tip", 0 }, + { "Crash_left_whisker", 1 }, + { "Crash_right_tip", 2 }, + { "Crash_right_whisker", 3 }, + { "Hihat_closed", 4 }, + }; + + MidiMapper mapper; + mapper.swap(instrmap, midimap); + + { + auto is = mapper.lookup(54); + uASSERT_EQUAL(1u, is.size()); + uASSERT_EQUAL(0, is[0]); + } + + { + auto is = mapper.lookup(60); + uASSERT_EQUAL(1u, is.size()); + uASSERT_EQUAL(1, is[0]); + } + + { + auto is = mapper.lookup(55); + uASSERT_EQUAL(1u, is.size()); + uASSERT_EQUAL(2, is[0]); + } + + { + auto is = mapper.lookup(62); + uASSERT_EQUAL(2u, is.size()); + // We don't care about the order, so just count the instances + uASSERT_EQUAL(1u, std::count(is.begin(), is.end(), 3)); + uASSERT_EQUAL(1u, std::count(is.begin(), is.end(), 4)); + } + + { + auto is = mapper.lookup(56); + uASSERT_EQUAL(1u, is.size()); + uASSERT_EQUAL(4, is[0]); + } + } + + void exceptional() + { + midimap_t midimap + { + { 54, "Crash_left_tip" }, + { 60, "Crash_left_whisker_MISSING" }, + { 55, "Crash_right_tip" }, + { 62, "Crash_right_whisker" }, + { 62, "Hihat_closed" }, + { 56, "Hihat_closed" }, + }; + + instrmap_t instrmap + { + { "Crash_left_tip", 0 }, + { "Crash_left_whisker", 1 }, + { "Crash_right_tip", 2 }, + { "Crash_right_whisker", 3 }, + { "Hihat_closed", 4 }, + }; + + MidiMapper mapper; + mapper.swap(instrmap, midimap); + + // no such note id + { + auto is = mapper.lookup(42); + uASSERT_EQUAL(0u, is.size()); + } + + // no such instrument + { + auto is = mapper.lookup(60); + uASSERT_EQUAL(0u, is.size()); + } + } +}; + +// Registers the fixture into the 'registry' +static MidiMapperTest test; diff --git a/test/paintertest.cc b/test/paintertest.cc index fb17a91..5a1c44a 100644 --- a/test/paintertest.cc +++ b/test/paintertest.cc @@ -26,17 +26,17 @@ */ #include <uunit.h> -#include "../plugingui/canvas.h" -#include "../plugingui/painter.h" -#include "../plugingui/image.h" -#include "../plugingui/font.h" +#include <dggui/canvas.h> +#include <dggui/painter.h> +#include <dggui/image.h> +#include <dggui/font.h> class TestColour { public: TestColour(std::uint8_t r, std::uint8_t g, std::uint8_t b, std::uint8_t a) : colour(r, g, b, a) {} - TestColour(const GUI::Colour& colour) + TestColour(const dggui::Colour& colour) : colour(colour) {} bool operator!=(const TestColour& other) const @@ -49,7 +49,7 @@ public: ; } - const GUI::Colour colour; + const dggui::Colour colour; }; std::ostream& operator<<(std::ostream& stream, const TestColour& col) @@ -63,28 +63,28 @@ std::ostream& operator<<(std::ostream& stream, const TestColour& col) } class TestableCanvas - : public GUI::Canvas + : public dggui::Canvas { public: TestableCanvas(std::size_t width, std::size_t height) : pixbuf(width, height) {} - GUI::PixelBufferAlpha& getPixelBuffer() override + dggui::PixelBufferAlpha& getPixelBuffer() override { return pixbuf; } private: - GUI::PixelBufferAlpha pixbuf; + dggui::PixelBufferAlpha pixbuf; }; class TestImage - : public GUI::Image + : public dggui::Image { public: TestImage(std::uint8_t width, std::uint8_t height, bool alpha) - : GUI::Image(":resources/logo.png") // just load some default image + : dggui::Image(":resources/logo.png") // just load some default image { _width = width; _height = height; @@ -98,7 +98,7 @@ public: { for(std::uint8_t y = 0; y < _height; ++y) { - image_data[x + _width * y] = GUI::Colour(x, y, 0, alpha ? 128 : 255); + image_data[x + _width * y] = dggui::Colour(x, y, 0, alpha ? 128 : 255); image_data_raw[4 * (x + _width * y) + 0] = x; image_data_raw[4 * (x + _width * y) + 1] = y; image_data_raw[4 * (x + _width * y) + 2] = 0; @@ -124,35 +124,35 @@ public: void testDrawImage() { // Success criterion is simply to not assert in the drawing routines... - GUI::Image image(":resources/logo.png"); + dggui::Image image(":resources/logo.png"); { // Image fits in pixelbuffer TestableCanvas canvas(image.width(), image.height()); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawImage(0, 0, image); } { // Image fits in pixelbuffer, negative offset TestableCanvas canvas(image.width(), image.height()); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawImage(-10, -10, image); } { // Image too big for pixelbuffer TestableCanvas canvas(image.width() / 2, image.height() / 2); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawImage(0, 0, image); } { // Image fits in pixelbuffer but offset so it is drawn over the edge. TestableCanvas canvas(image.width(), image.height()); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawImage(10, 10, image); } { // Image is offset to the right and down so nothing is to be drawn. TestableCanvas canvas(image.width(), image.height()); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawImage(image.width() + 1, image.height() + 1, image); @@ -160,7 +160,7 @@ public: { // Image is offset to the left and up so nothing is to be drawn. TestableCanvas canvas(image.width(), image.height()); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawImage(-1 * (image.width() + 1), -1 * (image.height() + 1), image); @@ -170,7 +170,7 @@ public: void testDrawText() { // Success criterion is simply to not assert in the drawing routines... - GUI::Font font; + dggui::Font font; // a string with unicode characters std::string someText = "Hello World - лæ Библиотека"; std::size_t width = font.textWidth(someText); @@ -178,31 +178,31 @@ public: { // Text fits in pixelbuffer TestableCanvas canvas(width, height); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawText(0, 0, font, someText); } { // Text fits in pixelbuffer, negative offset TestableCanvas canvas(width, height); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawText(-10, -10, font, someText); } { // Text too big for pixelbuffer TestableCanvas canvas(width / 2, height / 2); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawText(0, 0, font, someText); } { // Text fits in pixelbuffer but offset so it is drawn over the edge. TestableCanvas canvas(width, height); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawText(10, 10, font, someText); } { // Text is offset to the right and down so nothing is to be drawn. TestableCanvas canvas(width, height); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawText(width + 1, height + 1, font, someText); @@ -210,7 +210,7 @@ public: { // Text is offset to the left and up so nothing is to be drawn. TestableCanvas canvas(width, height); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); painter.drawText(-1 * (width + 1), -1 * (height + 1), font, someText); @@ -221,7 +221,7 @@ public: void testClipping() { TestableCanvas canvas(100, 100); - GUI::Painter painter(canvas); + dggui::Painter painter(canvas); { // Without alpha TestImage image(16, 16, false); diff --git a/test/resource_test.cc b/test/resource_test.cc index 1433dca..5781ff2 100644 --- a/test/resource_test.cc +++ b/test/resource_test.cc @@ -26,16 +26,16 @@ */ #include <uunit.h> -#include "../plugingui/resource.h" +#include "../dggui/resource.h" #include "drumkit_creator.h" class ResourceTester - : public GUI::Resource + : public dggui::Resource { public: ResourceTester(const std::string& name) - : GUI::Resource(name) + : dggui::Resource(name) {} bool probeIsInternal() diff --git a/test/scopedfile.cc b/test/scopedfile.cc index b03a2bc..3c30734 100644 --- a/test/scopedfile.cc +++ b/test/scopedfile.cc @@ -34,6 +34,9 @@ #ifdef _WIN32 #define WIN32_LEAN_AND_MEAN #include <windows.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> #endif struct Pimpl @@ -50,8 +53,8 @@ ScopedFile::ScopedFile(const std::string& data) pimpl->fd = mkstemp(templ); #else char templ[] = "dg-scoped-file-XXXXXX"; // buffer for filename - _mktemp_s(templ); - pimpl->fd = open(templ); + _mktemp_s(templ, sizeof(templ)); + pimpl->fd = open(templ, O_CREAT | O_RDWR); #endif pimpl->filename = templ; auto sz = write(pimpl->fd, data.data(), data.size()); diff --git a/test/translationtest.cc b/test/translationtest.cc index 98cff11..bf33599 100644 --- a/test/translationtest.cc +++ b/test/translationtest.cc @@ -29,7 +29,7 @@ #include <locale> #include <translation.h> -#include <uitranslation.h> +#include <dggui/uitranslation.h> #include <stdlib.h> class TranslationTest @@ -63,8 +63,12 @@ public: void testFromLocale() { +#ifdef _WIN32 + _putenv_s("LANG", "da_DK.UTF-8"); +#else setenv("LANG", "da_DK.UTF-8", 1); - UITranslation t; +#endif + dggui::UITranslation t; // Look up translation from .mo file uUNIT_ASSERT_EQUAL(std::string("Trommesæt"), diff --git a/test/uitests/Makefile.am b/test/uitests/Makefile.am index 8b1877e..a27a44b 100644 --- a/test/uitests/Makefile.am +++ b/test/uitests/Makefile.am @@ -2,11 +2,12 @@ noinst_PROGRAMS = resizetest tabwidgettest framewidgettest \ filebrowsertest benchmarktest powerwidgettest resizetest_LDADD = \ - $(top_builddir)/plugingui/libdggui.la \ + $(top_builddir)/dggui/libdggui.la \ + $(top_builddir)/plugingui/libplugingui.la \ $(top_builddir)/src/libdg.la \ $(top_builddir)/src/libnls.la resizetest_CXXFLAGS = \ - -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin resizetest_SOURCES = \ @@ -14,11 +15,12 @@ resizetest_SOURCES = \ $(top_srcdir)/hugin/hugin.c tabwidgettest_LDADD = \ - $(top_builddir)/plugingui/libdggui.la \ + $(top_builddir)/dggui/libdggui.la \ + $(top_builddir)/plugingui/libplugingui.la \ $(top_builddir)/src/libdg.la \ $(top_builddir)/src/libnls.la tabwidgettest_CXXFLAGS = \ - -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin tabwidgettest_SOURCES = \ @@ -26,11 +28,13 @@ tabwidgettest_SOURCES = \ $(top_srcdir)/hugin/hugin.c filebrowsertest_LDADD = \ - $(top_builddir)/plugingui/libdggui.la \ + $(top_builddir)/dggui/libdggui.la \ + $(top_builddir)/plugingui/libplugingui.la \ $(top_builddir)/src/libdg.la \ $(top_builddir)/src/libnls.la filebrowsertest_CXXFLAGS = \ -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin filebrowsertest_SOURCES = \ @@ -38,11 +42,12 @@ filebrowsertest_SOURCES = \ $(top_srcdir)/hugin/hugin.c framewidgettest_LDADD = \ - $(top_builddir)/plugingui/libdggui.la \ + $(top_builddir)/dggui/libdggui.la \ + $(top_builddir)/plugingui/libplugingui.la \ $(top_builddir)/src/libdg.la \ $(top_builddir)/src/libnls.la framewidgettest_CXXFLAGS = \ - -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin framewidgettest_SOURCES = \ @@ -59,15 +64,15 @@ rcgen_verbose = $(rcgen_verbose_@AM_V@) rcgen_verbose_ = $(rcgen_verbose_@AM_DEFAULT_V@) rcgen_verbose_0 = @echo " RCGEN "$@; -benchmarktest_resource_data.cc: $(top_builddir)/plugingui/rcgen $(RES) - $(rcgen_verbose)$(top_builddir)/plugingui/rcgen$(EXEEXT) -d $(top_srcdir)/test/uitests -o $@ $(RES) +benchmarktest_resource_data.cc: $(top_builddir)/dggui/rcgen $(RES) + $(rcgen_verbose)$(top_builddir)/dggui/rcgen$(EXEEXT) -d $(top_srcdir)/test/uitests -o $@ $(RES) benchmarktest_LDADD = \ - $(top_builddir)/plugingui/libdggui.la \ + $(top_builddir)/dggui/libdggui.la \ $(top_builddir)/src/libdg.la \ $(top_builddir)/src/libnls.la benchmarktest_CXXFLAGS = \ - -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin nodist_benchmarktest_SOURCES = \ @@ -81,11 +86,13 @@ CLEANFILES = benchmarktest_resource_data.cc powerwidgettest_LDADD = \ - $(top_builddir)/plugingui/libdggui.la \ + $(top_builddir)/dggui/libdggui.la \ + $(top_builddir)/plugingui/libplugingui.la \ $(top_builddir)/src/libdg.la \ $(top_builddir)/src/libnls.la powerwidgettest_CXXFLAGS = \ -I$(top_srcdir)/plugingui \ + -I$(top_srcdir)/ \ -I$(top_srcdir)/src \ -I$(top_srcdir)/hugin powerwidgettest_SOURCES = \ diff --git a/test/uitests/benchmarktest.cc b/test/uitests/benchmarktest.cc index aaf3946..59a6968 100644 --- a/test/uitests/benchmarktest.cc +++ b/test/uitests/benchmarktest.cc @@ -29,15 +29,15 @@ #include <cstdint> #include <string> -#include <image.h> -#include <painter.h> -#include <canvas.h> +#include <dggui/image.h> +#include <dggui/painter.h> +#include <dggui/canvas.h> class TimedCanvas - : public GUI::Canvas + : public dggui::Canvas { public: - GUI::PixelBufferAlpha& getPixelBuffer() override + dggui::PixelBufferAlpha& getPixelBuffer() override { return pixbuf; } @@ -48,7 +48,7 @@ public: } private: - GUI::PixelBufferAlpha pixbuf{800, 600}; + dggui::PixelBufferAlpha pixbuf{800, 600}; }; class TimedScope @@ -82,16 +82,16 @@ private: int main() { TimedCanvas canvas; - GUI::Painter painter(canvas); - GUI::Image image_no_alpha(":benchmarktest_resources/image_no_alpha.png"); - GUI::Image image_full_alpha(":benchmarktest_resources/image_full_alpha.png"); - GUI::Image image_edge_alpha(":benchmarktest_resources/image_edge_alpha.png"); - GUI::Image image_inner_alpha(":benchmarktest_resources/image_inner_alpha.png"); + dggui::Painter painter(canvas); + dggui::Image image_no_alpha(":benchmarktest_resources/image_no_alpha.png"); + dggui::Image image_full_alpha(":benchmarktest_resources/image_full_alpha.png"); + dggui::Image image_edge_alpha(":benchmarktest_resources/image_edge_alpha.png"); + dggui::Image image_inner_alpha(":benchmarktest_resources/image_inner_alpha.png"); { TimedCanvas canvas; TimedScope timed("Pixelbuffer resize", 100000); - painter.setColour(GUI::Colour(1.f, 1.f, 1.f, 1.f)); + painter.setColour(dggui::Colour(1.f, 1.f, 1.f, 1.f)); for(int i = 0; i < 100000; ++i) { canvas.resize(i % 1000 + 100, i % 1000 + 100); @@ -108,7 +108,7 @@ int main() { TimedScope timed("Filled rect, with alpha", 100000); - painter.setColour(GUI::Colour(1.f, 1.f, 1.f, 0.5f)); + painter.setColour(dggui::Colour(1.f, 1.f, 1.f, 0.5f)); for(int i = 0; i < 100000; ++i) { painter.drawRectangle(0, 0, 800, 600); @@ -148,11 +148,11 @@ int main() } { - GUI::PixelBuffer wpixbuf(800, 600); - std::vector<GUI::PixelBufferAlpha*> children; + dggui::PixelBuffer wpixbuf(800, 600); + std::vector<dggui::PixelBufferAlpha*> children; for(int i = 0; i < 100; ++i) { - auto child = new GUI::PixelBufferAlpha(300, 300); + auto child = new dggui::PixelBufferAlpha(300, 300); child->x = i * 2; child->y = i * 2; children.push_back(child); diff --git a/test/uitests/filebrowsertest.cc b/test/uitests/filebrowsertest.cc index 5f78921..8cede7e 100644 --- a/test/uitests/filebrowsertest.cc +++ b/test/uitests/filebrowsertest.cc @@ -29,17 +29,18 @@ #include <thread> #include <hugin.hpp> -#include <window.h> -#include <button.h> -#include <label.h> + +#include <dggui/window.h> +#include <dggui/button.h> +#include <dggui/label.h> #include <filebrowser.h> class TestWindow - : public GUI::Window + : public dggui::Window { public: TestWindow() - : GUI::Window(nullptr) + : dggui::Window(nullptr) { setCaption("FileBrowserTest Window"); CONNECT(eventHandler(), closeNotifier, @@ -99,22 +100,22 @@ public: return !closing; } - void repaintEvent(GUI::RepaintEvent* repaintEvent) + void repaintEvent(dggui::RepaintEvent* repaintEvent) { - GUI::Painter painter(*this); + dggui::Painter painter(*this); label.resize(width(), 30); //painter.clear(); - painter.setColour(GUI::Colour(0,1,0)); + painter.setColour(dggui::Colour(0,1,0)); painter.drawFilledRectangle(0, 0, width(), height()); } private: bool closing{false}; - GUI::Button button{this}; - GUI::Label label{this}; + dggui::Button button{this}; + dggui::Label label{this}; GUI::FileBrowser file_browser{this}; }; diff --git a/test/uitests/framewidgettest.cc b/test/uitests/framewidgettest.cc index a2a24db..97f9ed0 100644 --- a/test/uitests/framewidgettest.cc +++ b/test/uitests/framewidgettest.cc @@ -28,76 +28,77 @@ #include <chrono> #include <thread> -#include <button.h> -#include <checkbox.h> -#include <frame.h> #include <hugin.hpp> -#include <label.h> -#include <layout.h> -#include <window.h> -#include <painter.h> + +#include <dggui/button.h> +#include <dggui/checkbox.h> +#include <dggui/frame.h> +#include <dggui/label.h> +#include <dggui/layout.h> +#include <dggui/window.h> +#include <dggui/painter.h> // TODO: fix segfault on close -class Widget1 : public GUI::Widget +class Widget1 : public dggui::Widget { public: - Widget1(GUI::Widget* parent) : GUI::Widget(parent) + Widget1(dggui::Widget* parent) : dggui::Widget(parent) { layout.setResizeChildren(true); - layout.setHAlignment(GUI::HAlignment::center); + layout.setHAlignment(dggui::HAlignment::center); label1.setText("Label1"); - label1.setAlignment(GUI::TextAlignment::left); + label1.setAlignment(dggui::TextAlignment::left); layout.addItem(&label1); label2.setText("Label2"); - label2.setAlignment(GUI::TextAlignment::center); + label2.setAlignment(dggui::TextAlignment::center); layout.addItem(&label2); label3.setText("Label3"); - label3.setAlignment(GUI::TextAlignment::right); + label3.setAlignment(dggui::TextAlignment::right); layout.addItem(&label3); } private: - GUI::VBoxLayout layout{this}; - GUI::Label label1{this}; - GUI::Label label2{this}; - GUI::Label label3{this}; + dggui::VBoxLayout layout{this}; + dggui::Label label1{this}; + dggui::Label label2{this}; + dggui::Label label3{this}; }; -class Widget2 : public GUI::Widget +class Widget2 : public dggui::Widget { public: - Widget2(GUI::Widget* parent) : GUI::Widget(parent) + Widget2(dggui::Widget* parent) : dggui::Widget(parent) { layout.setSpacing(10); layout.setResizeChildren(true); - layout.setVAlignment(GUI::VAlignment::top); + layout.setVAlignment(dggui::VAlignment::top); label1.setText("Label1"); - label1.setAlignment(GUI::TextAlignment::right); + label1.setAlignment(dggui::TextAlignment::right); layout.addItem(&label1); label2.setText("Label2"); - label2.setAlignment(GUI::TextAlignment::left); + label2.setAlignment(dggui::TextAlignment::left); layout.addItem(&label2); layout.addItem(&checkbox); } private: - GUI::HBoxLayout layout{this}; - GUI::Label label1{this}; - GUI::Label label2{this}; - GUI::CheckBox checkbox{this}; + dggui::HBoxLayout layout{this}; + dggui::Label label1{this}; + dggui::Label label2{this}; + dggui::CheckBox checkbox{this}; }; -class TestWindow : public GUI::Window +class TestWindow : public dggui::Window { public: - TestWindow() : GUI::Window(nullptr) + TestWindow() : dggui::Window(nullptr) { setCaption("FrameWidgetTest Window"); CONNECT(eventHandler(), closeNotifier, this, @@ -106,7 +107,7 @@ public: layout.setSpacing(10); layout.setResizeChildren(true); - layout.setHAlignment(GUI::HAlignment::center); + layout.setHAlignment(dggui::HAlignment::center); layout.addItem(&frame1); layout.addItem(&frame2); @@ -140,22 +141,22 @@ public: return !closing; } - void repaintEvent(GUI::RepaintEvent* repaintEvent) override + void repaintEvent(dggui::RepaintEvent* repaintEvent) override { - GUI::Painter painter(*this); - painter.setColour(GUI::Colour(0.85)); + dggui::Painter painter(*this); + painter.setColour(dggui::Colour(0.85)); painter.drawFilledRectangle(0, 0, width() - 1, height() - 1); } private: bool closing{false}; - GUI::VBoxLayout layout{this}; + dggui::VBoxLayout layout{this}; - GUI::FrameWidget frame1{this, true}; - GUI::FrameWidget frame2{this, false}; - GUI::FrameWidget frame3{this, true}; - GUI::FrameWidget frame4{this, false}; + dggui::FrameWidget frame1{this, true}; + dggui::FrameWidget frame2{this, false}; + dggui::FrameWidget frame3{this, true}; + dggui::FrameWidget frame4{this, false}; Widget1 w1_1{this}; Widget1 w1_2{this}; diff --git a/test/uitests/powerwidgettest.cc b/test/uitests/powerwidgettest.cc index 9ab0458..4d01168 100644 --- a/test/uitests/powerwidgettest.cc +++ b/test/uitests/powerwidgettest.cc @@ -28,23 +28,26 @@ #include <chrono> #include <thread> -#include <button.h> -#include <checkbox.h> -#include <frame.h> #include <hugin.hpp> -#include <label.h> -#include <layout.h> -#include <window.h> -#include <painter.h> + +#include <dggui/button.h> +#include <dggui/checkbox.h> +#include <dggui/frame.h> +#include <dggui/label.h> +#include <dggui/layout.h> +#include <dggui/window.h> +#include <dggui/painter.h> + #include <settings.h> + #include <powerwidget.h> class TestWindow - : public GUI::Window + : public dggui::Window { public: TestWindow() - : GUI::Window() + : dggui::Window() { setCaption("PowerWidgetTest Window"); CONNECT(eventHandler(), closeNotifier, this, @@ -93,10 +96,10 @@ public: return !closing; } - void repaintEvent(GUI::RepaintEvent* repaintEvent) override + void repaintEvent(dggui::RepaintEvent* repaintEvent) override { - GUI::Painter painter(*this); - painter.setColour(GUI::Colour(0.85)); + dggui::Painter painter(*this); + painter.setColour(dggui::Colour(0.85)); painter.drawFilledRectangle(0, 0, width() - 1, height() - 1); } @@ -105,7 +108,7 @@ private: Settings settings; SettingsNotifier settings_notifier{settings}; - PowerWidget w{this, settings, settings_notifier}; + GUI::PowerWidget w{this, settings, settings_notifier}; }; int main() diff --git a/test/uitests/resizetest.cc b/test/uitests/resizetest.cc index 8facc61..17748bf 100644 --- a/test/uitests/resizetest.cc +++ b/test/uitests/resizetest.cc @@ -29,16 +29,17 @@ #include <thread> #include <hugin.hpp> -#include <window.h> -#include <font.h> -#include <painter.h> + +#include <dggui/window.h> +#include <dggui/font.h> +#include <dggui/painter.h> class TestWindow - : public GUI::Window + : public dggui::Window { public: TestWindow() - : GUI::Window(nullptr) + : dggui::Window(nullptr) { setCaption("ResizeTest Window"); CONNECT(eventHandler(), closeNotifier, @@ -70,19 +71,19 @@ public: return !closing; } - void repaintEvent(GUI::RepaintEvent* repaintEvent) + void repaintEvent(dggui::RepaintEvent* repaintEvent) { - GUI::Painter painter(*this); + dggui::Painter painter(*this); //painter.clear(); - painter.setColour(GUI::Colour(0,1,0)); + painter.setColour(dggui::Colour(0,1,0)); painter.drawFilledRectangle(0, 0, width(), height()); auto currentSize = std::make_pair(width(), height()); auto currentPosition = std::make_pair(x(), y()); { - painter.setColour(GUI::Colour(1,0,0)); + painter.setColour(dggui::Colour(1,0,0)); char str[64]; sprintf(str, "reported: (%d, %d); (%d, %d)", (int)reportedPosition.first, @@ -97,7 +98,7 @@ public: } { - painter.setColour(GUI::Colour(1,0,0)); + painter.setColour(dggui::Colour(1,0,0)); char str[64]; sprintf(str, "current: (%d, %d); (%d, %d)", (int)currentPosition.first, @@ -114,7 +115,7 @@ public: private: bool closing{false}; - GUI::Font font{":resources/font.png"}; + dggui::Font font{":resources/font.png"}; std::pair<std::size_t, std::size_t> reportedSize; std::pair<int, int> reportedPosition; }; diff --git a/test/uitests/tabwidgettest.cc b/test/uitests/tabwidgettest.cc index 722dc02..804e979 100644 --- a/test/uitests/tabwidgettest.cc +++ b/test/uitests/tabwidgettest.cc @@ -29,75 +29,76 @@ #include <thread> #include <hugin.hpp> -#include <window.h> -#include <tabwidget.h> -#include <label.h> -#include <layout.h> -#include <button.h> -#include <painter.h> + +#include <dggui/window.h> +#include <dggui/tabwidget.h> +#include <dggui/label.h> +#include <dggui/layout.h> +#include <dggui/button.h> +#include <dggui/painter.h> class Widget1 - : public GUI::Widget + : public dggui::Widget { public: - Widget1(GUI::Widget* parent) - : GUI::Widget(parent) + Widget1(dggui::Widget* parent) + : dggui::Widget(parent) { layout.setResizeChildren(true); - layout.setHAlignment(GUI::HAlignment::center); + layout.setHAlignment(dggui::HAlignment::center); label1.setText("Label1"); - label1.setAlignment(GUI::TextAlignment::left); + label1.setAlignment(dggui::TextAlignment::left); layout.addItem(&label1); label2.setText("Label2"); - label2.setAlignment(GUI::TextAlignment::center); + label2.setAlignment(dggui::TextAlignment::center); layout.addItem(&label2); label3.setText("Label3"); - label3.setAlignment(GUI::TextAlignment::right); + label3.setAlignment(dggui::TextAlignment::right); layout.addItem(&label3); } private: - GUI::VBoxLayout layout{this}; - GUI::Label label1{this}; - GUI::Label label2{this}; - GUI::Label label3{this}; + dggui::VBoxLayout layout{this}; + dggui::Label label1{this}; + dggui::Label label2{this}; + dggui::Label label3{this}; }; class Widget2 - : public GUI::Button + : public dggui::Button { public: - Widget2(GUI::Widget* parent) - : GUI::Button(parent) + Widget2(dggui::Widget* parent) + : dggui::Button(parent) { setText("Widget2"); } }; class Widget3 - : public GUI::Widget + : public dggui::Widget { public: - Widget3(GUI::Widget* parent) - : GUI::Widget(parent) + Widget3(dggui::Widget* parent) + : dggui::Widget(parent) { label.move(100, 80); label.resize(100, 20); label.setText("Widget3"); } private: - GUI::Label label{this}; + dggui::Label label{this}; }; class TestWindow - : public GUI::Window + : public dggui::Window { public: TestWindow() - : GUI::Window(nullptr) + : dggui::Window(nullptr) { setCaption("TabWidgetTest Window"); CONNECT(eventHandler(), closeNotifier, @@ -125,16 +126,16 @@ public: return !closing; } - void repaintEvent(GUI::RepaintEvent* repaintEvent) override + void repaintEvent(dggui::RepaintEvent* repaintEvent) override { - GUI::Painter painter(*this); - painter.setColour(GUI::Colour(0.85)); + dggui::Painter painter(*this); + painter.setColour(dggui::Colour(0.85)); painter.drawFilledRectangle(0, 0, width() - 1, height() - 1); } private: bool closing{false}; - GUI::TabWidget tabs{this}; + dggui::TabWidget tabs{this}; Widget1 widget1{this}; Widget2 widget2{this}; Widget3 widget3{this}; |