1e3bb9cf729ef786bd72c802f9523c44a9ccca91
[test/tct/web/api.git] /
1 <!DOCTYPE html>
2 <!--
3 Copyright (c) 2013 Samsung Electronics Co., Ltd.
4
5 Licensed under the Apache License, Version 2.0 (the License);
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9     http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16
17
18 Authors:
19         Lukasz Bardeli <l.bardeli@samsung.com>
20
21 -->
22 <html>
23 <head>
24 <title>MessageStorage_email_findMessages_isRead_with_errorCallback</title>
25 <meta charset="utf-8"/>
26 <script type="text/javascript" src="support/unitcommon.js"></script>
27 <script type="text/javascript" src="support/messaging_common.js"></script>
28 </head>
29
30 <body>
31 <div id="log"></div>
32 <script>
33 //==== TEST: MessageStorage_email_findMessages_isRead_with_errorCallback
34 //==== LABEL Check if MessageStorage.findMessages method works properly for filter by isRead (email)
35 //==== ONLOAD_DELAY 180
36 //==== TIMEOUT 180
37 //==== SPEC Tizen Web API:Communication:Messaging:MessageStorage:findMessages M
38 //==== SPEC_URL https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/messaging.html
39 //==== TEST_CRITERIA MOA
40 setup({timeout: 180000});
41
42 var t = async_test(document.title, {timeout: 180000}),
43     serviceSuccess, serviceError, service, message, filter, messageFound = false, inboxMessageId,
44     sendSuccess, sendError, syncSuccess, syncError, findFoldersSuccess, findFoldersError,
45     findInboxMessageSuccess, findInboxMessageError, updateSuccess, updateError,
46     findUpdatedMessagesSuccess, findUpdatedMessagesError;
47
48 t.step(function () {
49    findUpdatedMessagesSuccess = t.step_func(function (messages) {
50         assert_type(messages, "array", "Not an array");
51         assert_greater_than(messages.length, 0, "Received empty messages array");
52
53         for (var i in messages) {
54             assert_true(messages[i] instanceof tizen.Message, "Not a Message");
55             assert_equals(messages[i].isRead, true, "returned isRead is not equal to true");
56
57             if (messages[i].id === inboxMessageId) {
58                 messageFound = true;
59             }
60         }
61
62         assert_true(messageFound, "expected message wasn't found");
63         t.done();
64     });
65
66     findUpdatedMessagesError = t.step_func(function (error) {
67         assert_unreached("findMessages() error callback: name:" + error.name + ", msg:" + error.message);
68     });
69
70     updateSuccess = t.step_func(function () {
71         filter = new tizen.AttributeFilter("isRead", "EXACTLY", true);
72         service.messageStorage.findMessages(filter, findUpdatedMessagesSuccess, findUpdatedMessagesError);
73     });
74
75     updateError = t.step_func(function (error) {
76         assert_unreached("updateMessages() error callback: name:" + error.name + ", msg:" + error.message);
77     });
78
79     findInboxMessageSuccess = t.step_func(function (messages) {
80         assert_equals(messages.length, 1, "Found incorrect number of messages");
81         assert_equals(messages[0].subject, message.subject, "Incorrect subject.");
82         assert_equals(messages[0].folderId, inboxFolder.id, "Incorrect folderId.");
83
84         messages[0].isRead = true;
85         inboxMessageId = messages[0].id;
86
87         service.messageStorage.updateMessages(messages, updateSuccess, updateError);
88
89         t.done();
90     });
91
92     findInboxMessageError = t.step_func(function (error) {
93         assert_unreached("findMessage() error callback: name:" + error.name + ", msg:" + error.message);
94     });
95
96     findFoldersSuccess = t.step_func(function (folders) {
97         inboxFolder = getInboxFolder(t, folders);
98         findMessages(t, service, inboxFolder, message.subject, findInboxMessageSuccess, findInboxMessageError);
99     });
100
101     findFoldersError = t.step_func(function (error) {
102         assert_unreached("findFolders() error callback: name:" + error.name + ", msg:" + error.message);
103     });
104
105     syncSuccess = t.step_func(function () {
106         findFolders(t, service, findFoldersSuccess, findFoldersError);
107     });
108
109     syncError = t.step_func(function (error) {
110         assert_unreached("sync() error callback: name:" + error.name + ", msg:" + error.message);
111     });
112
113     sendSuccess = t.step_func(function () {
114         sync(t, service, syncSuccess, syncError);
115     });
116
117     sendError = t.step_func(function (error) {
118         assert_unreached("sendMessage() error callback: name:" + error.name + ", msg:" + error.message);
119     });
120
121     serviceSuccess = t.step_func(function (emailService) {
122         service = emailService;
123
124         message = createSimpleMessageTo(TEST_EMAIL_RECIPIENT_1);
125
126         sendMessage(t, service, message, sendSuccess, sendError);
127     });
128
129     serviceError = t.step_func(function (error) {
130         assert_unreached("getEmailService() error callback: name:" + error.name + ", msg:" + error.message);
131     });
132
133     getEmailService(t, serviceSuccess, serviceError);
134 });
135
136 </script>
137 </body>
138 </html>