source: src/Patterns/Observer/unittests/ObserverUnitTest.hpp@ e2e035e

Last change on this file since e2e035e was e2e035e, checked in by Frederik Heber <heber@…>, 14 years ago

Refactored all Observer stuff into own subfolder and split up into distinct modules.

  • Observer/all.hpp is all that's needed.
  • Property mode set to 100644
File size: 1.7 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 config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16#include <cppunit/extensions/HelperMacros.h>
17
18// forward declaration for test stubs
19class UpdateCountObserver;
20class NotificationObserver;
21class SimpleObservable;
22class CallObservable;
23class SuperObservable;
24class ObservableSet;
25class ObservableMap;
26class BlockObservable;
27class NotificationObservable;
28
29class ObserverTest : public CppUnit::TestFixture
30{
31 CPPUNIT_TEST_SUITE( ObserverTest ) ;
32 CPPUNIT_TEST ( doesUpdateTest );
33 CPPUNIT_TEST ( doesBlockUpdateTest );
34 CPPUNIT_TEST ( doesSubObservableTest );
35 CPPUNIT_TEST ( outsideLockTest );
36 CPPUNIT_TEST ( doesNotifyTest );
37 CPPUNIT_TEST ( doesReportTest );
38 CPPUNIT_TEST ( iteratorTest );
39 CPPUNIT_TEST ( CircleDetectionTest );
40 CPPUNIT_TEST_SUITE_END();
41
42public:
43 void setUp();
44 void tearDown();
45
46 void doesUpdateTest();
47 void doesBlockUpdateTest();
48 void doesSubObservableTest();
49 void outsideLockTest();
50 void doesNotifyTest();
51 void doesReportTest();
52 void iteratorTest();
53 void CircleDetectionTest();
54
55private:
56 UpdateCountObserver *observer1;
57 UpdateCountObserver *observer2;
58 UpdateCountObserver *observer3;
59 UpdateCountObserver *observer4;
60
61 NotificationObserver *notificationObserver1;
62 NotificationObserver *notificationObserver2;
63
64 SimpleObservable *simpleObservable1;
65 SimpleObservable *simpleObservable2;
66 CallObservable *callObservable;
67 BlockObservable *blockObservable;
68 SuperObservable *superObservable;
69 NotificationObservable *notificationObservable;
70 ObservableSet *obsset;
71 ObservableMap *obsmap;
72
73};
74
75#endif /* OBSERVERTEST_HPP_ */
Note: See TracBrowser for help on using the repository browser.