platform/core/test/security-tests.git
9 years agoAdd checksum files for tests 02/33902/5
Pawel Wieczorek [Mon, 15 Dec 2014 14:18:56 +0000 (15:18 +0100)]
Add checksum files for tests

Cynara will support database contents checksum validation shortly. This
patch adds proper checksum files to database patterns.

Change-Id: Ie1a61689765fe3f3e9fe010e7ba333ccbdae265f

9 years agoAdd SynchronizationPipe 92/32492/5
Aleksander Zdyb [Thu, 18 Dec 2014 10:31:02 +0000 (11:31 +0100)]
Add SynchronizationPipe

A crippled abstraction of widely praised, but often
misused communication mechanism.

Change-Id: I2bd4b63dac76711ce22331c0bc666d4cd6021240

9 years agoAdd UDSHelpers (Helpers for Unix Domain Sockets) 34/30434/7
Aleksander Zdyb [Wed, 3 Sep 2014 06:26:39 +0000 (08:26 +0200)]
Add UDSHelpers (Helpers for Unix Domain Sockets)

Change-Id: Id4c0429c325bc828d7c928e1c12d2ba9ec2b6a9f

9 years agoAdd PasswdAccess 45/32445/5
Aleksander Zdyb [Tue, 18 Nov 2014 10:07:05 +0000 (11:07 +0100)]
Add PasswdAccess

A wrapper on getpwnam() and getgrnam().

Change-Id: Ib833b6c1922ad45de3f713f29a904283d094600f

9 years agoFix usertype in gum-utils invocation 57/36657/1
Aleksander Zdyb [Fri, 6 Mar 2015 12:16:55 +0000 (13:16 +0100)]
Fix usertype in gum-utils invocation

Change-Id: I501a30549b0d7c5b94653250109db4aae9c1b5c7

9 years agoMerge branch 'tizen' into cynara 91/35491/1
Marcin Niesluchowski [Mon, 16 Feb 2015 13:24:04 +0000 (14:24 +0100)]
Merge branch 'tizen' into cynara

Change-Id: I52bb94b85304e141e2462067d8c8dae80fe53081

9 years agoAdd inner security-tests tests 30/35130/5
Lukasz Wojciechowski [Mon, 9 Feb 2015 13:26:04 +0000 (14:26 +0100)]
Add inner security-tests tests

Inner tests might be useful in case of:
 * verification of advanced security-tests mechanisms;
 * testing if platform/image support features used in tests.

Change-Id: Ibd9b5d97af33742434d00fd3d682456c1a8d51ff

9 years agoMove tests source code from "tests" to "src" directory 29/35129/2
Lukasz Wojciechowski [Mon, 9 Feb 2015 10:16:23 +0000 (11:16 +0100)]
Move tests source code from "tests" to "src" directory

Change-Id: Icb325be4a37b9937290d7f3a4d35a1b3625b223a

9 years agoMerge branch 'cynara' into tizen 77/34277/2
Marcin Niesluchowski [Thu, 22 Jan 2015 14:31:17 +0000 (15:31 +0100)]
Merge branch 'cynara' into tizen

Conflicts:
tests/common/dbus_access.cpp
tests/common/dbus_access.h
tests/cynara-tests/common/cynara_test_env.cpp
tests/framework/include/dpl/test/test_runner.h

Change-Id: I91f595f8a92ceafd071c4db0d70f7431447bab48

9 years agoRename file operation functions of cynara-tests 67/34267/2
Adam Malinowski [Thu, 22 Jan 2015 12:43:07 +0000 (13:43 +0100)]
Rename file operation functions of cynara-tests

Change-Id: Ie24d7360dacf9f236ed36eaaaafbba1913d6e8dd

9 years agoRefactor gdbbacktrace() function 51/33851/12
Marcin Niesluchowski [Thu, 15 Jan 2015 12:48:09 +0000 (13:48 +0100)]
Refactor gdbbacktrace() function

Add safer, less redundant code and make it part of DPL namespace

Change-Id: I19e4704f4600d9720e939b0d76aa143c5d82ec2f

9 years agoAdd timeout mechanism for time-limited function calls 01/33501/5
Lukasz Wojciechowski [Mon, 12 Jan 2015 10:16:34 +0000 (11:16 +0100)]
Add timeout mechanism for time-limited function calls

Timeout mechanism:
1) launches given function in new thread;
2) waits given time period;
3) cancels called function using custom user CancelFunction;
4) checks if function has finished in expected way;
5) returns function answer (value or exception).

Change-Id: Ia65d271095712e6afaaac96932f8d14d61b1702a

9 years agoAdd Agent class wrapping usage of libcynara-agent 87/33387/5
Lukasz Wojciechowski [Thu, 8 Jan 2015 10:24:27 +0000 (11:24 +0100)]
Add Agent class wrapping usage of libcynara-agent

With Agent object tests can play role of cynara agent and
communicate with cynara service. That can be useful for:
* testing libcynara-agent library;
* using agent in plugins testing;
* using agent in asynchronous client testing.

Change-Id: Idc783fa963074d5ff6f1dedb6a89b6aae6f65dbe

9 years agoAdd test-agent plugin 86/33386/5
Lukasz Wojciechowski [Fri, 9 Jan 2015 01:44:45 +0000 (02:44 +0100)]
Add test-agent plugin

This is a test plugin, that sends all requests to agent.
Security tests can play role of this agent, so they can decide
about time and value of a response.

Change-Id: I278229810a84cdb4a3ff01ad8ef714019507f0c1

