Commit 5f3a1453 authored by Claes's avatar Claes Committed by Esteban Blanc

Project test program updates

parent ea314b66
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include "co_dcli.h" #include "co_dcli.h"
#include "co_time.h" #include "co_time.h"
#include "rt_gdh.h" #include "rt_gdh.h"
#include "rt_aproc.h"
#include "ra_errhtest.h" #include "ra_errhtest.h"
#include "rt_pwr_msg.h" #include "rt_pwr_msg.h"
#include "rt_errh_msg.h" #include "rt_errh_msg.h"
...@@ -311,6 +312,9 @@ void ra_errhtest::SetStatus(void) ...@@ -311,6 +312,9 @@ void ra_errhtest::SetStatus(void)
{PWR__APPLINFO}, {PWR__APPLINFO},
{0} {0}
}; };
aproc_TimeStamp(10, 10);
m_nodep->ProcStatus[m_anix-1] = 0;
for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) { for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) {
errh_SetStatus(d[i].sts); errh_SetStatus(d[i].sts);
......
...@@ -380,6 +380,11 @@ void ra_gdhtest::CreateObject(void) ...@@ -380,6 +380,11 @@ void ra_gdhtest::CreateObject(void)
}; };
pwr_tOName oname; pwr_tOName oname;
// Clear if objects already are created
m_sts = gdh_NameToObjid(d[0].name, &d[0].oid);
if (ODD(m_sts))
m_sts = gdh_DeleteObjectTree(d[0].oid);
for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) { for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) {
m_sts = gdh_CreateObject(d[i].name, d[i].cid, 0, &d[i].oid, m_sts = gdh_CreateObject(d[i].name, d[i].cid, 0, &d[i].oid,
pwr_cNOid, 0, pwr_cNOid); pwr_cNOid, 0, pwr_cNOid);
...@@ -2394,10 +2399,16 @@ void ra_gdhtest::GetDynamicAttrSize(void) ...@@ -2394,10 +2399,16 @@ void ra_gdhtest::GetDynamicAttrSize(void)
for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) { for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) {
m_sts = gdh_CreateObject(d[i].name, d[i].cid, d[i].size, &d[i].oid, m_sts = gdh_CreateObject(d[i].name, d[i].cid, d[i].size, &d[i].oid,
pwr_cNOid, 0, pwr_cNOid); pwr_cNOid, 0, pwr_cNOid);
if (m_sts == GDH__DUPLNAME)
m_sts = gdh_NameToObjid(d[i].name, &d[i].oid);
if (EVEN(m_sts)) {
m_log->log('E', "GetDynamicAttrSize, gdh_CreateObject", m_sts);
return;
}
m_sts = gdh_GetObjectSize(d[i].oid, &size); m_sts = gdh_GetObjectSize(d[i].oid, &size);
if (m_sts != d[i].sts) { if (m_sts != d[i].sts) {
m_log->log('E', "GetObjectSize", m_sts); m_log->log('E', "GetDynamicAttrSize", m_sts);
return; return;
} }
if (ODD(m_sts)) { if (ODD(m_sts)) {
...@@ -2409,7 +2420,7 @@ void ra_gdhtest::GetDynamicAttrSize(void) ...@@ -2409,7 +2420,7 @@ void ra_gdhtest::GetDynamicAttrSize(void)
m_sts = gdh_GetDynamicAttrSize(d[i].oid, d[i].aname, &asize); m_sts = gdh_GetDynamicAttrSize(d[i].oid, d[i].aname, &asize);
if (EVEN(m_sts)) { if (EVEN(m_sts)) {
m_log->log('E', "GetDynamicAttrSizes", m_sts); m_log->log('E', "GetDynamicAttrSize", m_sts);
return; return;
} }
if (asize != d[i].asize) { if (asize != d[i].asize) {
...@@ -2689,36 +2700,49 @@ void ra_gdhtest::GetNextVolume(void) ...@@ -2689,36 +2700,49 @@ void ra_gdhtest::GetNextVolume(void)
{"_V0.254.254.203", "_V254.254.254.245", GDH__SUCCESS}, {"_V0.254.254.203", "_V254.254.254.245", GDH__SUCCESS},
{"_V254.254.254.245", "_V0.0.0.1", GDH__SUCCESS}, {"_V254.254.254.245", "_V0.0.0.1", GDH__SUCCESS},
{"_V0.0.0.1", "_V0.0.0.2", GDH__SUCCESS}, {"_V0.0.0.1", "_V0.0.0.2", GDH__SUCCESS},
{"_V0.0.254.254", "_V1.254.254.203", GDH__SUCCESS}, {"_V0.0.240.254", "_V1.254.254.203", GDH__SUCCESS},
{"_V1.254.254.203", "", GDH__NOSUCHVOL} {"_V1.254.254.203", "", GDH__NOSUCHVOL}
}; };
pwr_tVid vid, nextvid, nvid; char volumes[][80] = {"_V0.0.0.1", "_V0.0.0.2", "_V0.0.250.7", "_V0.254.254.203",
"_V0.0.240.254", "_V254.254.254.245"};
pwr_tVid vids[] = {0, 0, 0, 0, 0, 0};
pwr_tVid vid, nvid;
int found;
for (unsigned int i = 0; i < sizeof(vids)/sizeof(vids[0]); i++) {
m_sts = cdh_StringToVolumeId(volumes[i], &vids[i]);
if (EVEN(m_sts)) {
m_log->log('E', "GetNextVolume, cdh_StringToVolumeId", volumes[i], m_sts);
return;
}
}
for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) { for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) {
m_sts = cdh_StringToVolumeId(d[i].vid, &vid); m_sts = cdh_StringToVolumeId(d[i].vid, &vid);
if (EVEN(m_sts)) { if (EVEN(m_sts)) {
m_log->log('E', "GetNextVolume, cdh_StringToVolumeId", d[i].vid, m_sts); m_log->log('E', "GetNextVolume, cdh_StringToVolumeId", d[i].vid, m_sts);
return; return;
} }
if (strcmp(d[i].nextvid, "") != 0) {
m_sts = cdh_StringToVolumeId(d[i].nextvid, &nextvid);
if (EVEN(m_sts)) {
m_log->log('E', "GetNextVolume, cdh_StringToVolumeId", d[i].nextvid, m_sts);
return;
}
}
m_sts = gdh_GetNextVolume(vid, &nvid); m_sts = gdh_GetNextVolume(vid, &nvid);
if (m_sts != d[i].sts) { if (m_sts == GDH__NOSUCHVOL)
continue;
else if (m_sts != GDH__SUCCESS) {
m_log->log('E', "GetNextVolume", d[i].vid, m_sts); m_log->log('E', "GetNextVolume", d[i].vid, m_sts);
return; return;
} }
if (ODD(m_sts)) { found = 0;
if (nvid != nextvid) { for ( unsigned int j = 0; j < sizeof(vids)/sizeof(vids[0]); j++) {
m_log->log('E', "GetNextVolume, wrong volume", d[i].vid); if (nvid == vids[j]) {
return; found = 1;
break;
} }
} }
if (!found) {
m_log->vlog('E', "GetNextVolume, unknown volume %s",
cdh_VolumeIdToString(0, 0, nvid, 1, 0));
return;
}
} }
m_log->log('S', "GetNextVolume", GDH__SUCCESS); m_log->log('S', "GetNextVolume", GDH__SUCCESS);
...@@ -2741,7 +2765,7 @@ void ra_gdhtest::VolumeIdToName(void) ...@@ -2741,7 +2765,7 @@ void ra_gdhtest::VolumeIdToName(void)
{"BaseComponent", "_V0.0.0.10", GDH__SUCCESS}, {"BaseComponent", "_V0.0.0.10", GDH__SUCCESS},
{"NMps", "_V0.0.1.1", GDH__SUCCESS}, {"NMps", "_V0.0.1.1", GDH__SUCCESS},
{"Profibus", "_V0.0.250.7", GDH__SUCCESS}, {"Profibus", "_V0.0.250.7", GDH__SUCCESS},
{"CVolPwrtest01", "_V0.0.254.254", GDH__SUCCESS}, {"CVolPwrtest01", "_V0.0.240.254", GDH__SUCCESS},
{"1_254_254_203", "_V1.254.254.203", GDH__SUCCESS} {"1_254_254_203", "_V1.254.254.203", GDH__SUCCESS}
}; };
pwr_tVid vid; pwr_tVid vid;
...@@ -2788,7 +2812,7 @@ void ra_gdhtest::GetVolumeInfo(void) ...@@ -2788,7 +2812,7 @@ void ra_gdhtest::GetVolumeInfo(void)
{"BaseComponent", "_V0.0.0.10", pwr_eClass_ClassVolume, GDH__SUCCESS}, {"BaseComponent", "_V0.0.0.10", pwr_eClass_ClassVolume, GDH__SUCCESS},
{"NMps", "_V0.0.1.1", pwr_eClass_ClassVolume, GDH__SUCCESS}, {"NMps", "_V0.0.1.1", pwr_eClass_ClassVolume, GDH__SUCCESS},
{"Profibus", "_V0.0.250.7", pwr_eClass_ClassVolume, GDH__SUCCESS}, {"Profibus", "_V0.0.250.7", pwr_eClass_ClassVolume, GDH__SUCCESS},
{"CVolPwrtest01", "_V0.0.254.254", pwr_eClass_ClassVolume, GDH__SUCCESS}, {"CVolPwrtest01", "_V0.0.240.254", pwr_eClass_ClassVolume, GDH__SUCCESS},
{"1_254_254_203", "_V1.254.254.203", pwr_eClass_SystemVolume, GDH__SUCCESS} {"1_254_254_203", "_V1.254.254.203", pwr_eClass_SystemVolume, GDH__SUCCESS}
}; };
pwr_tVid vid; pwr_tVid vid;
......
...@@ -345,7 +345,10 @@ void ra_qcomtest::Alloc(void) ...@@ -345,7 +345,10 @@ void ra_qcomtest::Alloc(void)
for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) { for (unsigned int i = 0; i < sizeof(d)/sizeof(d[0]); i++) {
p = qcom_Alloc(&m_sts, d[i].size); p = qcom_Alloc(&m_sts, d[i].size);
if (m_sts != d[i].asts) { if (m_sts != d[i].asts) {
m_log->vlog('E', "Alloc", m_sts); if ( d[i].size < 5000000)
m_log->vlog('E', "Alloc size %d, %d", d[i].size, m_sts);
else
m_log->vlog('S', "Alloc: size %d too large", d[i].size);
return; return;
} }
if (ODD(m_sts)) { if (ODD(m_sts)) {
......
...@@ -784,6 +784,7 @@ void ra_timetest::AtoAscii(void) ...@@ -784,6 +784,7 @@ void ra_timetest::AtoAscii(void)
{{1587558870,220000000}, time_eFormat_FileDateAndTime, "20200422_143430", TIME__SUCCESS}, {{1587558870,220000000}, time_eFormat_FileDateAndTime, "20200422_143430", TIME__SUCCESS},
{{1587558870,220000000}, time_eFormat_FileDate, "20200422", TIME__SUCCESS}, {{1587558870,220000000}, time_eFormat_FileDate, "20200422", TIME__SUCCESS},
{{1587558870,220000000}, time_eFormat_TimeAndDate, "14:34:30 22/04/20", TIME__SUCCESS}, {{1587558870,220000000}, time_eFormat_TimeAndDate, "14:34:30 22/04/20", TIME__SUCCESS},
#ifdef __x86_64__
{{2537701200,0}, time_eFormat_DateAndTime, "01-JUN-2050 15:00:00.00", TIME__SUCCESS}, {{2537701200,0}, time_eFormat_DateAndTime, "01-JUN-2050 15:00:00.00", TIME__SUCCESS},
{{2537701200,0}, time_eFormat_Time, "15:00:00.00", TIME__SUCCESS}, {{2537701200,0}, time_eFormat_Time, "15:00:00.00", TIME__SUCCESS},
{{2537701200,0}, time_eFormat_ComprDateAndTime, "50-06-01 15:00:00.00", TIME__SUCCESS}, {{2537701200,0}, time_eFormat_ComprDateAndTime, "50-06-01 15:00:00.00", TIME__SUCCESS},
...@@ -791,6 +792,15 @@ void ra_timetest::AtoAscii(void) ...@@ -791,6 +792,15 @@ void ra_timetest::AtoAscii(void)
{{2537701200,0}, time_eFormat_FileDateAndTime, "20500601_150000", TIME__SUCCESS}, {{2537701200,0}, time_eFormat_FileDateAndTime, "20500601_150000", TIME__SUCCESS},
{{2537701200,0}, time_eFormat_FileDate, "20500601", TIME__SUCCESS}, {{2537701200,0}, time_eFormat_FileDate, "20500601", TIME__SUCCESS},
{{2537701200,0}, time_eFormat_TimeAndDate, "15:00:00 01/06/50", TIME__SUCCESS}, {{2537701200,0}, time_eFormat_TimeAndDate, "15:00:00 01/06/50", TIME__SUCCESS},
#else
{{2537701200,0}, time_eFormat_DateAndTime, "01-JUN-2050 15:00:00.00", TIME__RANGE},
{{2537701200,0}, time_eFormat_Time, "15:00:00.00", TIME__RANGE},
{{2537701200,0}, time_eFormat_ComprDateAndTime, "50-06-01 15:00:00.00", TIME__RANGE},
{{2537701200,0}, time_eFormat_NumDateAndTime, "2050-06-01 15:00:00.00", TIME__RANGE},
{{2537701200,0}, time_eFormat_FileDateAndTime, "20500601_150000", TIME__RANGE},
{{2537701200,0}, time_eFormat_FileDate, "20500601", TIME__RANGE},
{{2537701200,0}, time_eFormat_TimeAndDate, "15:00:00 01/06/50", TIME__RANGE},
#endif
{{1587558870,-220000000}, time_eFormat_DateAndTime, "14:34:30 22/04/20", TIME__NAT}, {{1587558870,-220000000}, time_eFormat_DateAndTime, "14:34:30 22/04/20", TIME__NAT},
{{-1587558870,-220000000}, time_eFormat_DateAndTime, "14:34:30 22/04/20", TIME__NAT} {{-1587558870,-220000000}, time_eFormat_DateAndTime, "14:34:30 22/04/20", TIME__NAT}
}; };
...@@ -826,7 +836,11 @@ void ra_timetest::AsciiToA(void) ...@@ -826,7 +836,11 @@ void ra_timetest::AsciiToA(void)
{"01-JAN-1970 01:00:00.00", pwr_cNTime, TIME__SUCCESS}, {"01-JAN-1970 01:00:00.00", pwr_cNTime, TIME__SUCCESS},
{"22-APR-2020 14:34:30.22", {1587558870,220000000}, TIME__SUCCESS}, {"22-APR-2020 14:34:30.22", {1587558870,220000000}, TIME__SUCCESS},
{"22-apr-2020 14:34:30.22", {1587558870,220000000}, TIME__SUCCESS}, {"22-apr-2020 14:34:30.22", {1587558870,220000000}, TIME__SUCCESS},
#ifdef __x86_64__
{"01-JUN-2050 15:00:00.00", {2537701200,0}, TIME__SUCCESS}, {"01-JUN-2050 15:00:00.00", {2537701200,0}, TIME__SUCCESS},
#else
{"01-JUN-2050 15:00:00.00", {2537701200,0}, TIME__RANGE},
#endif
{"01-JAN-2020 00:00:00.00", {1577833200,0}, TIME__SUCCESS}, {"01-JAN-2020 00:00:00.00", {1577833200,0}, TIME__SUCCESS},
{"01-FEB-2020 00:00:00.00", {1580511600,0}, TIME__SUCCESS}, {"01-FEB-2020 00:00:00.00", {1580511600,0}, TIME__SUCCESS},
{"01-MAR-2020 00:00:00.00", {1583017200,0}, TIME__SUCCESS}, {"01-MAR-2020 00:00:00.00", {1583017200,0}, TIME__SUCCESS},
......
...@@ -1617,6 +1617,8 @@ void wa_ldhtest::GetVolumeInfo(void) ...@@ -1617,6 +1617,8 @@ void wa_ldhtest::GetVolumeInfo(void)
void wa_ldhtest::Close(void) void wa_ldhtest::Close(void)
{ {
ldh_DeleteObjectTree(m_ldhses, m_test, 0);
m_sts = ldh_DetachVolume(m_ldhwb, m_volctx); m_sts = ldh_DetachVolume(m_ldhwb, m_volctx);
if (EVEN(m_sts)) { if (EVEN(m_sts)) {
m_log->log('F', "Close, ldh_DetachVolume", m_sts); m_log->log('F', "Close, ldh_DetachVolume", m_sts);
...@@ -2387,8 +2389,6 @@ wa_ldhtest::wa_ldhtest() ...@@ -2387,8 +2389,6 @@ wa_ldhtest::wa_ldhtest()
// Destructor // Destructor
wa_ldhtest::~wa_ldhtest() wa_ldhtest::~wa_ldhtest()
{ {
ldh_DeleteObjectTree(m_ldhses, m_test, 0);
delete m_log; delete m_log;
} }
...@@ -2399,8 +2399,8 @@ int main(int argc, char *argv[]) ...@@ -2399,8 +2399,8 @@ int main(int argc, char *argv[])
if (argc > 1) if (argc > 1)
ldh.vname(argv[1]); ldh.vname(argv[1]);
setenv("TZ", "Europe/Stockholm", 1); // setenv("TZ", "Europe/Stockholm", 1);
tzset(); // tzset();
ldh.OpenWB(); ldh.OpenWB();
ldh.AttachVolume(); ldh.AttachVolume();
......
...@@ -1617,6 +1617,8 @@ void wa_ldhtest::GetVolumeInfo(void) ...@@ -1617,6 +1617,8 @@ void wa_ldhtest::GetVolumeInfo(void)
void wa_ldhtest::Close(void) void wa_ldhtest::Close(void)
{ {
ldh_DeleteObjectTree(m_ldhses, m_test, 0);
m_sts = ldh_DetachVolume(m_ldhwb, m_volctx); m_sts = ldh_DetachVolume(m_ldhwb, m_volctx);
if (EVEN(m_sts)) { if (EVEN(m_sts)) {
m_log->log('F', "Close, ldh_DetachVolume", m_sts); m_log->log('F', "Close, ldh_DetachVolume", m_sts);
...@@ -2387,8 +2389,6 @@ wa_ldhtest::wa_ldhtest() ...@@ -2387,8 +2389,6 @@ wa_ldhtest::wa_ldhtest()
// Destructor // Destructor
wa_ldhtest::~wa_ldhtest() wa_ldhtest::~wa_ldhtest()
{ {
ldh_DeleteObjectTree(m_ldhses, m_test, 0);
delete m_log; delete m_log;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment