tizen 2.4 release
[framework/appfw/alarm-manager.git] / test / test_update.c
1 /*
2  *  alarm-manager
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Venkatesha Sarpangala <sarpangala.v@samsung.com>, Jayoun Lee <airjany@samsung.com>,
7  * Sewook Park <sewook7.park@samsung.com>, Jaeho Lee <jaeho81.lee@samsung.com>
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  */
22
23 #include<stdio.h>
24 #include<stdlib.h>
25 #include<glib.h>
26
27 #include "alarm.h"
28
29 int callback(alarm_id_t alarm_id)
30 {
31     time_t current_time;
32     time(&current_time);
33
34     printf("Alarm[%d] has expired at %s\n", alarm_id, ctime(&current_time));
35
36     return 0;
37
38 }
39
40
41
42 void create_test()
43 {
44     time_t current_time;
45     struct tm current_tm;
46     alarm_info_t alarm_info;
47
48     alarm_id_t alarm_id_1;
49
50     int error_code;
51         bool result = false;
52
53
54     time(&current_time);
55
56     printf("current time: %s\n", ctime(&current_time));
57     localtime_r(&current_time, &current_tm);
58
59     alarm_info.start.year = 0;
60     alarm_info.start.month = 0;
61     alarm_info.start.day = 0;
62
63     alarm_info.end.year = 2008;
64     alarm_info.end.month = 12;
65     alarm_info.end.day = 31;
66
67     alarm_info.start.hour = current_tm.tm_hour;
68     alarm_info.start.min = current_tm.tm_min+1;
69
70     alarm_info.mode.day_of_week = 0;
71     alarm_info.mode.repeat = ALARM_REPEAT_MODE_ONCE;
72
73     alarm_info.activation = true;
74     alarm_info.auto_powerup = false;
75
76     result = alarm_create(&alarm_info, &alarm_id_1, &error_code);
77         if (!result)
78         {
79                 printf("test 1 failed: %d\n", error_code);
80         }
81
82
83     alarm_info.start.min = current_tm.tm_min+2;
84
85     result = alarm_update(alarm_id_1, &alarm_info, &error_code);
86         if (!result)
87         {
88                 printf("test 2 failed: %d\n", error_code);
89         }
90
91
92
93
94 }
95
96
97
98 int main(int argc, char** argv)
99 {
100     int error_code;
101     GMainLoop *mainloop;
102     mainloop = g_main_loop_new(NULL, FALSE);
103
104     alarm_init(&error_code);
105     alarm_set_cb(callback, &error_code);
106
107     create_test();
108
109     g_main_loop_run(mainloop);
110
111     alarm_fini(&error_code);
112 }