9 years agoAdd agent data wrapping functions 85/33385/5
Lukasz Wojciechowski [Fri, 9 Jan 2015 01:41:17 +0000 (02:41 +0100)]
Add agent data wrapping functions

Add functions for easy joining and spliting data strings
used in communication between agent and plugins:
* wrapAgentData;
* unwrapAgentData.

This functions are defined in new file plugins.cpp - a common file
for both agent and plugins.

Change-Id: I29494928d752832aef7c8e14204a7e4ce63a911e

9 years agoAdd tests for cynara_admin_list_policies_descriptions 85/33085/8
Lukasz Wojciechowski [Mon, 5 Jan 2015 10:26:21 +0000 (11:26 +0100)]
Add tests for cynara_admin_list_policies_descriptions

Each of added tests uses the fact that every cynara test is wrapped in
CynaraTestEnv that saves cynara service plugins.
Every test clears cynara service plugins folder and restarts cynara.
Then proper combination of plugins (sometimes none) are loaded.
There are 4 tests added:
* tc30_admin_list_descriptions_no_plugins - no plugins are loaded,
 there are only default cynara policies;
* tc31_admin_list_descriptions_1_plugin_single_policy;
* tc32_admin_list_descriptions_1_plugin_multiple_policy;
* tc33_admin_list_descriptions_multiple_plugins.

Change-Id: Id778477c35a6d65a7d4f71df03dcccefcbb6e756

9 years agoAdd wrap for cynara_admin_list_policies_description 84/33084/8
Lukasz Wojciechowski [Mon, 5 Jan 2015 10:23:32 +0000 (11:23 +0100)]
Add wrap for cynara_admin_list_policies_description

Add method Admin::listDescriptions executing
cynara_admin_list_policies_description and checking if received result
match expected.

Change-Id: I1d729f83e2719360be5e4cdf405409561377c410

9 years agoAdd loadServicePlugins() for setting plugins env 27/33527/4
Lukasz Wojciechowski [Mon, 12 Jan 2015 16:55:23 +0000 (17:55 +0100)]
Add loadServicePlugins() for setting plugins env

Added function removes all cynara service plugins
and then import and load plugins from given directory.

Change-Id: I1fa559111c70c04e7522089a2bfed4ec9837f590

9 years agoEnhance CynaraTestEnv with operations on service plugins 83/33083/6
Lukasz Wojciechowski [Fri, 2 Jan 2015 19:18:13 +0000 (20:18 +0100)]
Enhance CynaraTestEnv with operations on service plugins

save() and restore() methods were enhanced with saving and restoring
cynara service plugins libraries.

Change-Id: If21707314d4a628db7c9d4034f1d4d7a9e82c55b

9 years agoIntroduce CynaraMask - a scoped cynara.service masker 26/33526/3
Lukasz Wojciechowski [Mon, 12 Jan 2015 16:13:17 +0000 (17:13 +0100)]
Introduce CynaraMask - a scoped cynara.service masker

Creation of CynaraMask object causes cynara.service to be masked and stopped.
Its removal causes cynara to be unmasked and run again.

Change-Id: Id7c20093fbd4ec19cdba783b20225ece04be5dfb

9 years agoSeparate file operations into separate file 25/33525/3
Lukasz Wojciechowski [Mon, 12 Jan 2015 15:34:56 +0000 (16:34 +0100)]
Separate file operations into separate file

All files operations done in cynara_test_env are moved to new namespace FileOperations
and implemented in cynara_test_file_operations.cpp file.
cynaraDbExists() function was generalized to dirExists(string) function.

Change-Id: Ic610078330074a648dbb24ddec7297a337a41de0

9 years agoAdd test cynara service plugins 57/33057/4
Lukasz Wojciechowski [Fri, 2 Jan 2015 17:09:17 +0000 (18:09 +0100)]
Add test cynara service plugins

There are two added plugins:
* single-policy plugin - declaring single policy type handling
* multiple-policy plugin - declaring multiple policy types handling

Plugins always return DENY policy type as result of check or update.
They are just test stubs for testing cynara_admin_list_policies_description.
Implementation of both plugins is embedded in BaseCynaraTestPlugin class.

Supported policies descriptions are put into plugins.h for later use in tests.

Change-Id: I38f4bcfe9624992eea3ef5a015885a397f5a0380

9 years agoRemove description param from test result collecting function 72/28772/8
Marcin Niesluchowski [Wed, 15 Oct 2014 15:44:38 +0000 (17:44 +0200)]
Remove description param from test result collecting function

Change-Id: I75f757abd6350456cbf572833b68a7a4aa8647e5

9 years agoFix uninitialized variable in Admin::listPolicies() 82/33082/1
Lukasz Wojciechowski [Fri, 2 Jan 2015 19:32:12 +0000 (20:32 +0100)]
Fix uninitialized variable in Admin::listPolicies()

struct cynara_admin_policy **policies was uninitialized.
Normally it should be filled with cynara_admin_list_policies() call.
However, when that function failes, it leaves policies unaffected.
If this pointer is not NULL then it is being freed after it is used
to construct vector of policies.

Change-Id: Iff469205035a5240eee64ec87ea724b83577d105

9 years agoAdd tests for cynara_admin_erase 49/33049/2
Lukasz Wojciechowski [Fri, 2 Jan 2015 14:28:42 +0000 (15:28 +0100)]
Add tests for cynara_admin_erase

All tests try erasing policies in different scenarios and then verify
if proper policies were removed from proper buckets, but listing what
is left and comparing to expected result.

