Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
timeoutQueue_test.cc File Reference

Comprehensive tests for TimeoutQueue class. More...

#include <gtest/gtest.h>
#include <stdexcept>
#include <atomic>
#include <chrono>
#include <thread>
#include <vector>
#include <mutex>
#include <condition_variable>
#include <timeoutQueue.H>
Include dependency graph for timeoutQueue_test.cc:

Go to the source code of this file.

Classes

class  TestEvent
 
class  SignalingEvent
 
class  TimingEvent
 
class  ReschedulingEvent
 
class  TimeoutQueueEnvironment
 

Functions

static Time time_from_now_ms (int ms)
 
 TEST (TimeoutQueueTest, ScheduleAndExecuteSingleEvent)
 
 TEST (TimeoutQueueTest, EventExecutionStatus)
 
 TEST (TimeoutQueueTest, ScheduleWithExplicitTime)
 
 TEST (TimeoutQueueTest, GetAbsoluteTime)
 
 TEST (TimeoutQueueTest, CancelEventBeforeExecution)
 
 TEST (TimeoutQueueTest, CancelEventNotInQueue)
 
 TEST (TimeoutQueueTest, CancelDeleteEvent)
 
 TEST (TimeoutQueueTest, CancelDeleteNullEvent)
 
 TEST (TimeoutQueueTest, RescheduleEvent)
 
 TEST (TimeoutQueueTest, RescheduleNotInQueue)
 
 TEST (TimeoutQueueTest, SelfReschedulingEvent)
 
 TEST (TimeoutQueueTest, MultipleEventsExecuteInOrder)
 
 TEST (TimeoutQueueTest, ManyEventsStressTest)
 
 TEST (TimeoutQueueTest, EventWithImmediateTime)
 
 TEST (TimeoutQueueTest, EventThrowsException)
 
 TEST (TimeoutQueueTest, SetForDeletion)
 
 TEST (TimeoutQueueTest, TimingAccuracy)
 
 TEST (TimeoutQueueTest, ConcurrentScheduling)
 
 TEST (TimeoutQueueTest, ConcurrentCancellation)
 
 TEST (TimeoutQueueTest, SizeAndIsEmpty)
 
 TEST (TimeoutQueueTest, IsRunning)
 
 TEST (TimeoutQueueTest, ScheduleAfterMs)
 
 TEST (TimeoutQueueTest, NextEventTime)
 
 TEST (TimeoutQueueTest, ExecutedStatus)
 
 TEST (TimeoutQueueTest, ClearAll)
 
 TEST (TimeoutQueueTest, Statistics)
 
 TEST (TimeoutQueueTest, ResetStats)
 
 TEST (TimeoutQueueTest, PauseAndResume)
 
 TEST (TimeoutQueueTest, WaitUntilEmpty)
 
 TEST (TimeoutQueueTest, WaitUntilEmptyTimeout)
 
 TEST (TimeoutQueueTest, WaitUntilEmptyAfterCancel)
 
 TEST (TimeoutQueueTest, WaitUntilEmptyAfterCancelDelete)
 
 TEST (TimeoutQueueTest, EventName)
 
 TEST (TimeoutQueueTest, CompletionCallback)
 
 TEST (TimeoutQueueTest, CompletionCallbackOnCancel)
 
 TEST (TimeoutQueueTest, EventId)
 
 TEST (TimeoutQueueTest, FindById)
 
 TEST (TimeoutQueueTest, CancelById)
 
 TEST (TimeoutQueueTest, CancelByIdWithCallback)
 
 TEST (TimeoutQueueTest, DestructorWithoutShutdown)
 
 TEST (TimeoutQueueTest, CancelBeforeDeleteIsSafe)
 
 TEST (TimeoutQueueTest, CancelDuringTimeout)
 
 TEST (TimeoutQueueTest, RescheduleDuringTimeout)
 
 TEST (TimeoutQueueTest, NullEventValidation)
 
 TEST (TimeoutQueueTest, InvalidNsecValidation)
 
 TEST (TimeoutQueueTest, ScheduleSameEventTwiceThrows)
 
 TEST (TimeoutQueueTest, ShutdownCancelsPendingEventsAndInvokesCallback)
 
 TEST (TimeoutQueueTest, CancelDeleteEventCallback)
 
 TEST (TimeoutQueueTest, CancelDeleteExecutingEvent)
 
 TEST (TimeoutQueueTest, CallbackReceivesNullptrOnlyForDeleted)
 
 TEST (TimeoutQueueTest, CompletionCallbackOrderCorrect)
 
 TEST (TimeoutQueueTest, CompletionCallbackCanClearAllWithoutDeadlock)
 
 TEST (TimeoutQueueTest, MultipleEventsWithSameTime)
 
int main (int argc, char **argv)
 

Variables

static TimeoutQueueg_queue = nullptr
 

Detailed Description

Comprehensive tests for TimeoutQueue class.

