merge with master
[platform/framework/web/wrt-commons.git] / tests / core / test_static_block.cpp
1 /*
2  * Copyright (c) 2013 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  *    Licensed under the Apache License, Version 2.0 (the "License");
5  *    you may not use this file except in compliance with the License.
6  *    You may obtain a copy of the License at
7  *
8  *        http://www.apache.org/licenses/LICENSE-2.0
9  *
10  *    Unless required by applicable law or agreed to in writing, software
11  *    distributed under the License is distributed on an "AS IS" BASIS,
12  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *    See the License for the specific language governing permissions and
14  *    limitations under the License.
15  */
16 /**
17  * @file       test_static_block.cpp
18  * @author     Tomasz Iwanek (t.iwanek@samsung.com)
19  * @version    0.1
20  * @brief
21  */
22
23 #include <dpl/test/test_runner.h>
24 #include <dpl/static_block.h>
25
26 RUNNER_TEST_GROUP_INIT(DPL)
27
28 namespace {
29 bool ok_namespace = false;
30 bool ok_class = false;
31
32 STATIC_BLOCK
33 {
34     ok_namespace = true;
35 }
36
37 struct A
38 {
39     static void init()
40     {
41         ok_class = true;
42     }
43 };
44 STATIC_BLOCK_CLASS( A, init )
45 }
46
47 /*
48 Name: StaticBlockInitCheck
49 Description: checks if static blocks were run
50 Expected: variables should be set
51 */
52 RUNNER_TEST(StaticBlockInitCheck)
53 {
54     RUNNER_ASSERT(ok_namespace);
55     RUNNER_ASSERT(ok_class);
56 }