There are 7 tests added:
* tc23_admin_erase_empty_bucket - erase policies from empty bucket;
* tc24_admin_erase_no_bucket - try to erase from not existing bucket;
* tc25_admin_erase_single_bucket - check all posibilities of matching
 policies during erase;
* tc26_admin_erase_recursive_not_linked_buckets - erase with recursive
 flag set to TRUE, but in case where no policy lead to subbucket;
* tc27_admin_erase_recursive_linked_buckets - erase with recursive flag
 set to TRUE with existance of policy leading to subbucket;
* tc28_admin_erase_non_recursive_linked_buckets - erase with recursive
 flag set to FALSE with existance of policy leading to subbucket;
* tc29_admin_erase_recursive_from_sub_bucket - start erase test in
 subbucket and check if parent bucket stays unaffected by erase.

Change-Id: Ib712a028d97773e70b98de85c51aff0238bb8586

9 years agoAdd wrap for cynara_admin_list_erase in Admin class 48/33048/2
Lukasz Wojciechowski [Fri, 2 Jan 2015 13:02:16 +0000 (14:02 +0100)]
Add wrap for cynara_admin_list_erase in Admin class

Add method erasePolicies executing cynara_admin_erase
and checking if received result match expected.

Change-Id: I21f9dfa542fe931e56b4e09ec00712ab539d48ef

9 years agoAdd tests for cynara_admin_list_policies 32/33032/3
Lukasz Wojciechowski [Wed, 31 Dec 2014 15:03:57 +0000 (16:03 +0100)]
Add tests for cynara_admin_list_policies

There are 3 tests:
* tc20_admin_list_empty_bucket - test listing policies from empty bucket
* tc21_admin_list_no_bucket - test listing policies from non-existing bucket
* tc22_admin_list_bucket - test listing policies from fully filled bucket

Change-Id: I814ceacf367d63b73b746689ab28e115bf38adfa

9 years agoAdd wrap for cynara_admin_list_policies in Admin class 31/33031/3
Lukasz Wojciechowski [Wed, 31 Dec 2014 13:54:55 +0000 (14:54 +0100)]
Add wrap for cynara_admin_list_policies in Admin class

Add method listPolicies executing cynara_admin_list_policies
and checking if received result match expected.

Enhance CynaraPoliciesContainer class by:
* removing copy and move constructors;
* adding sort method;
* adding operator<<.

Change-Id: Icff4a6aa0e27efa191b7eb9e9c2be79c21066cbf

9 years agoUse connection and message classes in service manager 09/32509/4
Marcin Niesluchowski [Thu, 18 Dec 2014 12:35:17 +0000 (13:35 +0100)]
Use connection and message classes in service manager

Change-Id: I4aef532bd3c447af8cd3164be2e77b08be71b01f

9 years agoChange DBusAccess class name to ServiceManager 08/32508/3
Marcin Niesluchowski [Thu, 18 Dec 2014 12:07:15 +0000 (13:07 +0100)]
Change DBusAccess class name to ServiceManager

Change-Id: I38483087929620e12bcd2b68146b36de7a266d9c

9 years agoRemove Bumjin Im as contact of dbus access class 08/32408/4
Marcin Niesluchowski [Wed, 17 Dec 2014 17:33:35 +0000 (18:33 +0100)]
Remove Bumjin Im as contact of dbus access class

Change-Id: Id894dce5e48b50114bd118d5b21b6099093fc590

9 years agoAdd dbus connection wrapper class 07/32207/5
Marcin Niesluchowski [Tue, 16 Dec 2014 15:40:06 +0000 (16:40 +0100)]
Add dbus connection wrapper class

Change-Id: I494354b5d0c262abd90b3c20d36b3db5f1efef93

9 years agoAdd dbus incoming message wrapper class 07/32407/4
Marcin Niesluchowski [Wed, 17 Dec 2014 10:42:55 +0000 (11:42 +0100)]
Add dbus incoming message wrapper class

Change-Id: I1f476b1c44605458e1168c60bf3c4e6b04462be5

9 years agoAdd dbus outgoing message wrapper class 06/32406/4
Marcin Niesluchowski [Wed, 17 Dec 2014 16:31:47 +0000 (17:31 +0100)]
Add dbus outgoing message wrapper class

Change-Id: I44199708452dd5c95b4e777f51890066199b7b1c

9 years agoAdjust Summary collector to test framework logic 65/28765/11
Marcin Niesluchowski [Wed, 15 Oct 2014 11:14:45 +0000 (13:14 +0200)]
Adjust Summary collector to test framework logic

Change-Id: Ia48421e8036bafe56cc8f2bffad7c7d70f4a3efe

9 years agoMerge branch 'tizen' into cynara 11/32111/1
Marcin Niesluchowski [Mon, 15 Dec 2014 15:46:43 +0000 (16:46 +0100)]
Merge branch 'tizen' into cynara

Change-Id: I7823ffc2dbd0955045402a32827db459c3083c97

9 years agoAdd tests for database cleanup mechanism 16/30716/11
Pawel Wieczorek [Mon, 24 Nov 2014 11:50:49 +0000 (12:50 +0100)]
Add tests for database cleanup mechanism

This patch adds remaining tests for database integrity mechanism, e.g.
removal of non-indexed files, removal of invalid backup files.

Change-Id: Ib6e373dba3ef24c5e69b058df2b8dd9403616eec

9 years agoAdd tests for database integrity mechanism 15/30715/11
Pawel Wieczorek [Mon, 17 Nov 2014 13:45:30 +0000 (14:45 +0100)]
Add tests for database integrity mechanism

