diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/eventsdstest.cc | 57 | 
1 files changed, 43 insertions, 14 deletions
| 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' | 
