summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIngo Huerner <ingo.huerner@xse.de>2014-12-19 19:15:08 +0100
committerIngo Huerner <ingo.huerner@xse.de>2014-12-19 19:15:08 +0100
commit23bc755164fb299d40c7910efa4642f3cd35b87a (patch)
tree8f78bf2af126600def6dd94448177f965fa9a615
parent18386ed7fc9bb1a6a5dd950a324d29e244f43309 (diff)
downloadpersistence-client-library-23bc755164fb299d40c7910efa4642f3cd35b87a.tar.gz
Updated README file
-rw-r--r--README151
1 files changed, 148 insertions, 3 deletions
diff --git a/README b/README
index 3dbac83..15f252a 100644
--- a/README
+++ b/README
@@ -1,3 +1,151 @@
+*****************************
+Persistence Client Library
+*****************************
+
+Copyright (C) 2015 XS Embedded GmbH. All rights reserved.
+
+
+----------------------------
+Project Scope
+----------------------------
+The persistence client library has been developed as a proof of concept (PoC) for GENIVI.
+It now serves as a reference implementation.
+
+
+----------------------------
+License
+----------------------------
+The Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy
+of the MPL was not distributed with this file. Youcan obtain one at
+http://mozilla.org/MPL/2.0/
+
+
+----------------------------
+Dependencies
+----------------------------
+The client library has the following dependencies
+* Libraries
+** automotive-dlt (http://projects.genivi.org/diagnostic-log-trace/)
+** Persistence Common Object (http://git.projects.genivi.org/?p=persistence/persistence-common-object.git;a=summary)
+ Add "-- with_database=key-value-store" to the configure step
+** dbus-1
+** check unit test framework for C used when configured with "--enable-tests"
+ Ubuntu: use Synaptic package manager
+ Or download http://check.sourceforge.net/
+* autotools
+* libtool
+
+
+----------------------------
+Dependencies
+----------------------------
+The Persistence Client Lib component uses automake
+to build the library.
+Execute the following steps in order to build the component
+* autoreconf –vi
+* configure, with the following options
+** --enable-tests to enable the build of the tests
+** --enable-pasinterface enable the PAS interface (disabled by default)
+** -- with_database decide which storage backend to use
+*** Itzam/C is currently default backend
+*** It is recommended to use the key-value-store backend ("-- with_database=key-value-store")
+* make
+
+
+----------------------------
+Testing and Debugging
+----------------------------
+
+Introduction:
+--------------
+The test framework “check” has been used to write unit tests which will be run automatically
+when the test binary will be started. At the end a test report will be printed to the console
+showing first a summary about number of tests that have been executed and how many
+tests have been passed or failed. After the summary a test report will be generated showing
+the status of each test. When a bug will be fixed a test will be written to verify the problem
+has been solved.
+DTL (Diagnostic, Log and Trace) will be used by the PCL to send status and error. For
+details about DLT, please refer to the GENIVI DLT p roject page
+(http://projects.genivi.org/diagnostic-log-trace/).
+
+
+Running tests:
+--------------
+There are unit tests available for the persistency client library component available.
+The unit tests are used to verify that the component is working correctly and exclude any
+regressions. Please refer always to the source codeto see the available tests
+
+
+Precondition:
+--------------
+* GENIVI Lifecycle components are available on thesystem
+** The GENIVI lifecycle components are available here:
+ http://projects.genivi.org/node-state-manager/
+ http://projects.genivi.org/node-startup-controller/
+** Make sure Node State Manager is running (Start "node-state-manager")
+* Persistence Administration Service is available in the system and running
+** The GENIVI Persistence Administration Service is available here:
+ http://git.projects.genivi.org/?p=persistence/persistence-administrator.git
+* Persistence Common Object is available in the system
+** The GENIVI Persistence Common Object is available here:
+ http://git.projects.genivi.org/?p=persistence/persistence-common-object.git
+ use the key-value-store backend (run configure step with "-- with_database=key-value-store")
+* Persistence partitions has been created and mounted and test data is
+* If partition and data is not available, use the PAS to setup the test data.
+** make sure node-state-manager and pers_admin_svc are running
+** Now install the test data:
+ "persadmin_tool install /path_to_test_data/PAS_data.tar.gz"
+ The test data is provided by the PCL (../test/data/PAS_data.tar.gz)
+* Make sure dlt-daemon is running
+* Make sure D-Bus system bus is available
+
+
+Run tests:
+--------------
+run persistency unit test "./persistence_client_library_test"
+
+
+Expected test result:
+--------------
+The expected result is to have 0 failures and 0 errors, see example output below:
+
+./persistence_client_library_test
+Running suite(s): Persistency client library
+100%: Checks: 13, Failures: 0, Errors: 0
+persistence_client_library_test.c:141:P:GetData:test_GetData:0: Passed
+persistence_client_library_test.c:357:P:SetData:test_SetData:0: Passed
+persistence_client_library_test.c:400:P:SetDataNoPRCT:test_SetDataNoPRCT:0: Passed
+persistence_client_library_test.c:434:P:GetDataSize:test_GetDataSize:0: Passed
+persistence_client_library_test.c:478:P:DeleteData:test_DeleteData:0: Passed
+persistence_client_library_test.c:236:P:GetDataHandle:test_GetDataHandle:0: Passed
+persistence_client_library_test.c:652:P:DataHandle:test_DataHandle:0: Passed
+persistence_client_library_test.c:727:P:DataHandleOpen:test_DataHandleOpen:0: Passed
+persistence_client_library_test.c:578:P:DataFile:test_DataFile:0: Passed
+persistence_client_library_test.c:604:P:DataFileRecovery:test_DataFileRecovery:0: Passed
+persistence_client_library_test.c:794:P:Cursor:test_Cursor:0: Passed
+persistence_client_library_test.c:864:P:ReadDefault:test_ReadDefault:0: Passed
+persistence_client_library_test.c:886:P:ReadConfDefault:test_ReadConfDefault:0: Passed
+
+The output above may vary as the test cases will beadopted or extended.
+
+
+----------------------------
+Project page
+----------------------------
+- http://projects.genivi.org/persistence-client-library/
+
+
+----------------------------
+Mailing List
+----------------------------
+Subscribe to the mailing list here: http://lists.genivi.org/mailman/listinfo/genivi-persistence
+
+----------------------------
+Bug reporting
+----------------------------
+View or Report bugs here: http://bugs.genivi.org/buglist.cgi?product=persistence-client-library
+
+
----------------------------
Documentation
----------------------------
@@ -17,6 +165,3 @@ How to create doxygen documentation
The doxygen package must be installed.
run "doxygen doc/pcl_doxyfile" and the html documentation will be generated in the doc folder.
-
-
-