Change-Id: I36771d8ef627b121e27df68bd7dbc7f56aa6fd10

9 years agoAdd compareDbs() function with database patterns 14/30714/11
Pawel Wieczorek [Mon, 1 Dec 2014 13:14:41 +0000 (14:14 +0100)]
Add compareDbs() function with database patterns

Added function can be used to compare expected with actual contents of
Cynara's database. Patterns are taken from test patterns directory.
Available patterns:
* minimal contents with default DENY policy
* minimal contents with default ALLOW policy
* database with sample DENY policy

Change-Id: I510ba58e1ce12ecc388fd560e71a0f67929db757

9 years agoDrop unneeded dependency against dbus-glib-1 83/31283/3
Rafal Krypa [Mon, 8 Dec 2014 12:00:11 +0000 (13:00 +0100)]
Drop unneeded dependency against dbus-glib-1

Change-Id: Id27aa959d0456c873ad3b5178b0f8b77a6d22a47

9 years agoCheck if cynara terminates, when no data are sent 40/30740/3
Lukasz Wojciechowski [Mon, 24 Nov 2014 11:37:10 +0000 (12:37 +0100)]
Check if cynara terminates, when no data are sent

Test case tca12 covers bug found in cynara. Cynara terminates,
when connection is closed and no data were sent.

Change-Id: I0859cc9db1b252cb5d8ea786183d80334de8725a

9 years agoEnhance DBusAccess with getServiceStartTimestamp() 70/31570/2
Lukasz Wojciechowski [Sat, 6 Dec 2014 03:55:51 +0000 (04:55 +0100)]
Enhance DBusAccess with getServiceStartTimestamp()

Newly added method returns timestamp of the last service start
measured as number of seconds and microseconds since epoch
and returned in struct timeval.

Change-Id: I4215cc8b727cb78bd03462d25b419a1589b6db0f

9 years agoAdd double request tests 93/29793/11
Lukasz Wojciechowski [Mon, 3 Nov 2014 11:33:06 +0000 (12:33 +0100)]
Add double request tests

These tests send sequentially two requests.
In second test connection with service is broken after
response to first request is received.

Change-Id: Idc319ad58d5755ec8833f899723f1de3800cbfea

9 years agoProvide CynaraTestClient namespace for sync client 04/29504/14
Lukasz Wojciechowski [Tue, 28 Oct 2014 09:47:56 +0000 (10:47 +0100)]
Provide CynaraTestClient namespace for sync client

CynaraTestClient is dedicated to contain all classes related
to synchronous client cynara interface wrap in cynara-tests.
CynaraTestClient class was renamed to simpler name Client.

Change-Id: I99808b0f3c17f9272deb6dfee1ed4ab6449abbb3

9 years agoProvide CynaraTestAdmin namespace for admin classes 03/29503/14
Lukasz Wojciechowski [Tue, 28 Oct 2014 08:05:31 +0000 (09:05 +0100)]
Provide CynaraTestAdmin namespace for admin classes

CynaraTestAdmin contains all classes related to administrative
cynara interface wrap in cynara-tests.
CynaraTestAdmin class was renamed to simpler name Admin.

Change-Id: Ic48a432346deaee5d55ff87640d9fb85a18457d2

9 years agoAdd tests forcing disconnection by reseting cynara 02/29502/14
Lukasz Wojciechowski [Mon, 27 Oct 2014 08:11:45 +0000 (09:11 +0100)]
Add tests forcing disconnection by reseting cynara

Test 08 disconnects cynara during normal request-response scenario.
Three subtestcases of 08 test differ only by resetting cynara
daemon in different moments of sending request scenario.

Test 09 disconnects cynara during request-cancel scenario
Subtestcases differ by different moments of cynara reset.

Change-Id: Ia3e9db87b7e3534c2e4b7e770b4d9a5739553ef4

9 years agoTest async check before and after data insertion 57/29357/15
Lukasz Wojciechowski [Fri, 24 Oct 2014 17:24:34 +0000 (19:24 +0200)]
Test async check before and after data insertion

This test:
* checks access in cynara with empty database;
* verifies that after response is received cache holds result;
* sets new policy (that should cause client disconnection);
* verifies that cache was cleared after disconnection;
* runs async checks on filled database.

Change-Id: If5ab19d51f83faaa802e02dae1e7526e6a9d5c61

9 years agoExpand CheckData and PoliciesContainer for easier use 56/29356/15
Lukasz Wojciechowski [Fri, 24 Oct 2014 17:17:24 +0000 (19:17 +0200)]
Expand CheckData and PoliciesContainer for easier use

New CynaraPoliciesContainer::add allows adding policies with {client,
user, privilege} tripple passed as single vector parameter.
CheckData class is expanded with toAdminPolicy() method for converting
ChackData object into such vector.

Change-Id: I3cc34fc7801a81e6a9f4a456013653b1ef0d3323

9 years agoAdd simple request cancellation tests 52/29352/15
Lukasz Wojciechowski [Fri, 24 Oct 2014 16:08:42 +0000 (18:08 +0200)]
Add simple request cancellation tests

tca05_request_and_cancel* - check cancellation of sent requests
tca06_cancel_fail - checks cancellation of not existing request

Change-Id: I495846f8494dc4ef6e329774039869e10b1b9731

9 years agoAdd user defined callback to StatusMonitor 39/30739/2
Lukasz Wojciechowski [Mon, 24 Nov 2014 16:58:29 +0000 (17:58 +0100)]
Add user defined callback to StatusMonitor

