platform/core/test/security-tests.git
9 years agoAdd PolicyRequest class for testing updating policies API 92/34692/15
Michal Eljasiewicz [Fri, 30 Jan 2015 12:45:28 +0000 (13:45 +0100)]
Add PolicyRequest class for testing updating policies API

Change-Id: I7857d01b0fe8091ba0b55e2cd9e5d503eca07221
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
Signed-off-by: Krzysztof Sasiak <k.sasiak@samsung.com>
9 years agoTemporaryTestUser class fix 23/35023/10
Krzysztof Sasiak [Fri, 6 Feb 2015 07:19:14 +0000 (08:19 +0100)]
TemporaryTestUser class fix

Additional method create() has to be called in order for the user
to be created. This prevents a segfault in gumd when adding this class
to a vector.

Change-Id: Ifc20e2c67c9dda205a62f47108a349cf04d09569
Signed-off-by: Krzysztof Sasiak <k.sasiak@samsung.com>
Signed-off-by: Zbigniew Jasinski <z.jasinski@samsung.com>
9 years agoRemove security-tests user and use libgum instead 47/34947/5
Marcin Niesluchowski [Tue, 3 Feb 2015 16:42:56 +0000 (17:42 +0100)]
Remove security-tests user and use libgum instead

Installing security-tests user in spec via gum-utils is not needed as it
can be added via libgum api. Due to that test directories for newly
created users are created in runtime.

Change-Id: I3446d2cb55a100422e9d963849dcc11f4894aa40

9 years agoTidy up TemporaryTestUser class 46/34946/1
Marcin Niesluchowski [Tue, 3 Feb 2015 16:31:38 +0000 (17:31 +0100)]
Tidy up TemporaryTestUser class

Make TemporaryTestUser class more readable and add gid entry.

Change-Id: I7a33aee2efc244a430c1fe98f83340d233480ef6

9 years agosecurity-manager-tests: use real privilege names 60/34860/2
Rafal Krypa [Tue, 3 Feb 2015 16:01:57 +0000 (17:01 +0100)]
security-manager-tests: use real privilege names

Security-manager recently implemented user profiles, allowing only
selected privileges for each user type. For now, all user profiles
can utilize all specified Tizen 3.0 privileges. But security-tests
used to test security-manager with custom privilege names that are
now not permitted. To put tests back to work privilege names must
be valid.

Change-Id: I78d972b67ac192f16d218f666e3614d8da136c74
Signed-off-by: Rafal Krypa <r.krypa@samsung.com>
9 years agoAdapt to changes in gum-utils 1.0.5 31/34831/1
Rafal Krypa [Tue, 3 Feb 2015 09:48:53 +0000 (10:48 +0100)]
Adapt to changes in gum-utils 1.0.5

Gum-utils options for setting user type has changed. It no longer
expects numerical types. Appropriate names are required, like "normal".
Old flags are no longer supported in gum-utils and lead to error.

Change-Id: I89dbe40ca92f22cf33025dae5088fc8d533bc2e0
Signed-off-by: Rafal Krypa <r.krypa@samsung.com>
9 years agoMerge branch 'tizen' into security-manager 66/34766/2
Marcin Niesluchowski [Mon, 2 Feb 2015 14:09:41 +0000 (15:09 +0100)]
Merge branch 'tizen' into security-manager

Change-Id: I9f922b5d7269e5020b78f91b726bef444cb1697a

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 agoSecurity manager: test for offline user adding 57/32357/8
Jan Cybulski [Thu, 8 Jan 2015 12:33:45 +0000 (13:33 +0100)]
Security manager: test for offline user adding

Change-Id: I264f6e03c7e373b89c6067ad9e07768ee27cd88f
Signed-off-by: Jan Cybulski <j.cybulski@samsung.com>
9 years agoAdd test for new security manager API user add 99/31099/21
Michal Eljasiewicz [Wed, 17 Dec 2014 10:20:47 +0000 (11:20 +0100)]
Add test for new security manager API user add

Change-Id: If4886d140696c780dbf39865afe64e80a71d814d
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
9 years agoAdd missing arguments for app instalation 28/34028/2
Michal Eljasiewicz [Tue, 20 Jan 2015 08:45:17 +0000 (09:45 +0100)]
Add missing arguments for app instalation

Change-Id: Ic7f8362d31f12a630c5aa5c5f70eef3c72659ce0
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
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 wrappers for user add and delete API 53/32353/7
Michal Eljasiewicz [Wed, 17 Dec 2014 10:21:14 +0000 (11:21 +0100)]
Add wrappers for user add and delete API

