xref: /haiku/src/tests/kits/app/blooper/CountHandlersTest.cpp (revision 38f5ceca01595f09deac7d10fafd4534a05b16f4)
1*38f5cecaSejakowatz //------------------------------------------------------------------------------
2*38f5cecaSejakowatz //	CountHandlersTest.cpp
3*38f5cecaSejakowatz //
4*38f5cecaSejakowatz //------------------------------------------------------------------------------
5*38f5cecaSejakowatz 
6*38f5cecaSejakowatz // Standard Includes -----------------------------------------------------------
7*38f5cecaSejakowatz 
8*38f5cecaSejakowatz // System Includes -------------------------------------------------------------
9*38f5cecaSejakowatz #include <Handler.h>
10*38f5cecaSejakowatz #include <Looper.h>
11*38f5cecaSejakowatz 
12*38f5cecaSejakowatz // Project Includes ------------------------------------------------------------
13*38f5cecaSejakowatz 
14*38f5cecaSejakowatz // Local Includes --------------------------------------------------------------
15*38f5cecaSejakowatz #include "CountHandlersTest.h"
16*38f5cecaSejakowatz 
17*38f5cecaSejakowatz // Local Defines ---------------------------------------------------------------
18*38f5cecaSejakowatz 
19*38f5cecaSejakowatz // Globals ---------------------------------------------------------------------
20*38f5cecaSejakowatz 
21*38f5cecaSejakowatz //------------------------------------------------------------------------------
22*38f5cecaSejakowatz /**
23*38f5cecaSejakowatz 	CountHandlers()
24*38f5cecaSejakowatz 	@case		No handlers added
25*38f5cecaSejakowatz 	@results
26*38f5cecaSejakowatz  */
27*38f5cecaSejakowatz void TCountHandlersTest::CountHandlersTest1()
28*38f5cecaSejakowatz {
29*38f5cecaSejakowatz 	BLooper Looper;
30*38f5cecaSejakowatz 	CPPUNIT_ASSERT(Looper.CountHandlers() == 1);
31*38f5cecaSejakowatz }
32*38f5cecaSejakowatz //------------------------------------------------------------------------------
33*38f5cecaSejakowatz /**
34*38f5cecaSejakowatz 	CountHandlers()
35*38f5cecaSejakowatz 	@case		Several handlers added, then removed
36*38f5cecaSejakowatz 	@results
37*38f5cecaSejakowatz  */
38*38f5cecaSejakowatz void TCountHandlersTest::CountHandlersTest2()
39*38f5cecaSejakowatz {
40*38f5cecaSejakowatz 	BLooper Looper;
41*38f5cecaSejakowatz 	BHandler Handler1;
42*38f5cecaSejakowatz 	BHandler Handler2;
43*38f5cecaSejakowatz 	BHandler Handler3;
44*38f5cecaSejakowatz 
45*38f5cecaSejakowatz 	Looper.AddHandler(&Handler1);
46*38f5cecaSejakowatz 	CPPUNIT_ASSERT(Looper.CountHandlers() == 2);
47*38f5cecaSejakowatz 	Looper.AddHandler(&Handler2);
48*38f5cecaSejakowatz 	CPPUNIT_ASSERT(Looper.CountHandlers() == 3);
49*38f5cecaSejakowatz 	Looper.AddHandler(&Handler3);
50*38f5cecaSejakowatz 	CPPUNIT_ASSERT(Looper.CountHandlers() == 4);
51*38f5cecaSejakowatz 
52*38f5cecaSejakowatz 	Looper.RemoveHandler(&Handler3);
53*38f5cecaSejakowatz 	CPPUNIT_ASSERT(Looper.CountHandlers() == 3);
54*38f5cecaSejakowatz 	Looper.RemoveHandler(&Handler2);
55*38f5cecaSejakowatz 	CPPUNIT_ASSERT(Looper.CountHandlers() == 2);
56*38f5cecaSejakowatz 	Looper.RemoveHandler(&Handler1);
57*38f5cecaSejakowatz 	CPPUNIT_ASSERT(Looper.CountHandlers() == 1);
58*38f5cecaSejakowatz }
59*38f5cecaSejakowatz //------------------------------------------------------------------------------
60*38f5cecaSejakowatz TestSuite* TCountHandlersTest::Suite()
61*38f5cecaSejakowatz {
62*38f5cecaSejakowatz 	TestSuite* suite = new TestSuite("BLooper::CountHandlers()");
63*38f5cecaSejakowatz 
64*38f5cecaSejakowatz 	ADD_TEST(suite, TCountHandlersTest, CountHandlersTest1);
65*38f5cecaSejakowatz 	ADD_TEST(suite, TCountHandlersTest, CountHandlersTest2);
66*38f5cecaSejakowatz 
67*38f5cecaSejakowatz 	return suite;
68*38f5cecaSejakowatz }
69*38f5cecaSejakowatz //------------------------------------------------------------------------------
70*38f5cecaSejakowatz 
71*38f5cecaSejakowatz /*
72*38f5cecaSejakowatz  * $Log $
73*38f5cecaSejakowatz  *
74*38f5cecaSejakowatz  * $Id  $
75*38f5cecaSejakowatz  *
76*38f5cecaSejakowatz  */
77*38f5cecaSejakowatz 
78