User can pass now own function, that will be executed when status changes.

Change-Id: Ic3f514f18c780aff51cf62114fc3cf98dac70067

9 years agoWrap cynara_async_cancel_request() for test purposes 51/29351/14
Lukasz Wojciechowski [Fri, 24 Oct 2014 16:07:08 +0000 (18:07 +0200)]
Wrap cynara_async_cancel_request() for test purposes

Change-Id: Iaf049aa35dac3bb7acd2874d675b49ad6676f5ea

9 years agoAdd test for sending and processing single request 18/29018/16
Lukasz Wojciechowski [Mon, 20 Oct 2014 09:19:45 +0000 (11:19 +0200)]
Add test for sending and processing single request

Change-Id: I90140763f8a18a03faa1fb4d5661a369f3cc15d4

9 years agoWrap cynara_async_process() for test purposes 17/29017/16
Lukasz Wojciechowski [Mon, 20 Oct 2014 09:14:18 +0000 (11:14 +0200)]
Wrap cynara_async_process() for test purposes

Wrap checks connections status, then waits on proper select statement.
After select returns, cynara_async_process() is called and expected
result is checked.

Change-Id: Icc286662b5ba7e0f4f9b51d0dd58e7ab1d17336a

9 years agoCollect test fail reasons in case of nested assertions 92/29792/9
Lukasz Wojciechowski [Tue, 4 Nov 2014 10:36:07 +0000 (11:36 +0100)]
Collect test fail reasons in case of nested assertions

RUNNER_ASSERT_MSG macro (and related) throw DPL::Test::TestRunner::TestFailed
exception. If such an exception is thrown during clean-up caused by another
exception and test interruption, termination of tests program happen leaving
no clues about termination cause.

This patch checks if an exception has been thrown earlier and if so,
it doesn't throw next exception but passes exception message to TestRunner.
All such messages passed with addFailReason() method are gathered inside
TestRunner and used during ResultCollection after finishing test and passing
results to collectors.

This patch introduces simple concatrenation method of joining all fail
reasons into single string, that is passed to Collectors.
When collectors API will be ready to receive multiple reasons of single test
failure, another patch can simply pass whole fail results queue.

Change-Id: I1bf582da6526a4187e7c4a53afaeea976cf4bda1

9 years agoFix potential segfaults if assert won't throw 79/30279/5
Lukasz Wojciechowski [Thu, 13 Nov 2014 14:02:23 +0000 (15:02 +0100)]
Fix potential segfaults if assert won't throw

Prepare code for assertions that won't throw an exception even if
condition check fails. Such situation can happen, when when exception
would have been thrown during stack unwinding after another exception.

Change-Id: Icb44b0e5e51bcb9b7f23fcc270d2e60eab4ecc1e

9 years agoMake StatusMonitor::getStatus() always return value 91/29791/4
Lukasz Wojciechowski [Tue, 4 Nov 2014 10:31:33 +0000 (11:31 +0100)]
Make StatusMonitor::getStatus() always return value

Bug fix. Not all paths returned a value. RUNNER_FAIL_MSG may avoid
throwing e.g. when not in test.

Change-Id: Ief39fcc83ab3828f2e7d71682927e30140c1e191

9 years agoMove string consts to corresponding test commons 10/31110/3
Pawel Wieczorek [Mon, 17 Nov 2014 13:07:20 +0000 (14:07 +0100)]
Move string consts to corresponding test commons

New member has been added:
* SERVICE (in CynaraTestConsts, for D-Bus)

Change-Id: I6963cbbf9b57380447b764ae0f3b09ec2795ff9f

9 years agoMove Summary collector to test framework 96/28696/12
Marcin Niesluchowski [Mon, 13 Oct 2014 16:39:53 +0000 (18:39 +0200)]
Move Summary collector to test framework

Change-Id: Ief5a3b837382651bd030642c262d3c69c408a4bb

9 years agoChange FailStatus from struct to enum class 95/28695/9
Marcin Niesluchowski [Mon, 13 Oct 2014 15:02:17 +0000 (17:02 +0200)]
Change FailStatus from struct to enum class

Change-Id: I9df26486b0b009e5f97b99358d0112556d87a700

9 years agoRemove INTERNAL type from FailStatus enum 94/28694/8
Marcin Niesluchowski [Mon, 13 Oct 2014 14:21:47 +0000 (16:21 +0200)]
Remove INTERNAL type from FailStatus enum

INTERNAL fail status is treated as FAILED fail status. It is collected
in case of:
* DPL::Exception - should not be thrown by test cased body, as it is used
  in test framework only
* std::exception - which implies that test case is not constructed well
  or there is not enough resources, which may be also passed as Failed
  state in RUNNER_* macros.
* other exceptions - same as std::exception

Change-Id: I8776622afcb9d01739f8780183ad4c5f364deb25

9 years agoCreate cynara_db_tests group 09/31109/2
Pawel Wieczorek [Mon, 1 Dec 2014 12:19:55 +0000 (13:19 +0100)]
Create cynara_db_tests group

Create an empty test group for database integrity tests.

Change-Id: I065ea1c0d6ee7318f8e3a2be878867695a5ebfc7

9 years agoMove files_compare() function to test commons 13/30713/3
Pawel Wieczorek [Mon, 8 Sep 2014 14:23:58 +0000 (16:23 +0200)]
Move files_compare() function to test commons

Function files_compare() from tests for libsmack can be used in other
tests as well. It is now accessible outside libsmack tests.