Change-Id: Ia7f087fec2f042492ab08ca08b7bbba20d90795d
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
9 years agoAdd class UserRequest for user API tests 52/32352/5
Michal Eljasiewicz [Wed, 17 Dec 2014 10:19:29 +0000 (11:19 +0100)]
Add class UserRequest for user API tests

Change-Id: Iee5d068c1ba2601fcaf2c4e9bd25b2ad31005c74
Signed-off-by: Michal Eljasiewicz <m.eljasiewic@samsung.com>
9 years agoImplement class for user management with libgum 92/32892/14
Jan Cybulski [Thu, 8 Jan 2015 10:31:54 +0000 (11:31 +0100)]
Implement class for user management with libgum

This will be needed in future tests.

Change-Id: Ic55aa4cb1ab55b726d3032a7b59f02a648685f6b
Signed-off-by: Jan Cybulski <j.cybulski@samsung.com>
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 agoTest of app uninstallation with giving wrong pkg id. 63/31663/8
Jan Cybulski [Tue, 16 Dec 2014 12:49:16 +0000 (13:49 +0100)]
Test of app uninstallation with giving wrong pkg id.

As security-manager ignores pkg id during uninstallation,
this should succeed.

Change-Id: Ia7a9a09cafa7d4ddf649ae8753868dcb3e53800a
Signed-off-by: Jan Cybulski <j.cybulski@samsung.com>
9 years agoTest for installing app to two separate packages 38/31338/10
Jan Cybulski [Tue, 16 Dec 2014 12:49:05 +0000 (13:49 +0100)]
Test for installing app to two separate packages

Security-manager should return error code in such situation

Change-Id: I1fd85b75bc20763c1124543b7a64314db4bb7b44
Signed-off-by: Jan Cybulski <j.cybulski@samsung.com>
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 agoAdded test for offline application installation mode 18/31018/8
Zbigniew Jasinski [Fri, 28 Nov 2014 14:39:41 +0000 (15:39 +0100)]
Added test for offline application installation mode

Test for offline application installation mode in security-manager.
Code: https://review.tizen.org/gerrit/29887

Change-Id: Iddb4cd62c08e472df58621c40b17e9e2eae8cd92

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 agoMerge branch 'tizen' into security-manager 09/32109/1
Marcin Niesluchowski [Mon, 15 Dec 2014 15:38:01 +0000 (16:38 +0100)]
Merge branch 'tizen' into security-manager

Change-Id: I0a590a3616c34fd61024dc353c799f6c83d1846b

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 agoMake security-manager tests use their common wrappers 61/31861/4
Marcin Niesluchowski [Wed, 10 Dec 2014 16:53:03 +0000 (17:53 +0100)]
Make security-manager tests use their common wrappers

Change-Id: I0d2e83cc18d675a14b0cc812493171ae01ec634c

9 years agoAdd api wrappers to security-manager tests 60/31860/4
Marcin Niesluchowski [Wed, 10 Dec 2014 13:35:55 +0000 (14:35 +0100)]
Add api wrappers to security-manager tests

Change-Id: Ic558284e8d029b5450ff4126ef42c8029c38947d

9 years agoAdd install request wrapper class to security-manager tests 59/31859/4
Marcin Niesluchowski [Wed, 10 Dec 2014 13:09:33 +0000 (14:09 +0100)]
Add install request wrapper class to security-manager tests

Change-Id: Iebf1008b4ba24fd02fd371253b7d1063780625a5

9 years agoMake app id and pkg id unique for each security-manager test 74/31774/1
Marcin Niesluchowski [Tue, 9 Dec 2014 15:52:50 +0000 (16:52 +0100)]
Make app id and pkg id unique for each security-manager test

app ids and pkg ids are used in global scope, some of them same for various
tests. They should be unique based on test name.

Change-Id: Idb80cb5adb63d8557fb9327769d42cefde4bdd24

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 security-manager 36/30736/1
Marcin Niesluchowski [Mon, 24 Nov 2014 17:45:55 +0000 (18:45 +0100)]
Merge branch 'tizen' into security-manager

Change-Id: Ia942a66c32828236c55e16871ce82ffa1aed95a5

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 agoAdd tests for installing apps by root for other users 29/30529/2
Jan Cybulski [Wed, 19 Nov 2014 12:15:49 +0000 (13:15 +0100)]
Add tests for installing apps by root for other users

Change-Id: I7f0bf6f693fb57461112cb11124838d769859933
Signed-off-by: Jan Cybulski <j.cybulski@samsung.com>
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

9 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>
9 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>
9 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

9 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

9 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>