diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/data/PAS_data.tar.gz | bin | 6949 -> 7018 bytes | |||
-rw-r--r-- | test/persistence_client_library_dbus_test.c | 8 | ||||
-rw-r--r-- | test/persistence_client_library_test.c | 53 |
3 files changed, 54 insertions, 7 deletions
diff --git a/test/data/PAS_data.tar.gz b/test/data/PAS_data.tar.gz Binary files differindex de372b5..46c5eca 100644 --- a/test/data/PAS_data.tar.gz +++ b/test/data/PAS_data.tar.gz diff --git a/test/persistence_client_library_dbus_test.c b/test/persistence_client_library_dbus_test.c index 2dbd5dc..dae3bc2 100644 --- a/test/persistence_client_library_dbus_test.c +++ b/test/persistence_client_library_dbus_test.c @@ -55,18 +55,18 @@ int main(int argc, char *argv[]) printf("pclInitLibrary: %d\n", ret); printf("Press a key to end application\n"); - ret = pclKeyHandleOpen(0xFF, "posHandle/last_position", 0, 0); + ret = pclKeyHandleOpen(PCL_LDBID_LOCAL, "posHandle/last_position", 0, 0); printf("Register for change notification\n"); ret = pclKeyRegisterNotifyOnChange(0x20, "links/last_link2", 2/*user_no*/, 1/*seat_no*/, &myChangeCallback); ret = pclKeyRegisterNotifyOnChange(0x20, "links/last_link3", 3/*user_no*/, 2/*seat_no*/, &myChangeCallback); ret = pclKeyRegisterNotifyOnChange(0x20, "links/last_link4", 4/*user_no*/, 1/*seat_no*/, &myChangeCallback); - ret = pclKeyRegisterNotifyOnChange(0xFF, "69", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback); + ret = pclKeyRegisterNotifyOnChange(PCL_LDBID_LOCAL, "69", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback); printf("Reg => 69: %d\n", ret); - ret = pclKeyRegisterNotifyOnChange(0xFF, "70", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback); + ret = pclKeyRegisterNotifyOnChange(PCL_LDBID_LOCAL, "70", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback); printf("Reg => 70: %d\n", ret); - ret = pclKeyRegisterNotifyOnChange(0xFF, "key_70", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback); + ret = pclKeyRegisterNotifyOnChange(PCL_LDBID_LOCAL, "key_70", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback); printf("Reg => key_70: %d\n", ret); diff --git a/test/persistence_client_library_test.c b/test/persistence_client_library_test.c index e5e3b99..db3a1e8 100644 --- a/test/persistence_client_library_test.c +++ b/test/persistence_client_library_test.c @@ -210,7 +210,7 @@ START_TEST (test_GetDataHandle) locTime = localtime(&t); - snprintf(sysTimeBuffer, 128, "TimeAndData: \"%s %d.%d.%d - %d:%.2d:%.2d Uhr\"", dayOfWeek[locTime->tm_wday], locTime->tm_mday, locTime->tm_mon, (locTime->tm_year+1900), + snprintf(sysTimeBuffer, 128, "TimeAndData: \"%s %d.%d.%d - %d:%.2d:%.2d Uhr\"", dayOfWeek[locTime->tm_wday], locTime->tm_mday, locTime->tm_mon+1, (locTime->tm_year+1900), locTime->tm_hour, locTime->tm_min, locTime->tm_sec); @@ -336,7 +336,7 @@ START_TEST(test_SetData) locTime = localtime(&t); // write data - snprintf(sysTimeBuffer, 128, "\"%s %d.%d.%d - %d:%.2d:%.2d Uhr\"", dayOfWeek[locTime->tm_wday], locTime->tm_mday, locTime->tm_mon, (locTime->tm_year+1900), + snprintf(sysTimeBuffer, 128, "\"%s %d.%d.%d - %d:%.2d:%.2d Uhr\"", dayOfWeek[locTime->tm_wday], locTime->tm_mday, locTime->tm_mon+1, (locTime->tm_year+1900), locTime->tm_hour, locTime->tm_min, locTime->tm_sec); /** @@ -454,7 +454,7 @@ START_TEST(test_SetDataNoPRCT) locTime = localtime(&t); - snprintf(sysTimeBuffer, 128, "TimeAndData: \"%s %d.%d.%d - %d:%.2d:%.2d Uhr\"", dayOfWeek[locTime->tm_wday], locTime->tm_mday, locTime->tm_mon, (locTime->tm_year+1900), + snprintf(sysTimeBuffer, 128, "TimeAndData: \"%s %d.%d.%d - %d:%.2d:%.2d Uhr\"", dayOfWeek[locTime->tm_wday], locTime->tm_mday, locTime->tm_mon+1, (locTime->tm_year+1900), locTime->tm_hour, locTime->tm_min, locTime->tm_sec); /** @@ -1585,6 +1585,47 @@ START_TEST(test_DbusInterface) END_TEST +START_TEST(test_SharedAccess) +{ + int ret = 0; + unsigned int shutdownReg = PCL_SHUTDOWN_TYPE_FAST | PCL_SHUTDOWN_TYPE_NORMAL; + unsigned char buffer[256] = {0}; + char sysTimeBuffer[256]; + struct tm *locTime; + time_t t = time(0); + + locTime = localtime(&t); + + // write data + snprintf(sysTimeBuffer, 128, "\"%s %d.%d.%d - %d:%.2d:%.2d Uhr\"", dayOfWeek[locTime->tm_wday], locTime->tm_mday, locTime->tm_mon+1, (locTime->tm_year+1900), + locTime->tm_hour, locTime->tm_min, locTime->tm_sec); + + (void)pclInitLibrary(gTheAppId, shutdownReg); // use the app id, the resource is registered for + + ret = pclKeyWriteData(PCL_LDBID_PUBLIC, "aSharedResource", 1, 1, (unsigned char*)sysTimeBuffer, strlen(sysTimeBuffer)); + fail_unless(ret == (int)strlen(sysTimeBuffer), "Failed to write shared data "); + + ret = pclKeyReadData(PCL_LDBID_PUBLIC, "aSharedResource", 1, 1, buffer, 256); + fail_unless(ret == (int)strlen(sysTimeBuffer), "Failed to read shared data "); + + pclDeinitLibrary(); + + // ---------------------------------------------- + + (void)pclInitLibrary("node-health-monitor", shutdownReg); // now use a different app id, which is not able to write this resource + + ret = pclKeyWriteData(PCL_LDBID_PUBLIC, "aSharedResource", 1, 1, (unsigned char*)"This is a test Buffer", strlen("This is a test Buffer")); + fail_unless(ret == EPERS_NOT_RESP_APP, "Able to write shared data, but should not!!"); + + ret = pclKeyReadData(PCL_LDBID_PUBLIC, "aSharedResource", 1, 1, buffer, 256); + fail_unless(ret == (int)strlen(sysTimeBuffer), "Failed to read shared data "); + fail_unless(strncmp((char*)buffer, sysTimeBuffer, strlen((char*)sysTimeBuffer)) == 0, "Buffer not correctly read"); + + pclDeinitLibrary(); +} +END_TEST + + static Suite * persistencyClientLib_suite() { const char* testSuiteName = "Persistency_client_library"; @@ -1689,6 +1730,9 @@ static Suite * persistencyClientLib_suite() TCase * tc_VerifyROnly = tcase_create("VerifyROnly"); tcase_add_test(tc_VerifyROnly, test_VerifyROnly); + TCase * tc_SharedAccess = tcase_create("SharedAccess"); + tcase_add_test(tc_SharedAccess, test_SharedAccess); + tcase_set_timeout(tc_SharedAccess, 2); suite_add_tcase(s, tc_persSetData); @@ -1753,6 +1797,9 @@ static Suite * persistencyClientLib_suite() suite_add_tcase(s, tc_DataFileConfDefault); tcase_add_checked_fixture(tc_DataFileConfDefault, data_setup, data_teardown); + + suite_add_tcase(s, tc_SharedAccess); + #if USE_APPCHECK suite_add_tcase(s, tc_ValidApplication); #endif |