Change-Id: Ic56b4aff4c4170e24b5cfb2754e2ef4aed4cf541

9 years agoAdd support for empty files to files_compare() 07/31107/1
Pawel Wieczorek [Mon, 1 Dec 2014 11:02:13 +0000 (12:02 +0100)]
Add support for empty files to files_compare()

This patch modifies approach to return values. It returns an integer
less than, equal to, or greater than zero if fd1 is found, respectively,
to be less than, to match, or be greater than fd2.

Change-Id: I9402a19a3280023ee87524cccdec36fafe52b75b

9 years agoDon't provide perf binary, depend on it 31/30431/3
Rafal Krypa [Tue, 18 Nov 2014 10:37:34 +0000 (11:37 +0100)]
Don't provide perf binary, depend on it

Perf binary was provided in SLP as a work around for not having it
on the platform. This is no longer needed and harmful, because we
provided only the ARM binary, even for i686 and x86_64 builds.

Change-Id: I2157b7fd75a6ff3f713bf199d996c831a2f20673

9 years agoRemove unneeded manual dependencies 30/30430/2
Rafal Krypa [Tue, 18 Nov 2014 10:35:34 +0000 (11:35 +0100)]
Remove unneeded manual dependencies

Dependencies against shared libraries should be auto-generated.

Change-Id: I24c422b4f3488c0dacc63dbe2ac11d9ae026dfa4

9 years agoMerge branch 'tizen' into cynara 35/30735/1
Marcin Niesluchowski [Mon, 24 Nov 2014 17:44:39 +0000 (18:44 +0100)]
Merge branch 'tizen' into cynara

Change-Id: I4914064a6a5e309decea74043195e91424cb9141

9 years agoPrevent running cynara service by masking 26/30726/2
Lukasz Wojciechowski [Mon, 24 Nov 2014 11:33:25 +0000 (12:33 +0100)]
Prevent running cynara service by masking

Before and after each testcase CynaraTestEnv runs code, that
saves and restores cynara's database. Cynara service is stopped
for that time, however it can be socket-activated and start during
critical moment of database modification.
To prevent such situation cynara is masked for critical sections.

Change-Id: I2dba7f9985121d92a2bb2ffd6318ec922022979c

9 years agoAdd methods for masking and unmasking service 25/30725/2
Lukasz Wojciechowski [Mon, 24 Nov 2014 05:30:20 +0000 (06:30 +0100)]
Add methods for masking and unmasking service

Masking a service prevents the service from being started.
Unmasking allows to start service again. Both of these operations
are implemented to affect service only till device reboot.
Masking and unmasking service needs reloading configuration
of dbus manager. That is also done in implementation.

Change-Id: Ibbb64dbae6ed6aaa68b085f8a66d4810cecd22c1

9 years agoAdd method for getting service's pid 24/30724/2
Lukasz Wojciechowski [Mon, 24 Nov 2014 05:18:35 +0000 (06:18 +0100)]
Add method for getting service's pid

Systemd that is responsible for launching service provide information
about it's pid with dbus properties mechanism.

Change-Id: Ia56094ad776a758596b4344172a6109b3648365e

9 years agoHandle job signals from systemd 23/30723/2
Lukasz Wojciechowski [Mon, 24 Nov 2014 04:31:40 +0000 (05:31 +0100)]
Handle job signals from systemd

A set of currently running jobs was added. Jobs are identified
with unique job path created by systemd.
Every time a start/stop/restart command is sent to systemd,
related job is added to set.
When JobNew signal is received its handler puts it also in the set.
Job is removed from the set, when JobRemoved signal is delivered from
systemd.
After each action generating a job in systemd unit (start/stop/restart)
program waits until all jobs from the set are removed.

Timeouts used earlier to "synchronize" action calls are removed.

Change-Id: Id944c9f52ecfeb06efabdb9424c835d09af7bb4f

9 years agoSubscribe to dbus signals from systemd 22/30722/2
Lukasz Wojciechowski [Mon, 24 Nov 2014 03:08:32 +0000 (04:08 +0100)]
Subscribe to dbus signals from systemd

Set bus matching filters for JobNew and JobRemove signals from systemd.
Subscribe to signals from systemd over dbus
Add dbus filter for all incoming messages (stub - empty body).

Change-Id: I516bf562d50a4e7a3933e0a1d5905bffb73dbc68

9 years agoCleanup DBusAccess 21/30721/2
Lukasz Wojciechowski [Mon, 24 Nov 2014 02:42:53 +0000 (03:42 +0100)]
Cleanup DBusAccess

Remove not used variables and function.
Fix memory leak of not released objects in sendResetFailedToService().
Read object path data from dbus response.

Change-Id: I94e531fe6aef64de9eb8a1fc3e7fc8623727e697

9 years agoIgnore smack-dbus tests 10/30710/3
Marcin Niesluchowski [Mon, 24 Nov 2014 13:18:23 +0000 (14:18 +0100)]
Ignore smack-dbus tests

Current dbus release does not support smack context in GetConnectionCredentials
method yet.

Change-Id: I58112e9702c04a634c149c5c2c3753404970cc87

9 years agoMerge branch 'security-manager' into tizen 93/30693/3
Rafal Krypa [Mon, 24 Nov 2014 11:27:24 +0000 (12:27 +0100)]
Merge branch 'security-manager' into tizen

Conflicts:
tests/security-manager-tests/common/sm_db.cpp
tests/security-manager-tests/common/sm_db.h
tests/security-manager-tests/security_manager_tests.cpp

