__attribute__ ((constructor)) static void saNtfObjectCreateDeleteNotificationAllocate_constructor(void)
{
    test_suite_add(6, "Producer API 2 allocate");
    test_case_add(6, saNtfObjectCreateDeleteNotificationAllocate_01, "saNtfObjectCreateDeleteNotificationAllocate SA_AIS_OK");
    test_case_add(6, saNtfObjectCreateDeleteNotificationAllocate_02, "saNtfObjectCreateDeleteNotificationAllocate SA_AIS_ERR_BAD_HANDLE");
    test_case_add(6, saNtfObjectCreateDeleteNotificationAllocate_03, "saNtfObjectCreateDeleteNotificationAllocate SA_AIS_ERR_INVALID_PARAM");
}
__attribute__ ((constructor)) static void saNtfNotificationReadInitialize_constructor(
		void) {
	test_suite_add(20, "Consumer operations - Reader API 1");
	test_case_add(20, saNtfNotificationReadInitialize_01_1,
			"saNtfNotificationReadInitialize searchCriteria SA_NTF_SEARCH_BEFORE_OR_AT_TIME");
	test_case_add(20, saNtfNotificationReadInitialize_01_2,
			"saNtfNotificationReadInitialize searchCriteria SA_NTF_SEARCH_AT_TIME");
	test_case_add(20, saNtfNotificationReadInitialize_01_3,
			"saNtfNotificationReadInitialize searchCriteria SA_NTF_SEARCH_AT_OR_AFTER_TIME");
	test_case_add(20, saNtfNotificationReadInitialize_01_4,
			"saNtfNotificationReadInitialize searchCriteria SA_NTF_SEARCH_BEFORE_TIME");
	test_case_add(20, saNtfNotificationReadInitialize_01_5,
			"saNtfNotificationReadInitialize searchCriteria SA_NTF_SEARCH_AFTER_TIME");
	test_case_add(20, saNtfNotificationReadInitialize_01_6,
			"saNtfNotificationReadInitialize searchCriteria SA_NTF_SEARCH_NOTIFICATION_ID");
	test_case_add(20, saNtfNotificationReadInitialize_01_7,
			"saNtfNotificationReadInitialize searchCriteria SA_NTF_SEARCH_ONLY_FILTER");

	test_case_add(20, saNtfNotificationReadInitialize_02,
			"saNtfNotificationReadInitialize filter NULL pointer SA_AIS_ERR_INVALID_PARAM");
	test_case_add(20, saNtfNotificationReadInitialize_03,
			"saNtfNotificationReadInitialize filterHandle freed SA_AIS_ERR_BAD_HANDLE");
/*	test_case_add(20, saNtfNotificationReadInitialize_04,
			"saNtfNotificationReadInitialize multiple filters SA_AIS_OK"); */
}
__attribute__ ((constructor)) static void saImmOiRtObjectCreate_2_constructor(void)
{
    dnObj1.length = (SaUint16T) sprintf((char*) dnObj1.value, "%s,%s", rdnObj1.value, rootObj.value);
    dnObj2.length = (SaUint16T) sprintf((char*) dnObj2.value, "%s,%s", rdnObj2.value, rootObj.value);

    test_suite_add(3, "Runtime Objects Management");
    test_case_add(3, saImmOiRtObjectCreate_2_01, "saImmOiRtObjectCreate_2 - SA_AIS_OK");
    test_case_add(3, saImmOiRtObjectCreate_2_03, "saImmOiRtObjectCreate_2 - SA_AIS_ERR_BAD_HANDLE - invalid handle");
    test_case_add(3, saImmOiRtObjectCreate_2_04, "saImmOiRtObjectCreate_2 - SA_AIS_ERR_BAD_OPERATION - immOiHandle not associated with implementer name");
    test_case_add(3, saImmOiRtObjectCreate_2_05, "saImmOiRtObjectCreate_2 - SA_AIS_ERR_NOT_EXIST - className non existing");
    test_case_add(3, saImmOiRtObjectCreate_2_06, "saImmOiRtObjectCreate_2 - SA_AIS_ERR_EXIST - object already created");

    test_case_add(3, saImmOiRtObjectCreate_2_07, "saImmOiRtObjectCreate_2 - SA_AIS_ERR_NAME_TOO_LONG - size of dn for new object too big. Not valid test with extended names");

    test_case_add(3, saImmOiRtObjectDelete_01, "saImmOiRtObjectDelete - SA_AIS_OK");
    test_case_add(3, saImmOiRtObjectDelete_03, "saImmOiRtObjectDelete - SA_AIS_ERR_BAD_HANDLE - invalid handle");
    test_case_add(3, saImmOiRtObjectDelete_04, "saImmOiRtObjectDelete - SA_AIS_ERR_BAD_OPERATION - immOiHandle not associated with implementer name");
    test_case_add(3, saImmOiRtObjectDelete_05, "saImmOiRtObjectDelete - SA_AIS_ERR_INVALID_PARAM - non existing object");
    test_case_add(3, saImmOiRtObjectDelete_06, "saImmOiRtObjectDelete - SA_AIS_ERR_BAD_OPERATION - delete configuration object");

    test_case_add(3, saImmOiRtObjectUpdate_2_01, "saImmOiRtObjectUpdate_2 - SA_AIS_OK");
    test_case_add(3, saImmOiRtObjectUpdate_2_02, "saImmOiRtObjectUpdate_2 - SA_AIS_ERR_BAD_HANDLE - invalid handle");
    test_case_add(3, saImmOiRtObjectUpdate_2_03, "saImmOiRtObjectUpdate_2 - SA_AIS_ERR_BAD_OPERATION - immOiHandle not associated with implementer name");
    test_case_add(3, saImmOiRtObjectUpdate_2_04, "saImmOiRtObjectUpdate_2 - SA_AIS_ERR_BAD_OPERATION - update object not owned by implementer");
    test_case_add(3, saImmOiRtObjectUpdate_2_05, "saImmOiRtObjectUpdate_2 - SA_AIS_ERR_INVALID_PARAM - new value for the RDN attr");
    test_case_add(3, saImmOiRtObjectUpdate_2_06, "saImmOiRtObjectUpdate_2 - SA_AIS_ERR_INVALID_PARAM - update configuration attribute");

    test_case_add(3, SaImmOiRtAttrUpdateCallbackT_01, "SaImmOiRtAttrUpdateCallbackT - SA_AIS_OK");
}
__attribute__ ((constructor)) static void saImmOmInitialize_constructor(void)
{
    test_suite_add(3, "Object Search");
    test_case_add(3, saImmOmSearchInitialize_2_01, "saImmOmSearchInitialize_2 - SA_AIS_OK");
    test_case_add(3, saImmOmSearchInitialize_2_02, "saImmOmSearchInitialize_2 - SA_AIS_ERR_BAD_HANDLE");
    test_case_add(3, saImmOmSearchInitialize_2_03, "saImmOmSearchInitialize_2 - SA_AIS_ERR_INVALID_PARAM, invalid scope (-1)");
    test_case_add(3, saImmOmSearchInitialize_2_04, "saImmOmSearchInitialize_2 - SA_AIS_ERR_INVALID_PARAM, invalid scope (SA_IMM_ONE)");
    test_case_add(3, saImmOmSearchInitialize_2_05, "saImmOmSearchInitialize_2 - SA_AIS_ERR_INVALID_PARAM, invalid searchOptions");
    test_case_add(3, saImmOmSearchInitialize_2_06,
        "saImmOmSearchInitialize_2 - SA_AIS_ERR_INVALID_PARAM, searchHandle set although SA_IMM_SEARCH_GET_SOME_ATTR is not set");
    test_case_add(3, saImmOmSearchInitialize_2_07,
        "saImmOmSearchInitialize_2 - SA_AIS_OK, Match on existence of attribute SA_IMM_ATTR_CLASS_NAME See: #1895");
    test_case_add(3, saImmOmSearchInitialize_2_08,
        "saImmOmSearchInitialize_2 - SA_AIS_NO_RESOURCES, Allocate too many search handles for one om-handle");
    test_case_add(3, saImmOmSearchInitialize_2_09,
        "saImmOmSearchInitialize_2 - SA_AIS_NO_RESOURCES, Test the limit of search handles for one om-handle");
    test_case_add(3, saImmOmSearchInitialize_2_10,
        "saImmOmSearchInitialize_2 - SA_AIS_NO_RESOURCES, Test the limit of search handles for one om-handle (200 handles)");

    test_case_add(3, saImmOmSearchNext_2_01, "saImmOmSearchNext_2 - SA_AIS_OK/SA_AIS_ERR_NOT_EXIST (tree walk)");
    test_case_add(3, saImmOmSearchNext_2_02, "saImmOmSearchNext_2 - SA_AIS_ERR_BAD_HANDLE");

    test_case_add(3, saImmOmSearchFinalize_01, "saImmOmSearchFinalize - SA_AIS_OK");
    test_case_add(3, saImmOmSearchFinalize_02, "saImmOmSearchFinalize - SA_AIS_ERR_BAD_HANDLE");
    test_case_add(3, saImmOmSearchNext_2_03, "saImmOmSearchNext_2 - SA_AIS_OK/SEARCH_GET_CONFIG_ATTR");
}
__attribute__ ((constructor)) static void saClmClusterTrackStop_constructor(void)
{
        test_suite_add(9, "Test case for saClmClusterTrackStop");
	test_case_add(9, saClmClusterTrackStop_01, "saClmClusterTrackStop with valid arguments, SA_AIS_OK");
	test_case_add(9, saClmClusterTrackStop_02, "saClmClusterTrackStop with invalid handle, SA_AIS_ERR_BAD_HANDLE");
	
}
__attribute__ ((constructor)) static void saClmFinalize_constructor(void)
{
        test_suite_add(2, "Test case for saClmFinalize");
	test_case_add(2, saClmFinalize_01, "saClmFinalize SA_AIS_OK");
	test_case_add(2, saClmFinalize_02, "saClmFinalize SA_AIS_ERR_BAD_HANDLE - invalid handle");
	test_case_add(2, saClmFinalize_03, "saClmFinalize SA_AIS_ERR_BAD_HANDLE - handle already returned");
}
__attribute__ ((constructor)) static void saNtfNotificationUnsubscribe_constructor(void)
{
    test_suite_add(11, "Consumer operations - unsubscribe");
    test_case_add(11, saNtfNotificationUnsubscribe_01, "saNtfNotificationUnsubscribe first simple SA_AIS_OK");
    test_case_add(11, saNtfNotificationUnsubscribe_02, "saNtfNotificationUnsubscribe wrong id SA_AIS_ERR_NOT_EXIST");
    test_case_add(11, saNtfNotificationUnsubscribe_03, "saNtfNotificationUnsubscribe no subscription exist SA_AIS_ERR_NOT_EXIST");
}
__attribute__ ((constructor)) static void saNtfNotificationSubscribe_constructor(void)
{
    test_suite_add(10, "Consumer operations - subscribe");
    test_case_add(10, saNtfNotificationSubscribe_01, "saNtfNotificationSubscribe first simple SA_AIS_OK");
    test_case_add(10, saNtfNotificationSubscribe_02, "saNtfNotificationSubscribe null handle SA_AIS_ERR_INVALID_PARAM");
    test_case_add(10, saNtfNotificationSubscribe_03, "saNtfNotificationSubscribe All filter handles null  SA_AIS_ERR_INVALID_PARAM");
    test_case_add(10, saNtfNotificationSubscribe_04, "saNtfNotificationSubscribe subscriptionId exist SA_AIS_ERR_EXIST");
}
__attribute__ ((constructor)) static void saImmOmAdminOperationContinue_constructor(void)
{
    test_suite_add(7, "Administrative Operations Invocation");
    test_case_add(7, saImmOmAdminOperationContinue_01, "saImmOmAdminOperationContinue - SA_AIS_ERR_NOT_SUPPORTED");
    test_case_add(7, saImmOmAdminOperationContinue_02, "saImmOmAdminOperationContinue_o2 - SA_AIS_ERR_NOT_SUPPORTED");
    test_case_add(7, saImmOmAdminOperationContinueAsync_01, "saImmOmAdminOperationContinueAsync - SA_AIS_ERR_NOT_SUPPORTED");
    test_case_add(7, saImmOmAdminOperationContinuationClear_01, "saImmOmAdminOperationContinuationClear - SA_AIS_ERR_NOT_SUPPORTED");
    test_case_add(7, saImmOmAdminOwnerSet_07, "saImmOmAdminOwnerInvokeAsync_2 - SA_AIS_ERR_INIT, no OM callback provided");

}
__attribute__ ((constructor)) static void saNtfPtrValAllocate_constructor(void)
{
    test_suite_add(28, "Producer API ");
    test_case_add(28, saNtfPtrAllocateTest_01, "saNtfPtrValAllocate SA_AIS_OK");
    test_case_add(28, saNtfPtrAllocateTest_02, "saNtfPtrValAllocate bad handle SA_AIS_ERR_BAD_HANDLE");
    test_case_add(28, saNtfPtrAllocateTest_03, "saNtfPtrValAllocate handle freed SA_AIS_ERR_BAD_HANDLE");
    test_case_add(28, saNtfPtrAllocateTest_04, "saNtfPtrValAllocate bad dataPtr SA_AIS_ERR_INVLID_PARAM");
    test_case_add(28, saNtfPtrAllocateTest_05, "saNtfPtrValAllocate bad value pointer SA_AIS_ERR_INVLID_PARAM");
    test_case_add(28, saNtfPtrAllocateTest_06, "datasize bigger than implementation specific system limit SA_AIS_ERR_TOO_BIG");
}
__attribute__ ((constructor)) static void saNtfStateChangeNotificationAllocate_constructor(void) {
	test_suite_add(6, "Producer API 2 allocate");
	test_case_add(6, saNtfStateChangeNotificationAllocate_01,
			"saNtfStateChangeNotificationAllocate SA_AIS_OK");
	test_case_add(6, saNtfStateChangeNotificationAllocate_02,
				"saNtfStateChangeNotificationAllocate SA_AIS_ERR_BAD_HANDLE");
	test_case_add(6, saNtfStateChangeNotificationAllocate_03,
				"saNtfStateChangeNotificationAllocate NULL notification SA_AIS_ERR_INVALID_PARAM");
	//	test_case_add(6, saNtfStateChangeNotificationAllocate_03, "saNtfStateChangeNotificationAllocate SA_AIS_ERR_TOO_BIG");
	//	test_case_add(6, saNtfStateChangeNotificationAllocate_03, "saNtfStateChangeNotificationAllocate SA_AIS_ERR_UNAVAILABLE");
}
__attribute__ ((constructor)) static void notificationContentVerification_constructor(void)
{
    test_suite_add(30, "Notification Content Verification");
    test_case_add(30, alarmNotificationTest, "AlarmNotification");
    test_case_add(30, alarmNotificationTest2, "AlarmNotification values");
    test_case_add(30, objectCreateDeleteNotificationTest, "ObjectCreateDeleteNotification");
    test_case_add(30, attributeChangeNotificationTest, "AttributeChangeNotification");
    test_case_add(30, stateChangeNotificationTest, "StateChangeNotification");
    test_case_add(30, securityAlarmNotificationTest, "SecurityAlarmNotification");
    test_case_add(30, miscellaneousNotificationTest, "MiscellaneousNotification");
    test_case_add(30, allNotificationTest, "All Notifications at once");
}
__attribute__ ((constructor)) static void
saNtfObjectCreateDeleteNotificationFilterAllocate_constructor(void)
{
    test_suite_add(7, "Consumer operations - filter allocate");
    test_case_add(7,saNtfObjectCreateDeleteNotificationFilterAllocate_01,
    		"saNtfObjectCreateDeleteNotificationFilterAllocate - SA_AIS_OK");
    test_case_add(7,saNtfObjectCreateDeleteNotificationFilterAllocate_02,
    		"saNtfObjectCreateDeleteNotificationFilterAllocate - handle null SA_AIS_ERR_BAD_HANDLE");
    test_case_add(7,saNtfObjectCreateDeleteNotificationFilterAllocate_03,
    		"saNtfObjectCreateDeleteNotificationFilterAllocate - handle returned SA_AIS_ERR_BAD_HANDLE");
    test_case_add(7,saNtfObjectCreateDeleteNotificationFilterAllocate_04,
    		"saNtfObjectCreateDeleteNotificationFilterAllocate - SA_AIS_ERR_INVALID_PARAM");
}
__attribute__ ((constructor)) static void saPlmEntityGroupCreate_constructor(void)
{
   test_suite_add(2, "Entity group create");
   test_case_add(2, saPlmEntityGroupCreate_01, "saPlmEntityGroupCreate - SA_AIS_OK");
   test_case_add(2, saPlmEntityGroupCreate_02, "saPlmEntityGroupCreate with NULL callbacks - SA_AIS_OK");
   test_case_add(2, saPlmEntityGroupCreate_03, "saPlmEntityGroupCreate with bad plmhandle  - SA_AIS_ERR_BAD_HANDLE");
   test_case_add(2, saPlmEntityGroupCreate_04, "saPlmEntityGroupCreate with invalid param -SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2,saPlmEntityGroupAdd_01 , "saPlmEntityGroupAdd_01 with SA_PLM_GROUP_SINGLE_ENTITY option - SA_AIS_OK");
   test_case_add(2,saPlmEntityGroupAdd_02 , "saPlmEntityGroupAdd_02 with SA_PLM_GROUP_SUBTREE option - SA_AIS_OK");
   test_case_add(2,saPlmEntityGroupAdd_03 , "saPlmEntityGroupAdd_03 with SA_PLM_GROUP_SUBTREE_HES_ONLY option - SA_AIS_OK");
   test_case_add(2,saPlmEntityGroupAdd_04 , "saPlmEntityGroupAdd_04 with SA_PLM_GROUP_SUBTREE_EES_ONLY option - SA_AIS_OK");
//   test_case_add(2,saPlmEntityGroupAdd_05 , "saPlmEntityGroupAdd_05 with bad plmhandle SA_AIS_ERR_BAD_HANDLE");
   test_case_add(2,saPlmEntityGroupAdd_06 , "saPlmEntityGroupAdd_06 with invalid DN SA_AIS_ERR_INVALID_PARAM ");
   test_case_add(2,saPlmEntityGroupAdd_07 , "saPlmEntityGroupAdd_07 with invalid DN SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2,saPlmEntityGroupAdd_08 , "saPlmEntityGroupAdd_08 with invalid entityNamesNumber SA_AIS_ERR_INVALID_PARAM");
   //test_case_add(2,saPlmEntityGroupAdd_09 , "saPlmEntityGroupAdd_09 with invalid entityNamesNumber SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2,saPlmEntityGroupAdd_10 , "saPlmEntityGroupAdd_10 with invalid group add option SA_AIS_ERR_INVALID_PARAM ");
   test_case_add(2,saPlmEntityGroupAdd_11 , "saPlmEntityGroupAdd_11 with invalid plmhandle SA_AIS_ERR_BAD_HANDLE ");
   test_case_add(2,saPlmEntityGroupAdd_12 , "saPlmEntityGroupAdd_12 with already added DN SA_AIS_ERR_EXIST ");
   test_case_add(2,saPlmEntityGroupAdd_13 , "saPlmEntityGroupAdd_13 - with nonexistent DN SA_AIS_ERR_NOT_EXIST");
   test_case_add(2,saPlmEntityGroupAdd_14 , "saPlmEntityGroupAdd_14 - Added EE in a group with SA_PLM_GROUP_SUBTREE_HES_ONLY SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2,saPlmEntityGroupAdd_15 , "saPlmEntityGroupAdd_15 - Added HE in a group with SA_PLM_GROUP_SUBTREE_EES_ONLY SA_AIS_OK");
   test_case_add(2,saPlmEntityGroupAdd_16 , "saPlmEntityGroupAdd_16 - Added HE after adding the parent with SA_PLM_GROUP_SUBTREE_HES_ONLY option SA_AIS_ERR_EXIST");
   test_case_add(2, saPlmEntityGroupRemove_01, "saPlmEntityGroupRemove_1 with SA_PLM_GROUP_SINGLE_ENTITY option - SA_AIS_OK");
   test_case_add(2, saPlmEntityGroupRemove_02, "saPlmEntityGroupRemove_2 with SA_PLM_GROUP_SUBTREE option - SA_AIS_OK");
   test_case_add(2, saPlmEntityGroupRemove_03, "saPlmEntityGroupRemove_3 with SA_PLM_GROUP_SUBTREE_HES_ONLY option -SA_AIS_OK");
   test_case_add(2, saPlmEntityGroupRemove_04, "saPlmEntityGroupRemove_4 with SA_PLM_GROUP_SUBTREE_EES_ONLY option -SA_AIS_OK");
   test_case_add(2, saPlmEntityGroupRemove_05, "saPlmEntityGroupRemove_5 with bad plmhandle SA_AIS_ERR_BAD_HANDLE");
   test_case_add(2, saPlmEntityGroupRemove_06, "saPlmEntityGroupRemove_6 with bad grouphandle SA_AIS_ERR_BAD_HANDLE");
   test_case_add(2, saPlmEntityGroupRemove_07, "saPlmEntityGroupRemove_7 with bad grouphandle SA_AIS_ERR_BAD_HANDLE");
   test_case_add(2, saPlmEntityGroupRemove_08, "saPlmEntityGroupRemove_8 with no DN name specified SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2, saPlmEntityGroupRemove_10, "saPlmEntityGroupRemove_10 with no of entities are blank SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2, saPlmEntityGroupRemove_11, "saPlmEntityGroupRemove_11 with DN already removed  SA_AIS_ERR_NOT_EXIST");
   test_case_add(2, saPlmEntityGroupRemove_12, "saPlmEntityGroupRemove_12 with non existent DN");
   test_case_add(2, saPlmEntityGroupRemove_13, "saPlmEntityGroupRemove_13 with different delete option than add SA_AIS_ERR_INVALID_PARAM ");
   test_case_add(2, saPlmEntityGroupRemove_14, "saPlmEntityGroupRemove_14 with different delete option than add SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2, saPlmEntityGroupRemove_15, "saPlmEntityGroupRemove_15 with different delete option than add SA_AIS_ERR_INVALID_PARAM");
   test_case_add(2, saPlmEntityGroupRemove_16, "saPlmEntityGroupRemove_16 to remove a child while parent is added with subtree option SA_AIS_OK");
   
   test_case_add(2, saPlmEntityGroupRemove_17, "saPlmEntityGroupRemove_17 to remove a child while parent is added with different subtree option SA_AIS_ERR_INVALID_PARAM ");
   test_case_add(2, saPlmEntityGroupRemove_18, "saPlmEntityGroupRemove_18 to remove a entity which does not belong to group SA_AIS_ERR_NOT_EXIST ");
   test_case_add(2,saPlmEntityGroupDelete_01, "saPlmEntityGroupDelete_01 - SA_AIS_OK ");
   test_case_add(2,saPlmEntityGroupDelete_02, "saPlmEntityGroupDelete_02 with invalid grouphandle - SA_AIS_ERR_BAD_HANDLE");
   test_case_add(2,saPlmEntityGroupDelete_03, "saPlmEntityGroupDelete_03 with invalid grouphandle after plmhandle got finalize - SA_AIS_ERR_BAD_HANDLE");

}
__attribute__ ((constructor)) static void saLibraryLifeCycle_constructor(void)
{
    test_suite_add(2, "Log Service Operations");
    test_case_add(2, saLogStreamOpen_2_01, "saLogStreamOpen_2() system stream OK");
    test_case_add(2, saLogStreamOpen_2_02, "saLogStreamOpen_2() notification stream OK");
    test_case_add(2, saLogStreamOpen_2_03, "saLogStreamOpen_2() alarm stream OK");
    test_case_add(2, saLogStreamOpen_2_04, "Create app stream OK");
    test_case_add(2, saLogStreamOpen_2_05, "Create and open app stream");
    test_case_add(2, saLogStreamOpen_2_06, "saLogStreamOpen_2() - NULL ptr to handle");
    test_case_add(2, saLogStreamOpen_2_08, "saLogStreamOpen_2() - NULL logStreamName");
    test_case_add(2, saLogStreamOpen_2_09, "Open app stream second time with altered logFileName");
    test_case_add(2, saLogStreamOpen_2_10, "Open app stream second time with altered logFilePathName");
    test_case_add(2, saLogStreamOpen_2_11, "Open app stream second time with altered logFileFmt");
    test_case_add(2, saLogStreamOpen_2_12, "Open app stream second time with altered maxLogFileSize");
    test_case_add(2, saLogStreamOpen_2_13, "Open app stream second time with altered maxLogRecordSize");
    test_case_add(2, saLogStreamOpen_2_14, "Open app stream second time with altered maxFilesRotated");
    test_case_add(2, saLogStreamOpen_2_15, "Open app stream second time with altered haProperty");
    test_case_add(2, saLogStreamOpen_2_16, "Open app with logFileFmt == NULL");
    test_case_add(2, saLogStreamOpen_2_17, "Open app stream second time with logFileFmt == NULL");
    test_case_add(2, saLogStreamOpen_2_18, "Open app stream with NULL logFilePathName");
    test_case_add(2, saLogStreamOpen_2_19, "Open app stream with '.' logFilePathName");
    test_case_add(2, saLogStreamOpen_2_20, "Open app stream with invalid logFileFmt");
    test_case_add(2, saLogStreamOpen_2_21, "Open app stream with unsupported logFullAction");
    test_case_add(2, saLogStreamOpen_2_22, "Open non exist app stream with NULL create attrs");
    test_case_add(2, saLogStreamOpenAsync_2_01, "saLogStreamOpenAsync_2(), Not supported");
    test_case_add(2, saLogStreamOpenCallbackT_01, "saLogStreamOpenCallbackT() OK");
    test_case_add(2, saLogWriteLog_01, "saLogWriteLog(), Not supported");
    test_case_add(2, saLogWriteLogAsync_01, "saLogWriteAsyncLog() system OK");
    test_case_add(2, saLogWriteLogAsync_02, "saLogWriteAsyncLog() alarm OK");
    test_case_add(2, saLogWriteLogAsync_03, "saLogWriteAsyncLog() notification OK");
    test_case_add(2, saLogWriteLogAsync_04, "saLogWriteAsyncLog() with NULL logStreamHandle");
    test_case_add(2, saLogWriteLogAsync_05, "saLogWriteAsyncLog() with invalid logStreamHandle");
    test_case_add(2, saLogWriteLogAsync_06, "saLogWriteAsyncLog() with invalid ackFlags");
    test_case_add(2, saLogWriteLogAsync_07, "saLogWriteAsyncLog() with NULL logRecord ptr");
    test_case_add(2, saLogWriteLogAsync_09, "saLogWriteAsyncLog() logSvcUsrName == NULL");
    test_case_add(2, saLogWriteLogAsync_10, "saLogWriteAsyncLog() logSvcUsrName == NULL and envset");
    test_case_add(2, saLogWriteLogAsync_11, "saLogWriteAsyncLog() with logTimeStamp set");
    test_case_add(2, saLogWriteLogAsync_12, "saLogWriteAsyncLog() without logTimeStamp set");
    test_case_add(2, saLogWriteLogAsync_13, "saLogWriteAsyncLog() 1800 bytes logrecord (ticket #203)");
    test_case_add(2, saLogWriteLogAsync_14, "saLogWriteAsyncLog() invalid severity");
    test_case_add(2, saLogWriteLogCallbackT_01, "saLogWriteLogCallbackT() SA_DISPATCH_ONE");
    test_case_add(2, saLogWriteLogCallbackT_02, "saLogWriteLogCallbackT() SA_DISPATCH_ALL");
    test_case_add(2, saLogFilterSetCallbackT_01, "saLogFilterSetCallbackT OK");
    test_case_add(2, saLogStreamClose_01, "saLogStreamClose OK");
}
__attribute__ ((constructor)) static void saLibraryLifeCycle_constructor(void)
{
    test_suite_add(3, "Limit Fetch API");
    test_case_add(3, saLogLimitGet_01, "saLogLimitGet() OK");
}
__attribute__ ((constructor)) static void saImmOmAdminOperationContinue_constructor(void)
{
    test_suite_add(7, "Administrative Operations Invocation");
    test_case_add(7, saImmOmAdminOperationContinue_01, "saImmOmAdminOperationContinue - SA_AIS_ERR_NOT_SUPPORTED");
    test_case_add(7, saImmOmAdminOperationContinueAsync_01, "saImmOmAdminOperationContinueAsync - SA_AIS_ERR_NOT_SUPPORTED");
}
__attribute__ ((constructor)) static void saImmOmLongDn_constructor(void)
{
	test_suite_add(8, "Long DN");
}
__attribute__ ((constructor)) static void saNtfNotificationDiscardedCallbackT_constructor(void)
{
    test_suite_add(23, "Consumer operations - discarded notification");
    test_case_add(23,saNtfNotificationDiscardedCallbackT_01, "saNtfNotificationDiscardedCallbackT Ok");
}