source: src/Patterns/unittests/ObserverUnitTest.hpp@ 8931ef

Last change on this file since 8931ef was a80f419, checked in by Frederik Heber <heber@…>, 15 years ago

First version.

Everything was extracted from project MoleCuilder and adapted such that it
runs on its own (i.e. new configure.ac, Makefile.am structure, stuff for
libtool versioning, ...)

  • Property mode set to 100644
File size: 1.6 KB
Line 
1/*
2 * ObserverTest.hpp
3 *
4 * Created on: Jan 19, 2010
5 * Author: crueger
6 */
7
8#ifndef OBSERVERTEST_HPP_
9#define OBSERVERTEST_HPP_
10
11#include <cppunit/extensions/HelperMacros.h>
12
13// forward declaration for test stubs
14class UpdateCountObserver;
15class NotificationObserver;
16class SimpleObservable;
17class CallObservable;
18class SuperObservable;
19class ObservableSet;
20class ObservableMap;
21class BlockObservable;
22class NotificationObservable;
23
24class ObserverTest : public CppUnit::TestFixture
25{
26 CPPUNIT_TEST_SUITE( ObserverTest ) ;
27 CPPUNIT_TEST ( doesUpdateTest );
28 CPPUNIT_TEST ( doesBlockUpdateTest );
29 CPPUNIT_TEST ( doesSubObservableTest );
30 CPPUNIT_TEST ( outsideLockTest );
31 CPPUNIT_TEST ( doesNotifyTest );
32 CPPUNIT_TEST ( doesReportTest );
33 CPPUNIT_TEST ( iteratorTest );
34 CPPUNIT_TEST ( CircleDetectionTest );
35 CPPUNIT_TEST_SUITE_END();
36
37public:
38 void setUp();
39 void tearDown();
40
41 void doesUpdateTest();
42 void doesBlockUpdateTest();
43 void doesSubObservableTest();
44 void outsideLockTest();
45 void doesNotifyTest();
46 void doesReportTest();
47 void iteratorTest();
48 void CircleDetectionTest();
49
50private:
51 UpdateCountObserver *observer1;
52 UpdateCountObserver *observer2;
53 UpdateCountObserver *observer3;
54 UpdateCountObserver *observer4;
55
56 NotificationObserver *notificationObserver1;
57 NotificationObserver *notificationObserver2;
58
59 SimpleObservable *simpleObservable1;
60 SimpleObservable *simpleObservable2;
61 CallObservable *callObservable;
62 BlockObservable *blockObservable;
63 SuperObservable *superObservable;
64 NotificationObservable *notificationObservable;
65 ObservableSet *obsset;
66 ObservableMap *obsmap;
67
68};
69
70#endif /* OBSERVERTEST_HPP_ */
Note: See TracBrowser for help on using the repository browser.