Change-Id: I69e6e9321ab58702086ba402e23a6d9b06e7fdb9

9 years agoMerge branch 'cynara' into tizen 92/30692/1
Rafal Krypa [Mon, 24 Nov 2014 10:19:41 +0000 (11:19 +0100)]
Merge branch 'cynara' into tizen

Conflicts:
tests/cynara-tests/common/cynara_test_admin.h
tests/cynara-tests/test_cases.cpp

Change-Id: I49296db7a8983f3aee1f4750852ea516e9d7f3a2

9 years agosecurity-manager tests: reorganize directories used and registered by apps 57/30457/2
Marcin Lis [Tue, 18 Nov 2014 15:04:56 +0000 (16:04 +0100)]
security-manager tests: reorganize directories used and registered by apps

1. Move global user directories from /etc/smack/ to its home dir: /usr/apps/
2. Remove directories, functions and checks associated with
   SECURITY_MANAGER_PATH_PUBLIC - it should not be used anymore and will be
   removed.

[Verification] run security-manager-tests and ensure that all succeed.

Change-Id: Ifb04fd19b35cc226473159728d172525fbc44bdc
Signed-off-by: Marcin Lis <m.lis@samsung.com>
9 years agoRequire gum-utils, not libgum 52/30452/1
Rafal Krypa [Tue, 18 Nov 2014 14:37:33 +0000 (15:37 +0100)]
Require gum-utils, not libgum

In gumd 1.0.2 gum-utils tool has been split from package libgum into
separate package gum-utils.

Change-Id: Ia5903f1b5725e681545b56a1e581312a22443017

9 years agoIgnore tests failing on file label removal 04/30404/2
Marcin Niesluchowski [Mon, 17 Nov 2014 16:36:16 +0000 (17:36 +0100)]
Ignore tests failing on file label removal

Change-Id: Ib4f97f1bfdda0cf2229852096bf47582dc68aa3b

9 years agoFix build dependencies on Cynara 76/30376/1
Aleksander Zdyb [Mon, 17 Nov 2014 12:16:32 +0000 (13:16 +0100)]
Fix build dependencies on Cynara

Change-Id: I3bb0ec78446999e2dfb7fe6e670fc586c113b5bf

9 years agoUpdate tests to work with group names instead of gids 55/29255/10
Krzysztof Sasiak [Thu, 23 Oct 2014 11:53:58 +0000 (13:53 +0200)]
Update tests to work with group names instead of gids

Change-Id: Ia6ac604ca4d5369a486772d1f9f39fd57e1c3ecd

10 years agosecurity-server tests commented out from all tests 89/29789/5
Michal Eljasiewicz [Tue, 4 Nov 2014 11:15:00 +0000 (12:15 +0100)]
security-server tests commented out from all tests

Change-Id: I549718922f98f08c242b9bde313ecad839392b8e
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
10 years agosecurity_server_tests_dbus moved to separate directory 89/29889/4
Michal Eljasiewicz [Wed, 5 Nov 2014 13:04:51 +0000 (14:04 +0100)]
security_server_tests_dbus moved to separate directory

tests moved out of security_server directory and renamed

Change-Id: If3a3aedecc91f43803dfb349ac6a06a79ed4eccd
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
10 years agoExtending security_manager_set_process_label_from_binary and 70/29670/7
Zbigniew Jasinski [Fri, 31 Oct 2014 11:11:20 +0000 (12:11 +0100)]
Extending security_manager_set_process_label_from_binary and
security_manager_set_process_label_from_appid for proper socket
labeling.

Added checking for proper socket Smack labeling. Implementation:
https://review.tizen.org/gerrit/27849

Change-Id: I3cf1f7a06615f7652fcefe6d89b2fe370d5f2ba5

10 years agoTest case for security_manager_drop_process_privileges function. 34/29534/9
Zbigniew Jasinski [Wed, 29 Oct 2014 09:10:26 +0000 (10:10 +0100)]
Test case for security_manager_drop_process_privileges function.

security_manager_drop_process_privileges implementation:
https://review.tizen.org/gerrit/27848

Change-Id: I17732780dad25f8c3ecdde3e9ad30781a87a6b69

10 years agoRemove test for security_manager_set_process_label_from_binary() 99/29699/2
Rafal Krypa [Tue, 4 Nov 2014 18:21:08 +0000 (19:21 +0100)]
Remove test for security_manager_set_process_label_from_binary()

