add_result_callback(function (res) {
try {
- messageStorage.removeChangeListener(subscriptionIdentifier);
+ if (subscriptionIdentifier) {
+ messageStorage.removeChangeListener(subscriptionIdentifier);
+ }
} catch (err) {
// do nothing in case removeChangeListener throw an exception
}
changeCallback = {
messagesadded: t.step_func(function (addedMessages) {
assert_type(addedMessages, "array", "Not an array.");
- assert_equals(addedMessages.length, 1, "Received incorrect number of messages: " + addedMessages.length);
- assert_true(addedMessages[0] instanceof tizen.Message, "Not a message.");
- messageService.loadMessageBody(addedMessages[0], loadSuccess, loadError);
- }),
- messagesupdated: t.step_func(function (updatedMessages) {
- assert_unreached("memssagesupdated callback invoked.");
- }),
- messagesremoved: t.step_func(function (removedMessages) {
- assert_unreached("messagesremoved callback invoked.");
+ assert_greater_than(addedMessages.length, 0, "Received empty messages array");
+
+ for (var i in addedMessages) {
+ assert_true(addedMessages[i] instanceof tizen.Message, "Not a message.");
+ if (addedMessages[i].id === message.id) {
+ messageStorage.removeChangeListener(subscriptionIdentifier);
+ messageService.loadMessageBody(addedMessages[i], loadSuccess, loadError);
+ break;
+ }
+ }
})
};
add_result_callback(function () {
try {
- messageStorage.removeChangeListener(subscriptionIdentifier);
+ if (subscriptionIdentifier) {
+ messageStorage.removeChangeListener(subscriptionIdentifier);
+ }
} catch (err) {
// do nothing in case removeChangeListener throw an exception
}
changeCallback = {
messagesadded: t.step_func(function (addedMessages) {
assert_type(addedMessages, "array", "Not an array.");
- assert_equals(addedMessages.length, 1, "Received incorrect number of messages: " + addedMessages.length);
- assert_true(addedMessages[0] instanceof tizen.Message, "Not a message.");
- messageStorage.removeChangeListener(subscriptionIdentifier);
- setTimeout(t.step_func(function () {
- messageService.loadMessageBody(addedMessages[0], loadSuccess, loadError);
- }, 3000));
- }),
- messagesupdated: t.step_func(function (updatedMessages) {
- assert_unreached("memssagesupdated callback invoked.");
- }),
- messagesremoved: t.step_func(function (removedMessages) {
- assert_unreached("messagesremoved callback invoked.");
+ assert_greater_than(addedMessages.length, 0, "Received empty messages array");
+
+ for (var i in addedMessages) {
+ assert_true(addedMessages[i] instanceof tizen.Message, "Not a message.");
+ if (addedMessages[i].id === message.id) {
+ messageStorage.removeChangeListener(subscriptionIdentifier);
+ subscriptionIdentifier = null;
+ messageService.loadMessageBody(addedMessages[i], loadSuccess, loadError);
+ break;
+ }
+ }
})
};
add_result_callback(function () {
try {
- messageStorage.removeChangeListener(subscriptionIdentifier);
+ if (subscriptionIdentifier) {
+ messageStorage.removeChangeListener(subscriptionIdentifier);
+ }
} catch (err) {
// do nothing in case removeChangeListener throw an exception
}
});
changeCallback = {
- messagesadded: t.step_func(function (addedMessages) {
- assert_unreached("messagesadded callback invoked.");
- }),
- messagesupdated: t.step_func(function (updatedMessages) {
- assert_unreached("messagesupdated callback invoked.");
- }),
messagesremoved: t.step_func(function (removedMessages) {
assert_type(removedMessages, "array", "Not an array.");
- assert_equals(removedMessages.length, 1, "Received incorrect number of messages: " + removedMessages.length);
- assert_true(removedMessages[0] instanceof tizen.Message, "Not a message.");
- assert_equals(removedMessages[0].id, message.id, "Invalid message given to callback");
- t.done();
+ assert_greater_than(removedMessages.length, 0, "Received empty messages array");
+
+ for (var i in removedMessages) {
+ assert_true(removedMessages[i] instanceof tizen.Message, "Not a message.");
+ if (removedMessages[i].id === message.id) {
+ messageStorage.removeChangeListener(subscriptionIdentifier);
+ t.done();
+ break;
+ }
+ }
})
};
});
changeCallback = {
- messagesadded: t.step_func(function (addedMessages) {
- assert_unreached("messagesadded callback invoked.");
- }),
messagesupdated: t.step_func(function (updatedMessages) {
assert_type(updatedMessages, "array", "Not an array.");
- assert_equals(updatedMessages.length, 1, "Received incorrect number of messages: " + updatedMessages.length);
- assert_true(updatedMessages[0] instanceof tizen.Message, "Not a message.");
- messageService.loadMessageBody(updatedMessages[0], loadSuccess, loadError);
- }),
- messagesremoved: t.step_func(function (removedMessages) {
- assert_unreached("messagesremoved callback invoked.");
+ assert_greater_than(updatedMessages.length, 0, "Received empty messages array");
+
+ for (var i in updatedMessages) {
+ assert_true(updatedMessages[i] instanceof tizen.Message, "Not a message.");
+ if (updatedMessages[i].id === message.id) {
+ messageStorage.removeChangeListener(subscriptionIdentifier);
+ messageService.loadMessageBody(updatedMessages[i], loadSuccess, loadError);
+ break;
+ }
+ }
})
};