diff options
author | geronimo <geronimo013@gmx.de> | 2012-07-13 04:26:40 +0200 |
---|---|---|
committer | geronimo <geronimo013@gmx.de> | 2012-07-13 04:26:40 +0200 |
commit | 2d48ae784ea6828e8626c32c848f64232d8f35c0 (patch) | |
tree | fab114b03e91125783a778b835dd1913b039cebe /tests/CredentialPersistence | |
download | cmp-2d48ae784ea6828e8626c32c848f64232d8f35c0.tar.gz cmp-2d48ae784ea6828e8626c32c848f64232d8f35c0.tar.bz2 |
initial import
Diffstat (limited to 'tests/CredentialPersistence')
6 files changed, 238 insertions, 0 deletions
diff --git a/tests/CredentialPersistence/CredentialPersistence.cbp b/tests/CredentialPersistence/CredentialPersistence.cbp new file mode 100644 index 0000000..0a5cfce --- /dev/null +++ b/tests/CredentialPersistence/CredentialPersistence.cbp @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> +<CodeBlocks_project_file> + <FileVersion major="1" minor="6" /> + <Project> + <Option title="Tests.CredentialPersistence" /> + <Option pch_mode="2" /> + <Option compiler="gcc" /> + <Build> + <Target title="Debug"> + <Option output="bin/Debug/Tests" prefix_auto="1" extension_auto="1" /> + <Option object_output="obj/Debug/" /> + <Option type="1" /> + <Option compiler="gcc" /> + <Compiler> + <Add option="-g" /> + </Compiler> + </Target> + <Target title="Release"> + <Option output="bin/Release/Tests" prefix_auto="1" extension_auto="1" /> + <Option object_output="obj/Release/" /> + <Option type="1" /> + <Option compiler="gcc" /> + <Compiler> + <Add option="-O2" /> + </Compiler> + <Linker> + <Add option="-s" /> + </Linker> + </Target> + </Build> + <Compiler> + <Add option="-Wall" /> + <Add option="-std=gnu++0x -fomit-frame-pointer -fPIC -pthread -Wall -Wno-parentheses -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=implicit-function-declaration -ansi" /> + <Add option="-D_REENTRANT" /> + <Add option="-D_GNU_SOURCE=1" /> + <Add directory="../../cmps/serverlib/include" /> + <Add directory="../../libs/fsScan/include" /> + <Add directory="../../libs/networking/include" /> + <Add directory="../../libs/util/include" /> + <Add directory="../../libs/vdr/include" /> + </Compiler> + <Linker> + <Add library="../../cmps/serverlib/libserverlib.a" /> + <Add library="../../libs/fsScan/libfsScan.a" /> + <Add library="../../libs/networking/libnetworking.a" /> + <Add library="../../libs/util/libutil.a" /> + <Add library="../../libs/vdr/libvdr.a" /> + <Add library="jpeg" /> + <Add library="pthread" /> + <Add library="dl" /> + <Add library="cap" /> + <Add library="rt" /> + <Add library="fribidi" /> + <Add library="freetype" /> + <Add library="yajl" /> + <Add library="ssl" /> + <Add library="crypt" /> + </Linker> + <Unit filename="CredentialPersistence.cc" /> + <Extensions> + <code_completion /> + <envvars /> + <lib_finder disable_auto="1" /> + <debugger /> + </Extensions> + </Project> +</CodeBlocks_project_file> diff --git a/tests/CredentialPersistence/CredentialPersistence.cbp.save b/tests/CredentialPersistence/CredentialPersistence.cbp.save new file mode 100644 index 0000000..0a5cfce --- /dev/null +++ b/tests/CredentialPersistence/CredentialPersistence.cbp.save @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> +<CodeBlocks_project_file> + <FileVersion major="1" minor="6" /> + <Project> + <Option title="Tests.CredentialPersistence" /> + <Option pch_mode="2" /> + <Option compiler="gcc" /> + <Build> + <Target title="Debug"> + <Option output="bin/Debug/Tests" prefix_auto="1" extension_auto="1" /> + <Option object_output="obj/Debug/" /> + <Option type="1" /> + <Option compiler="gcc" /> + <Compiler> + <Add option="-g" /> + </Compiler> + </Target> + <Target title="Release"> + <Option output="bin/Release/Tests" prefix_auto="1" extension_auto="1" /> + <Option object_output="obj/Release/" /> + <Option type="1" /> + <Option compiler="gcc" /> + <Compiler> + <Add option="-O2" /> + </Compiler> + <Linker> + <Add option="-s" /> + </Linker> + </Target> + </Build> + <Compiler> + <Add option="-Wall" /> + <Add option="-std=gnu++0x -fomit-frame-pointer -fPIC -pthread -Wall -Wno-parentheses -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=implicit-function-declaration -ansi" /> + <Add option="-D_REENTRANT" /> + <Add option="-D_GNU_SOURCE=1" /> + <Add directory="../../cmps/serverlib/include" /> + <Add directory="../../libs/fsScan/include" /> + <Add directory="../../libs/networking/include" /> + <Add directory="../../libs/util/include" /> + <Add directory="../../libs/vdr/include" /> + </Compiler> + <Linker> + <Add library="../../cmps/serverlib/libserverlib.a" /> + <Add library="../../libs/fsScan/libfsScan.a" /> + <Add library="../../libs/networking/libnetworking.a" /> + <Add library="../../libs/util/libutil.a" /> + <Add library="../../libs/vdr/libvdr.a" /> + <Add library="jpeg" /> + <Add library="pthread" /> + <Add library="dl" /> + <Add library="cap" /> + <Add library="rt" /> + <Add library="fribidi" /> + <Add library="freetype" /> + <Add library="yajl" /> + <Add library="ssl" /> + <Add library="crypt" /> + </Linker> + <Unit filename="CredentialPersistence.cc" /> + <Extensions> + <code_completion /> + <envvars /> + <lib_finder disable_auto="1" /> + <debugger /> + </Extensions> + </Project> +</CodeBlocks_project_file> diff --git a/tests/CredentialPersistence/CredentialPersistence.cc b/tests/CredentialPersistence/CredentialPersistence.cc new file mode 100644 index 0000000..8dc2347 --- /dev/null +++ b/tests/CredentialPersistence/CredentialPersistence.cc @@ -0,0 +1,85 @@ +/* + * File: CredentialPersistence.cc + * Author: django + * + * Created on 03.07.2012, 14:16:35 + */ +#include <Principal.h> +#include <Credentials.h> +#include <stdlib.h> +#include <iostream> + +/* + * Simple C++ Test Suite + */ +static void setupTestCredentials() { + Credentials.SetApplicationRealm("supportedUsers@myTestApp"); + cPrincipal *p = new cPrincipal("Nasenbär", Credentials.ApplicationRealm()); + + p->CreateHash("Nasenwasser"); + Credentials.Put(p->Name(), p); + + p = new cPrincipal("Admin", Credentials.ApplicationRealm()); + p->CreateHash("very secret"); + Credentials.Put(p->Name(), p); + + p = new cPrincipal("Sepp", Credentials.ApplicationRealm()); + p->CreateHash("keine Ahnung"); + Credentials.Put(p->Name(), p); +} + +static void dumpCredentials() { + cCredentials::const_iterator principals = Credentials.begin(); + + while (principals != Credentials.end()) { + principals->second->Dump(); + ++principals; + } + +} + +void test1() +{ + setupTestCredentials(); + std::cout << "CredentialPersistence test 1" << std::endl; + + int rv = Credentials.Store("/tmp/testCredentials.x9"); + + if (!rv) std::cout << "%TEST_FAILED% time=0 testname=test1 (CredentialPersistence) message=failed to write credentials" << std::endl; + else std::cout << "saved " << rv << " principals." << std::endl; + + dumpCredentials(); +} + +void test2() +{ + std::cout << "CredentialPersistence test 2" << std::endl; + + Credentials.Clear(); + + int rv = Credentials.Load("/tmp/testCredentials.x9"); + + if (!rv) std::cout << "%TEST_FAILED% time=0 testname=test2 (CredentialPersistence) message=failed to load credentials" << std::endl; + else std::cout << "loaded " << rv << " principals." << std::endl; + + dumpCredentials(); +} + +int main(int argc, char** argv) +{ + std::cout << "%SUITE_STARTING% CredentialPersistence" << std::endl; + std::cout << "%SUITE_STARTED%" << std::endl; + + std::cout << "%TEST_STARTED% test1 (CredentialPersistence)" << std::endl; + test1(); + std::cout << "%TEST_FINISHED% time=0 test1 (CredentialPersistence)" << std::endl; + + std::cout << "%TEST_STARTED% test2 (CredentialPersistence)\n" << std::endl; + test2(); + std::cout << "%TEST_FINISHED% time=0 test2 (CredentialPersistence)" << std::endl; + + std::cout << "%SUITE_FINISHED% time=0" << std::endl; + + return (EXIT_SUCCESS); +} + diff --git a/tests/CredentialPersistence/CredentialPersistence.depend b/tests/CredentialPersistence/CredentialPersistence.depend new file mode 100644 index 0000000..c4ac310 --- /dev/null +++ b/tests/CredentialPersistence/CredentialPersistence.depend @@ -0,0 +1 @@ +# depslib dependency file v1.0 diff --git a/tests/CredentialPersistence/CredentialPersistence.layout b/tests/CredentialPersistence/CredentialPersistence.layout new file mode 100644 index 0000000..abb8444 --- /dev/null +++ b/tests/CredentialPersistence/CredentialPersistence.layout @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> +<CodeBlocks_layout_file> + <ActiveTarget name="Debug" /> + <File name="CredentialPersistence.cc" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0"> + <Cursor> + <Cursor1 position="99" topLine="0" /> + </Cursor> + </File> +</CodeBlocks_layout_file> diff --git a/tests/CredentialPersistence/CredentialPersistence.layout.save b/tests/CredentialPersistence/CredentialPersistence.layout.save new file mode 100644 index 0000000..abb8444 --- /dev/null +++ b/tests/CredentialPersistence/CredentialPersistence.layout.save @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> +<CodeBlocks_layout_file> + <ActiveTarget name="Debug" /> + <File name="CredentialPersistence.cc" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0"> + <Cursor> + <Cursor1 position="99" topLine="0" /> + </Cursor> + </File> +</CodeBlocks_layout_file> |