Removing test for security-manager function that is now being removed
from security-manager (https://review.tizen.org/gerrit/27041).

Change-Id: I879016d2d0e87b7d0e1eafe982d4e25e61b2f71e
Signed-off-by: Rafal Krypa <r.krypa@samsung.com>
10 years agolibprivilege-control tests commented out from all tests 87/29787/1
Michal Eljasiewicz [Tue, 4 Nov 2014 10:51:04 +0000 (11:51 +0100)]
libprivilege-control tests commented out from all tests

Change-Id: Id76b6b0ba3b9b5c2ee8948fb2078c44e5a444fdc
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
10 years agoCheck creation of maximal count of cynara requests 85/28985/7
Lukasz Wojciechowski [Fri, 17 Oct 2014 18:27:59 +0000 (20:27 +0200)]
Check creation of maximal count of cynara requests

Request creating function should return CYNARA_API_MAX_PENDING_REQUESTS,
when maximal number of possible requests (2^16) is created.

Change-Id: Icdbbf6e6377a73892ccd8f4affa31756f6161414

10 years agoAdd CynaraTestAsync::Client::createRequest() method 84/28984/6
Lukasz Wojciechowski [Fri, 17 Oct 2014 18:22:57 +0000 (20:22 +0200)]
Add CynaraTestAsync::Client::createRequest() method

Method can be used for testing cynara_async_create_request() API function.

Change-Id: Ib26d97a1a45451c014f3a495408f555c203bf834

10 years agoAdd test for checking CACHE_MISS when cache is empty 83/28983/6
Lukasz Wojciechowski [Fri, 17 Oct 2014 16:45:33 +0000 (18:45 +0200)]
Add test for checking CACHE_MISS when cache is empty

Change-Id: I5857cec7b8d8da2b281a60029648d70516a3c00f

10 years agoAdd CynaraTestAsync::Client::checkCache() method 82/28982/6
Lukasz Wojciechowski [Fri, 17 Oct 2014 16:44:02 +0000 (18:44 +0200)]
Add CynaraTestAsync::Client::checkCache() method

Method can be used to test cynara_async_check_cache() API function.

Change-Id: Ibc7009362bec2cfdc90472299d3bfdf155f186c3

10 years agoAdd CynaraTestAsync::RequestMonitor class 65/28965/7
Lukasz Wojciechowski [Fri, 17 Oct 2014 14:15:43 +0000 (16:15 +0200)]
Add CynaraTestAsync::RequestMonitor class

Added class shall be used for monitoring all requests, matching
callbacks and checking expected causes and responses in callbacks.

Change-Id: I0ddb2d8848d80950d430f768510c6466144b399d

10 years agoCreate cynara_async_tests group 98/28898/7
Lukasz Wojciechowski [Thu, 16 Oct 2014 17:23:13 +0000 (19:23 +0200)]
Create cynara_async_tests group

Create a test group for asynchronous API tests
and add CynaraTestAsync::Client initialization test.

Change-Id: I0e8cc37cd16282a7834cc61dd72e1aa90fb9129e

10 years agoAdd CynaraTestAsync::Client 97/28897/7
Lukasz Wojciechowski [Thu, 16 Oct 2014 17:21:58 +0000 (19:21 +0200)]
Add CynaraTestAsync::Client

This is a class that will wrap usage of libcynara-client-async API.

Change-Id: I89124b57c811e016854122fec6b2cf0ddbaa0525

10 years agoAdd RUNNER_ERROR_MSG(message) macro 96/28896/7
Lukasz Wojciechowski [Thu, 16 Oct 2014 17:10:49 +0000 (19:10 +0200)]
Add RUNNER_ERROR_MSG(message) macro

Macro can be used to print error messages during test runtime.
Sometimes there is a need to print out important information
that are related to error that happen during test run, but it is
impossible to do that with RUNNER_ASSERT... macros because
an exception is alredy thrown.

Change-Id: I574af27bba7c20f21e2c6f9fc0b808f7ed9675ed

10 years agoAdd CynaraTestAsync::StatusMonitor 95/28895/6
Lukasz Wojciechowski [Thu, 16 Oct 2014 15:25:13 +0000 (17:25 +0200)]
Add CynaraTestAsync::StatusMonitor

Added class wraps functionality of status callbacks.

Change-Id: I8c42a80d02b9092e89d930367632110ca33e3fa9

10 years agoFix security_manager_05_app_install_uninstall_by_uid_5000 05/29405/2
Marcin Niesluchowski [Thu, 23 Oct 2014 11:32:38 +0000 (13:32 +0200)]
Fix security_manager_05_app_install_uninstall_by_uid_5000

User app (uid 5000) used for tests has been removed from system.
Due to this chage security-manager can not find it in /etc/passwd.
Special user is created in %post section and is removed in %postun
section. Current test name:
security_manager_05_app_install_uninstall_by_app_user

Change-Id: Ia2eec416b44fe216b08f1fc29ec46826621ad796

10 years agoAdd licence and copyright header to cynara test files 94/28894/2
Lukasz Wojciechowski [Thu, 16 Oct 2014 14:01:55 +0000 (16:01 +0200)]
Add licence and copyright header to cynara test files

Change-Id: I4cb894b91b076c6475f8c285966dd2bacc0ff64d

10 years agoOne missing fix for cynara_check return code 09/29209/2
Rafal Krypa [Tue, 21 Oct 2014 11:35:55 +0000 (13:35 +0200)]
One missing fix for cynara_check return code

Commit 1c357c269b should also adjust tests for security-manager.
Changing expected return code of cynara_check from CYNARA_API_SUCCESS
to CYNARA_API_ACCESS_ALLOWED.

Change-Id: I4f1ad908f0d91f91af9dec9a701f8f41504730dc

10 years agoMerge remote-tracking branch 'tizen-gerrit/cynara' into HEAD 07/29207/1
Marcin Niesluchowski [Wed, 22 Oct 2014 11:34:10 +0000 (13:34 +0200)]
Merge remote-tracking branch 'tizen-gerrit/cynara' into HEAD

Change-Id: Id5089ff0e604c1608038d68ffc5d5e041a2d29d7

10 years agoMerge commit 'af35045308e6b0221690b420f530e53ce6c2fbad' into HEAD 05/29205/1
Marcin Niesluchowski [Wed, 22 Oct 2014 11:10:37 +0000 (13:10 +0200)]
Merge commit 'af35045308e6b0221690b420f530e53ce6c2fbad' into HEAD

Change-Id: Ib16081848a41ef480360b31a14bb9a9bc4786c3f