Ignore:
Timestamp:
Oct 30, 2015, 11:43:01 AM (10 years ago)
Author:
Frederik Heber <heber@…>
Children:
e24dde
Parents:
1b5188
git-author:
Frederik Heber <heber@…> (06/19/15 22:28:24)
git-committer:
Frederik Heber <heber@…> (10/30/15 11:43:01)
Message:

Added new pattern ObservedValue, contrary to Cacheable.

  • essentially updates immediately and caches a value for off-line use, safe- guard with mutexes.
  • added unit test for ObservedValue.
  • factored threeNumbers stub out of CacheableUnitTest, also used the stub in ObservedValueUnitTest.
  • we may now signOn() to Notification with a priority.
  • Cacheable can also update now via notification channels not just for global updates.
  • Observable can now also instantiate the channels directly if given a list. This was necessary as Cacheable or ObservedValue are instantiated in the constructor, too, and if listening to channels, these must already be present.
  • FIX: Channels::addChannels() used NDEBUG wrong way round.
  • ObservedValue::get() returns reference.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Observer/unittests/GraveyardUnitTest.cpp

    r1b5188 r454bc54  
    7171void GraveyardUnitTest::Zombie_soloTest()
    7272{
     73  observerLog().enableLogging();
     74
    7375  // test with unobserved Observable
    7476  Observable *simpleObservable1 = new SimpleObservable();
     
    7678  graveyard->turnZombie( simpleObservable1);
    7779  CPPUNIT_ASSERT( graveyard->graveyard.size() == 0);
     80
     81  observerLog().disableLogging();
    7882}
    7983
    8084void GraveyardUnitTest::Zombie_oneTest()
    8185{
     86  observerLog().enableLogging();
     87
    8288  // test with one Observer
    8389  SimpleObservable *simpleObservable1 = new SimpleObservable();
     
    8894  simpleObservable1->signOff(observer1);
    8995  CPPUNIT_ASSERT( graveyard->graveyard.size() == 0);
     96
     97  observerLog().disableLogging();
    9098}
    9199
    92100void GraveyardUnitTest::Zombie_manyTest()
    93101{
     102  observerLog().enableLogging();
     103
    94104  // test with some more Observers
    95105  SimpleObservable *simpleObservable1 = new SimpleObservable();
     
    120130  CPPUNIT_ASSERT( graveyard->graveyard.size() == 0);
    121131  CPPUNIT_ASSERT_EQUAL( (size_t)0, simpleObservable1->getNumberOfObservers());
     132
     133  observerLog().disableLogging();
    122134}
    123135
    124136void GraveyardUnitTest::Zombie_notificationsTest()
    125137{
     138  observerLog().enableLogging();
     139
    126140  // test with an observable with notifications
    127141  NotificationObservable *notificationObservable = new NotificationObservable();
     
    156170  CPPUNIT_ASSERT( graveyard->graveyard.size() == 0);
    157171  CPPUNIT_ASSERT_EQUAL( (size_t)0, notificationObservable->getNumberOfObservers());
     172
     173  observerLog().disableLogging();
    158174}
Note: See TracChangeset for help on using the changeset viewer.