src/devices/wifi/dcf-manager-test.cc
changeset 6775 0783f42a364b
parent 6774 034f362af24d
equal deleted inserted replaced
6774:034f362af24d 6775:0783f42a364b
    56 
    56 
    57 class DcfManagerTest : public TestCase
    57 class DcfManagerTest : public TestCase
    58 {
    58 {
    59 public:
    59 public:
    60   DcfManagerTest ();
    60   DcfManagerTest ();
    61   virtual bool DoRun (void);
    61   virtual void DoRun (void);
    62 
    62 
    63 
    63 
    64   void NotifyAccessGranted (uint32_t i);
    64   void NotifyAccessGranted (uint32_t i);
    65   void NotifyInternalCollision (uint32_t i);
    65   void NotifyInternalCollision (uint32_t i);
    66   void NotifyCollision (uint32_t i);
    66   void NotifyCollision (uint32_t i);
   338                        MicroSeconds (duration));
   338                        MicroSeconds (duration));
   339 }
   339 }
   340 
   340 
   341 
   341 
   342 
   342 
   343 bool 
   343 void
   344 DcfManagerTest::DoRun (void)
   344 DcfManagerTest::DoRun (void)
   345 {
   345 {
   346   //  0      3       4    5      8       9  10   12
   346   //  0      3       4    5      8       9  10   12
   347   //  | sifs | aifsn | tx | sifs | aifsn |   | tx | 
   347   //  | sifs | aifsn | tx | sifs | aifsn |   | tx | 
   348   //
   348   //
   659   AddAccessRequest (30, 2, 80, 0); 
   659   AddAccessRequest (30, 2, 80, 0); 
   660   ExpectCollision(30, 4, 0); // backoff: 4 slots
   660   ExpectCollision(30, 4, 0); // backoff: 4 slots
   661   AddSwitchingEvt(80,20);
   661   AddSwitchingEvt(80,20);
   662   AddAccessRequest (101, 2, 110, 0);
   662   AddAccessRequest (101, 2, 110, 0);
   663   EndTest ();
   663   EndTest ();
   664   
       
   665   return GetErrorStatus ();
       
   666 }
   664 }
   667 
   665 
   668 //-----------------------------------------------------------------------------
   666 //-----------------------------------------------------------------------------
   669 
   667 
   670 class DcfTestSuite : public TestSuite
   668 class DcfTestSuite : public TestSuite