Note: Updated to reflect header Doxygen group changes.

Note: TimeoutQueue is a singleton (only one instance allowed). All tests share a single global queue instance.

Definition in file timeoutQueue_test.cc.

Function Documentation

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 1340 of file timeoutQueue_test.cc.

References Aleph::divide_and_conquer_partition_dp().

◆ TEST() [1/53]

◆ TEST() [2/53]

◆ TEST() [3/53]

◆ TEST() [4/53]

◆ TEST() [5/53]

TEST ( TimeoutQueueTest  ,
CancelDeleteEvent   
)

◆ TEST() [6/53]

◆ TEST() [7/53]

◆ TEST() [8/53]

TEST ( TimeoutQueueTest  ,
CancelDeleteNullEvent   
)

◆ TEST() [9/53]

◆ TEST() [10/53]

◆ TEST() [11/53]

TEST ( TimeoutQueueTest  ,
CancelEventNotInQueue   
)

◆ TEST() [12/53]

◆ TEST() [13/53]

TEST ( TimeoutQueueTest  ,
CompletionCallback   
)

◆ TEST() [14/53]

TEST ( TimeoutQueueTest  ,
CompletionCallbackCanClearAllWithoutDeadlock   
)

◆ TEST() [15/53]

TEST ( TimeoutQueueTest  ,
CompletionCallbackOnCancel   
)

◆ TEST() [16/53]

TEST ( TimeoutQueueTest  ,
CompletionCallbackOrderCorrect   
)

◆ TEST() [17/53]

TEST ( TimeoutQueueTest  ,
ConcurrentCancellation   
)

◆ TEST() [18/53]

TEST ( TimeoutQueueTest  ,
ConcurrentScheduling   
)

◆ TEST() [19/53]

TEST ( TimeoutQueueTest  ,
DestructorWithoutShutdown   
)

◆ TEST() [20/53]

◆ TEST() [21/53]

TEST ( TimeoutQueueTest  ,
EventId   
)

◆ TEST() [22/53]

TEST ( TimeoutQueueTest  ,
EventName   
)

◆ TEST() [23/53]

TEST ( TimeoutQueueTest  ,
EventThrowsException   
)

◆ TEST() [24/53]

TEST ( TimeoutQueueTest  ,
EventWithImmediateTime   
)

◆ TEST() [25/53]

TEST ( TimeoutQueueTest  ,
ExecutedStatus   
)

◆ TEST() [26/53]

◆ TEST() [27/53]

TEST ( TimeoutQueueTest  ,
GetAbsoluteTime   
)

◆ TEST() [28/53]

TEST ( TimeoutQueueTest  ,
InvalidNsecValidation   
)

◆ TEST() [29/53]

TEST ( TimeoutQueueTest  ,
IsRunning   
)

◆ TEST() [30/53]

TEST ( TimeoutQueueTest  ,
ManyEventsStressTest   
)

◆ TEST() [31/53]

TEST ( TimeoutQueueTest  ,
MultipleEventsExecuteInOrder   
)

◆ TEST() [32/53]

TEST ( TimeoutQueueTest  ,
MultipleEventsWithSameTime   
)

◆ TEST() [33/53]

◆ TEST() [34/53]

TEST ( TimeoutQueueTest  ,
NullEventValidation   
)

◆ TEST() [35/53]

◆ TEST() [36/53]

TEST ( TimeoutQueueTest  ,
RescheduleDuringTimeout   
)

◆ TEST() [37/53]

TEST ( TimeoutQueueTest  ,
RescheduleEvent   
)

◆ TEST() [38/53]

TEST ( TimeoutQueueTest  ,
RescheduleNotInQueue   
)

◆ TEST() [39/53]

◆ TEST() [40/53]

TEST ( TimeoutQueueTest  ,
ScheduleAfterMs   
)

◆ TEST() [41/53]

TEST ( TimeoutQueueTest  ,
ScheduleAndExecuteSingleEvent   
)

◆ TEST() [42/53]

TEST ( TimeoutQueueTest  ,
ScheduleSameEventTwiceThrows   
)

◆ TEST() [43/53]

TEST ( TimeoutQueueTest  ,
ScheduleWithExplicitTime   
)

◆ TEST() [44/53]

TEST ( TimeoutQueueTest  ,
SelfReschedulingEvent   
)

◆ TEST() [45/53]

TEST ( TimeoutQueueTest  ,
SetForDeletion   
)

◆ TEST() [46/53]

TEST ( TimeoutQueueTest  ,
ShutdownCancelsPendingEventsAndInvokesCallback   
)

◆ TEST() [47/53]

◆ TEST() [48/53]

◆ TEST() [49/53]

TEST ( TimeoutQueueTest  ,
TimingAccuracy   
)

◆ TEST() [50/53]

◆ TEST() [51/53]

◆ TEST() [52/53]

◆ TEST() [53/53]

◆ time_from_now_ms()

Variable Documentation

◆ g_queue