From 6a44a712f5b1aba43b45c63b67645b9e39e0c37c Mon Sep 17 00:00:00 2001 From: "xianglan0.li" Date: Wed, 26 Oct 2016 11:22:48 +0800 Subject: [PATCH] [mobile][tct-contact-tizen-tests][Testcase sync from Suprem] Change-Id: I1d2322e4eee805eb6a79939d0b20341e1abab933 Signed-off-by: xianglan0.li --- mobile/tct-contact-tizen-tests/COPYING | 24 + .../LICENSE.Apache-2.0 | 202 + .../tct-contact-tizen-tests/LICENSE.CC-BY-3.0 | 295 + mobile/tct-contact-tizen-tests/NOTICE | 15 + mobile/tct-contact-tizen-tests/README | 70 + mobile/tct-contact-tizen-tests/config.xml | 12 + ...ressBookArraySuccessCallback_notexist.html | 43 + ...essBookArraySuccessCallback_onsuccess.html | 57 + .../AddressBookChangeCallback_notexist.html | 44 + ...essBookChangeCallback_oncontactsadded.html | 87 + ...sBookChangeCallback_oncontactsremoved.html | 85 + ...sBookChangeCallback_oncontactsupdated.html | 90 + .../AddressBook_AccountId_attribute.html | 49 + ...essBook_ArraySuccessCallback_notexist.html | 44 + .../contact/AddressBook_add.html | 66 + .../contact/AddressBook_addBatch.html | 72 + ...ssBook_addBatch_contacts_TypeMismatch.html | 59 + ...k_addBatch_errorCallback_TypeMismatch.html | 80 + ...ook_addBatch_errorCallback_invalid_cb.html | 78 + ...ssBook_addBatch_errorCallback_invoked.html | 74 + .../contact/AddressBook_addBatch_exist.html | 46 + .../contact/AddressBook_addBatch_missarg.html | 52 + .../AddressBook_addBatch_one_missNull.html | 81 + ...addBatch_successCallback_TypeMismatch.html | 77 + ...k_addBatch_successCallback_invalid_cb.html | 76 + .../AddressBook_addBatch_two_bothNull.html | 93 + .../AddressBook_addBatch_two_oneIsNull.html | 82 + ...dressBook_addBatch_with_errorCallback.html | 79 + ...essBook_addBatch_with_successCallback.html | 85 + .../AddressBook_addChangeListener.html | 71 + ...geListener_errorCallback_TypeMismatch.html | 69 + ...angeListener_errorCallback_invalid_cb.html | 67 + .../AddressBook_addChangeListener_exist.html | 46 + ...AddressBook_addChangeListener_missarg.html | 54 + ...Listener_successCallback_TypeMismatch.html | 56 + ...geListener_successCallback_invalid_cb.html | 56 + ..._addChangeListener_with_errorCallback.html | 60 + .../contact/AddressBook_addGroup.html | 51 + .../contact/AddressBook_addGroup_exist.html | 46 + ...dressBook_addGroup_group_TypeMismatch.html | 56 + ...ddressBook_addGroup_group_invalid_obj.html | 52 + .../contact/AddressBook_addGroup_missarg.html | 52 + ...ddressBook_add_addressesField_fullSet.html | 89 + ...Book_add_addressesField_multiple_type.html | 96 + ...ddressBook_add_addressesField_partSet.html | 76 + ...ddressBook_add_anniversaries_multiple.html | 84 + .../AddressBook_add_contact_TypeMismatch.html | 60 + .../AddressBook_add_contact_invalid_obj.html | 63 + .../AddressBook_add_emailsField_multiple.html | 88 + .../contact/AddressBook_add_exist.html | 47 + .../contact/AddressBook_add_get_remove.html | 74 + .../contact/AddressBook_add_missarg.html | 52 + .../AddressBook_add_nameField_fullSet.html | 74 + .../AddressBook_add_nameField_partSet.html | 67 + .../AddressBook_add_notes_multiple.html | 64 + .../contact/AddressBook_add_null.html | 69 + ...ssBook_add_phoneNumbersField_multiple.html | 69 + .../contact/AddressBook_add_remove_get.html | 69 + .../contact/AddressBook_constructor.html | 60 + .../contact/AddressBook_exist.html | 43 + .../contact/AddressBook_extend.html | 48 + .../contact/AddressBook_find.html | 66 + ...sBook_find_errorCallback_TypeMismatch.html | 60 + ...essBook_find_errorCallback_invalid_cb.html | 59 + ...ddressBook_find_errorCallback_invoked.html | 72 + .../contact/AddressBook_find_exist.html | 46 + .../AddressBook_find_filter_TypeMismatch.html | 63 + .../AddressBook_find_filter_invalid_obj.html | 64 + .../contact/AddressBook_find_missarg.html | 52 + ...ddressBook_find_sortMode_TypeMismatch.html | 64 + ...AddressBook_find_sortMode_invalid_obj.html | 64 + ...ook_find_successCallback_TypeMismatch.html | 55 + ...sBook_find_successCallback_invalid_cb.html | 56 + .../AddressBook_find_with_errorCallback.html | 68 + .../contact/AddressBook_find_with_filter.html | 77 + .../AddressBook_find_with_sortMode.html | 70 + .../contact/AddressBook_get.html | 71 + .../contact/AddressBook_getGroup.html | 52 + .../AddressBook_getGroup_constructor.html | 60 + .../contact/AddressBook_getGroup_exist.html | 47 + ...essBook_getGroup_groupId_TypeMismatch.html | 52 + .../AddressBook_getGroup_groupId_invalid.html | 51 + ...AddressBook_getGroup_invalid_argument.html | 51 + .../contact/AddressBook_getGroup_misarg.html | 48 + .../contact/AddressBook_getGroups.html | 68 + .../contact/AddressBook_getGroups_exist.html | 47 + .../AddressBook_getGroups_extra_argument.html | 46 + .../contact/AddressBook_get_check_fields.html | 70 + .../contact/AddressBook_get_exist.html | 47 + .../AddressBook_get_id_TypeMismatch.html | 52 + .../contact/AddressBook_get_id_invalid.html | 63 + .../contact/AddressBook_get_misarg.html | 48 + .../contact/AddressBook_id_attribute.html | 50 + .../contact/AddressBook_name_attribute.html | 51 + .../AddressBook_readOnly_attribute.html | 51 + .../contact/AddressBook_remove.html | 68 + .../contact/AddressBook_removeBatch.html | 81 + ...emoveBatch_errorCallback_TypeMismatch.html | 82 + ..._removeBatch_errorCallback_invalid_cb.html | 80 + ...ook_removeBatch_errorCallback_invoked.html | 76 + .../AddressBook_removeBatch_exist.html | 47 + ...ressBook_removeBatch_ids_TypeMismatch.html | 57 + .../AddressBook_removeBatch_missarg.html | 52 + ...oveBatch_successCallback_TypeMismatch.html | 78 + ...emoveBatch_successCallback_invalid_cb.html | 78 + ...ssBook_removeBatch_with_errorCallback.html | 76 + ...Book_removeBatch_with_successCallback.html | 73 + ...k_removeBatch_without_successCallback.html | 99 + .../AddressBook_removeChangeListener.html | 62 + ...ddressBook_removeChangeListener_exist.html | 47 + ...dressBook_removeChangeListener_misarg.html | 48 + ...veChangeListener_watchId_TypeMismatch.html | 52 + ...angeListener_watchId_invalid_argument.html | 60 + .../contact/AddressBook_removeGroup.html | 58 + .../AddressBook_removeGroup_exist.html | 47 + ...Book_removeGroup_groupId_TypeMismatch.html | 54 + ...dressBook_removeGroup_groupId_invalid.html | 52 + ...ressBook_removeGroup_invalid_argument.html | 52 + .../AddressBook_removeGroup_misarg.html | 49 + .../contact/AddressBook_remove_exist.html | 47 + .../AddressBook_remove_id_TypeMismatch.html | 52 + .../AddressBook_remove_id_invalid.html | 63 + .../AddressBook_remove_invalid_argument.html | 63 + .../contact/AddressBook_remove_misarg.html | 48 + .../contact/AddressBook_update.html | 76 + .../contact/AddressBook_updateBatch.html | 91 + ...ook_updateBatch_contacts_TypeMismatch.html | 57 + ...pdateBatch_errorCallback_TypeMismatch.html | 85 + ..._updateBatch_errorCallback_invalid_cb.html | 83 + ...ook_updateBatch_errorCallback_invoked.html | 75 + .../AddressBook_updateBatch_exist.html | 47 + .../AddressBook_updateBatch_missarg.html | 53 + ...ateBatch_successCallback_TypeMismatch.html | 80 + ...pdateBatch_successCallback_invalid_cb.html | 82 + ...ssBook_updateBatch_with_errorCallback.html | 81 + ...Book_updateBatch_with_successCallback.html | 78 + ...k_updateBatch_without_successCallback.html | 61 + .../contact/AddressBook_updateGroup.html | 55 + .../AddressBook_updateGroup_exist.html | 47 + ...ssBook_updateGroup_group_TypeMismatch.html | 57 + ...essBook_updateGroup_group_invalid_obj.html | 53 + ...ressBook_updateGroup_invalid_argument.html | 53 + .../AddressBook_updateGroup_missarg.html | 53 + .../AddressBook_updateGroup_ringtoneURI.html | 55 + ...dressBook_update_contact_TypeMismatch.html | 57 + ...ddressBook_update_contact_invalid_obj.html | 65 + .../contact/AddressBook_update_exist.html | 47 + .../AddressBook_update_invalid_argument.html | 71 + .../contact/AddressBook_update_missarg.html | 53 + ...ontactAddressInit_attributeType_check.html | 65 + ...dress_additionalInformation_attribute.html | 59 + .../ContactAddress_attributeType_check.html | 62 + .../ContactAddress_attribute_byDefault.html | 54 + .../ContactAddress_city_attribute.html | 59 + .../contact/ContactAddress_constructor.html | 54 + ...ddress_constructor_ContactAddressInit.html | 65 + .../ContactAddress_constructor_minargs.html | 48 + .../ContactAddress_country_attribute.html | 59 + .../contact/ContactAddress_exist.html | 44 + .../contact/ContactAddress_extend.html | 51 + .../ContactAddress_isDefault_attribute.html | 60 + .../ContactAddress_label_attribute.html | 61 + .../ContactAddress_postalCode_attribute.html | 58 + .../ContactAddress_region_attribute.html | 58 + ...ontactAddress_streetAddress_attribute.html | 58 + .../ContactAddress_types_attribute.html | 64 + ...ContactAddress_types_attribute_CUSTOM.html | 60 + .../ContactAddress_types_attribute_OTHER.html | 60 + .../ContactAnniversary_constructor.html | 51 + ...ontactAnniversary_constructor_minargs.html | 51 + .../ContactAnniversary_date_attribute.html | 55 + .../contact/ContactAnniversary_exist.html | 49 + .../contact/ContactAnniversary_extend.html | 47 + .../ContactAnniversary_label_attribute.html | 54 + .../ContactArraySuccessCallback_notexist.html | 44 + ...ContactArraySuccessCallback_onsuccess.html | 80 + ...ntactEmailAddress_attributeType_check.html | 48 + .../ContactEmailAddress_constructor.html | 52 + ...ntactEmailAddress_constructor_minargs.html | 49 + .../ContactEmailAddress_email_attribute.html | 52 + .../contact/ContactEmailAddress_exist.html | 44 + .../contact/ContactEmailAddress_extend.html | 48 + ...ntactEmailAddress_isDefault_attribute.html | 53 + .../ContactEmailAddress_label_attribute.html | 50 + .../ContactEmailAddress_types_attribute.html | 57 + ...ctEmailAddress_types_attribute_CUSTOM.html | 48 + ...actEmailAddress_types_attribute_OTHER.html | 49 + ...tExtension_constructor_data_attribute.html | 76 + .../ContactExtension_constructor_exist.html | 43 + ...Extension_constructor_with_dictionary.html | 56 + ...ension_constructor_without_dictionary.html | 56 + .../ContactExtension_data10_attribute.html | 66 + .../ContactExtension_data11_attribute.html | 66 + .../ContactExtension_data12_attribute.html | 66 + .../ContactExtension_data1_attribute.html | 66 + .../ContactExtension_data2_attribute.html | 66 + .../ContactExtension_data3_attribute.html | 66 + .../ContactExtension_data4_attribute.html | 66 + .../ContactExtension_data5_attribute.html | 66 + .../ContactExtension_data6_attribute.html | 66 + .../ContactExtension_data7_attribute.html | 66 + .../ContactExtension_data8_attribute.html | 66 + .../ContactExtension_data9_attribute.html | 66 + .../contact/ContactExtension_extend.html | 43 + .../ContactGroup_addressBookId_attribute.html | 67 + .../ContactGroup_attributeType_check.html | 49 + .../ContactGroup_attribute_byDefault.html | 49 + .../ContactGroup_connstructor_minarg.html | 55 + .../contact/ContactGroup_constructor.html | 55 + .../contact/ContactGroup_exist.html | 47 + .../contact/ContactGroup_extend.html | 47 + .../contact/ContactGroup_id_attribute.html | 68 + .../contact/ContactGroup_name_attribute.html | 56 + .../ContactGroup_photoURI_attribute.html | 54 + .../ContactGroup_readOnly_attribute.html | 54 + .../ContactGroup_readOnly_not_nullable.html | 47 + .../ContactGroup_ringtoneURI_attribute.html | 54 + .../ContactInit_attributeType_check.html | 85 + .../ContactInstantMessenger_constructor.html | 48 + .../ContactInstantMessenger_exist.html | 43 + .../ContactInstantMessenger_extend.html | 43 + ...tInstantMessenger_imAddress_attribute.html | 52 + ...ntactInstantMessenger_label_attribute.html | 50 + ...ontactInstantMessenger_type_attribute.html | 73 + .../ContactManagerObject_notexist.html | 44 + .../ContactManager_addAddressBook.html | 59 + ...ctManager_addAddressBook_TypeMismatch.html | 52 + .../ContactManager_addAddressBook_exist.html | 44 + ...ContactManager_addAddressBook_invalid.html | 48 + .../ContactManager_addAddressBook_misarg.html | 47 + .../ContactManager_addChangeListener.html | 63 + ...ontactManager_addChangeListener_exist.html | 45 + ...tactManager_addChangeListener_missarg.html | 51 + ...Listener_successCallback_TypeMismatch.html | 55 + ...geListener_successCallback_invalid_cb.html | 56 + .../contact/ContactManager_check_types.html | 62 + .../contact/ContactManager_extend.html | 47 + .../contact/ContactManager_find.html | 70 + .../ContactManager_findByUsageCount.html | 73 + ...UsageCount_errorCallback_TypeMismatch.html | 60 + ...ByUsageCount_errorCallback_invalid_cb.html | 59 + ...indByUsageCount_errorCallback_invoked.html | 78 + ...ContactManager_findByUsageCount_exist.html | 43 + ..._findByUsageCount_filter_TypeMismatch.html | 63 + ...r_findByUsageCount_filter_invalid_obj.html | 79 + ...ontactManager_findByUsageCount_misarg.html | 44 + ...UsageCount_sortModeOrder_TypeMismatch.html | 64 + ...ageCount_successCallback_TypeMismatch.html | 54 + ...UsageCount_successCallback_invalid_cb.html | 59 + ...tManager_findByUsageCount_with_offset.html | 77 + ...nager_find_errorCallback_TypeMismatch.html | 60 + ...Manager_find_errorCallback_invalid_cb.html | 58 + ...actManager_find_errorCallback_invoked.html | 68 + .../contact/ContactManager_find_exist.html | 45 + ...ntactManager_find_filter_TypeMismatch.html | 62 + ...ontactManager_find_filter_invalid_obj.html | 63 + .../contact/ContactManager_find_missarg.html | 50 + ...actManager_find_sortMode_TypeMismatch.html | 63 + ...tactManager_find_sortMode_invalid_obj.html | 60 + ...ger_find_successCallback_TypeMismatch.html | 55 + ...nager_find_successCallback_invalid_cb.html | 55 + ...ontactManager_find_with_errorCallback.html | 67 + .../ContactManager_find_with_filter.html | 68 + .../ContactManager_find_with_sortMode.html | 69 + .../contact/ContactManager_get.html | 70 + .../ContactManager_getAddressBook.html | 48 + ...ddressBook_addressBookId_TypeMismatch.html | 52 + ..._getAddressBook_addressBookId_invalid.html | 46 + .../ContactManager_getAddressBook_exist.html | 45 + ...nager_getAddressBook_invalid_argument.html | 45 + .../ContactManager_getAddressBook_misarg.html | 46 + .../ContactManager_getAddressBooks.html | 53 + ...dressBooks_errorCallback_TypeMismatch.html | 59 + ...AddressBooks_errorCallback_invalid_cb.html | 58 + .../ContactManager_getAddressBooks_exist.html | 46 + ...ontactManager_getAddressBooks_missarg.html | 49 + ...essBooks_successCallback_TypeMismatch.html | 55 + ...dressBooks_successCallback_invalid_cb.html | 56 + ...er_getAddressBooks_with_errorCallback.html | 53 + ...tAddressBooks_with_errorCallback_null.html | 64 + ...getAddressBooks_without_errorCallback.html | 56 + .../ContactManager_getDefaultAddressBook.html | 49 + ...ctManager_getDefaultAddressBook_exist.html | 45 + ..._getDefaultAddressBook_extra_argument.html | 45 + .../ContactManager_getUnifiedAddressBook.html | 51 + ...ctManager_getUnifiedAddressBook_exist.html | 45 + ..._getUnifiedAddressBook_extra_argument.html | 45 + .../contact/ContactManager_get_exist.html | 45 + .../ContactManager_get_invalid_argument.html | 63 + .../contact/ContactManager_get_misarg.html | 46 + ...tactManager_get_personId_TypeMismatch.html | 52 + .../ContactManager_get_personId_invalid.html | 63 + .../contact/ContactManager_in_tizen.html | 45 + .../contact/ContactManager_notexist.html | 44 + .../contact/ContactManager_remove.html | 63 + .../ContactManager_removeAddressBook.html | 55 + ...ontactManager_removeAddressBook_exist.html | 44 + ...er_removeAddressBook_invalid_argument.html | 57 + ...Manager_removeAddressBook_invalid_obj.html | 48 + ...ntactManager_removeAddressBook_misarg.html | 47 + .../contact/ContactManager_removeBatch.html | 68 + ...emoveBatch_errorCallback_TypeMismatch.html | 76 + ..._removeBatch_errorCallback_invalid_cb.html | 76 + ...ger_removeBatch_errorCallback_invoked.html | 52 + .../ContactManager_removeBatch_exist.html | 46 + .../ContactManager_removeBatch_missarg.html | 51 + ...er_removeBatch_personIds_TypeMismatch.html | 53 + ...oveBatch_successCallback_TypeMismatch.html | 73 + ...emoveBatch_successCallback_invalid_cb.html | 73 + ...anager_removeBatch_with_errorCallback.html | 69 + ...ager_removeBatch_with_successCallback.html | 73 + .../ContactManager_removeChangeListener.html | 60 + ...ger_removeChangeListener_TypeMismatch.html | 52 + ...actManager_removeChangeListener_exist.html | 46 + ...removeChangeListener_invalid_argument.html | 59 + ...ctManager_removeChangeListener_misarg.html | 45 + .../contact/ContactManager_remove_exist.html | 46 + ...ontactManager_remove_invalid_argument.html | 63 + .../contact/ContactManager_remove_misarg.html | 46 + ...tManager_remove_personId_TypeMismatch.html | 52 + ...ontactManager_remove_personId_invalid.html | 63 + .../contact/ContactManager_update.html | 66 + .../contact/ContactManager_updateBatch.html | 74 + ...pdateBatch_errorCallback_TypeMismatch.html | 80 + ..._updateBatch_errorCallback_invalid_cb.html | 80 + ...ger_updateBatch_errorCallback_invoked.html | 70 + .../ContactManager_updateBatch_exist.html | 46 + .../ContactManager_updateBatch_missarg.html | 52 + ...ager_updateBatch_persons_TypeMismatch.html | 54 + ...ateBatch_successCallback_TypeMismatch.html | 78 + ...pdateBatch_successCallback_invalid_cb.html | 77 + ...anager_updateBatch_with_errorCallback.html | 77 + ...ager_updateBatch_with_successCallback.html | 77 + .../contact/ContactManager_update_exist.html | 46 + ...ontactManager_update_invalid_argument.html | 65 + .../ContactManager_update_missarg.html | 50 + ...actManager_update_person_TypeMismatch.html | 55 + .../ContactManager_update_person_invalid.html | 65 + .../ContactNameInit_attributeType_check.html | 64 + .../ContactName_attributeType_check.html | 64 + .../ContactName_attribute_byDefault.html | 53 + .../contact/ContactName_constructor.html | 68 + ...ntactName_constructor_contactNameInit.html | 65 + .../ContactName_constructor_minarg.html | 47 + .../ContactName_displayName_attribute.html | 74 + .../contact/ContactName_exist.html | 47 + .../contact/ContactName_extend.html | 58 + .../ContactName_firstName_attribute.html | 62 + .../ContactName_lastName_attribute.html | 62 + .../ContactName_middleName_attribute.html | 62 + .../ContactName_nicknames_attribute.html | 79 + ...ContactName_nicknames_attribute_multi.html | 57 + .../ContactName_nicknames_not_nullable.html | 59 + ...ntactName_phoneticFirstName_attribute.html | 62 + ...ontactName_phoneticLastName_attribute.html | 62 + ...tactName_phoneticMiddleName_attribute.html | 61 + .../contact/ContactName_prefix_attribute.html | 62 + .../contact/ContactName_suffix_attribute.html | 62 + ...tOrganizationInit_attributeType_check.html | 59 + ...ntactOrganization_attributeType_check.html | 59 + .../ContactOrganization_constructor.html | 62 + ...n_constructor_ContactOrganizationInit.html | 59 + ...ontactOrganization_constructor_minarg.html | 59 + ...tactOrganization_department_attribute.html | 60 + .../contact/ContactOrganization_exist.html | 47 + .../contact/ContactOrganization_extend.html | 47 + ...ContactOrganization_logoURI_attribute.html | 60 + .../ContactOrganization_name_attribute.html | 60 + .../ContactOrganization_role_attribute.html | 60 + .../ContactOrganization_title_attribute.html | 60 + ...ontactPhoneNumber_attributeType_check.html | 49 + ...ontactPhoneNumber_attribute_byDefault.html | 49 + .../ContactPhoneNumber_constructor.html | 54 + ...ontactPhoneNumber_constructor_minargs.html | 54 + .../contact/ContactPhoneNumber_exist.html | 47 + .../contact/ContactPhoneNumber_extend.html | 51 + ...ontactPhoneNumber_isDefault_attribute.html | 56 + .../ContactPhoneNumber_label_attribute.html | 51 + .../ContactPhoneNumber_number_attribute.html | 56 + .../ContactPhoneNumber_types_attribute.html | 59 + ...PhoneNumber_types_attribute_ASSISTANT.html | 50 + ...actPhoneNumber_types_attribute_CUSTOM.html | 50 + ...tactPhoneNumber_types_attribute_OTHER.html | 50 + .../ContactRef_addressBookId_attribute.html | 56 + .../ContactRef_attributeType_check.html | 55 + .../contact/ContactRef_constructor.html | 55 + .../ContactRef_contactId_attribute.html | 60 + .../contact/ContactRef_exist.html | 47 + .../contact/ContactRef_extend.html | 50 + .../ContactRelationship_constructor.html | 48 + .../contact/ContactRelationship_exist.html | 43 + .../contact/ContactRelationship_extend.html | 43 + .../ContactRelationship_label_attribute.html | 49 + ...ctRelationship_relativeName_attribute.html | 51 + .../ContactRelationship_type_attribute.html | 81 + .../ContactTextFormat_enum_VCARD_30.html | 73 + .../ContactTextFormat_enum_invalid.html | 72 + .../ContactWebSite_attributeType_check.html | 49 + .../contact/ContactWebSite_constructor.html | 52 + .../ContactWebSite_constructor_minarg.html | 50 + .../contact/ContactWebSite_exist.html | 44 + .../contact/ContactWebSite_extend.html | 48 + .../ContactWebSite_type_attribute.html | 52 + .../contact/ContactWebSite_url_attribute.html | 52 + ...ContactArraySuccessCallback_onsuccess.html | 70 + ...tact_ContactEmailAddress_emails_types.html | 60 + ...ct_ContactManagerObject_attri_contact.html | 56 + ...Contact_ContactManager_getAddressBook.html | 71 + ...ct_ContactManager_getAddressBook_NULL.html | 57 + ...ContactManager_getAddressBook_invalid.html | 58 + ...ontact_ContactManager_getAddressBooks.html | 64 + ...ontactManager_getAddressBooks_invalid.html | 63 + ..._ContactManager_getDefaultAddressBook.html | 56 + ...ContactPhoneNumber_attri_number_types.html | 63 + .../Contact_addressBookId_attribute.html | 81 + .../contact/Contact_addresses_attribute.html | 96 + .../Contact_anniversaries_attribute.html | 85 + .../contact/Contact_attributeType_check.html | 78 + .../contact/Contact_attribute_byDefault.html | 69 + .../contact/Contact_birthday_attribute.html | 78 + .../contact/Contact_clone.html | 70 + .../contact/Contact_clone_exist.html | 50 + .../contact/Contact_clone_extra_argument.html | 54 + .../Contact_constructor_ContactInit.html | 76 + .../contact/Contact_constructor_VCARD.html | 64 + .../contact/Contact_convertToString.html | 52 + .../Contact_convertToString_exist.html | 49 + ...t_convertToString_format_TypeMismatch.html | 56 + .../Contact_convertToString_with_format.html | 52 + .../Contact_convertToString_with_null.html | 51 + .../Contact_convertToString_with_one.html | 51 + .../contact/Contact_emails_attribute.html | 85 + .../contact/Contact_exist.html | 44 + .../contact/Contact_extend.html | 64 + .../contact/Contact_groupIds_attribute.html | 95 + .../contact/Contact_id_attribute.html | 81 + .../contact/Contact_isFavorite_attribute.html | 77 + .../Contact_isFavorite_not_nullable.html | 75 + .../Contact_lastUpdated_attribute.html | 81 + .../Contact_messageAlertURI_attribute.html | 77 + .../contact/Contact_messengers_attribute.html | 85 + .../contact/Contact_name_attribute.html | 86 + .../contact/Contact_notes_attribute.html | 83 + .../Contact_organizations_attribute.html | 87 + .../contact/Contact_personId_attribute.html | 81 + .../Contact_phoneNumbers_attribute.html | 85 + .../contact/Contact_photoURI_attribute.html | 77 + .../Contact_relationships_attribute.html | 85 + .../Contact_ringtoneURI_attribute.html | 77 + .../contact/Contact_urls_attribute.html | 87 + .../Contact_vibrationURI_attribute.html | 77 + .../contact/Makefile.am | 4 + .../PersonArraySuccessCallback_notexist.html | 44 + .../PersonArraySuccessCallback_onsuccess.html | 78 + .../Person_contactCount_attribute.html | 61 + .../Person_displayContactId_attribute.html | 63 + .../contact/Person_displayName_attribute.html | 59 + .../contact/Person_extend.html | 62 + .../contact/Person_getUsageCount.html | 63 + .../contact/Person_getUsageCount_exist.html | 53 + ...erson_getUsageCount_type_TypeMismatch.html | 69 + .../Person_getUsageCount_with_type.html | 63 + .../contact/Person_hasEmail_attribute.html | 61 + .../Person_hasPhoneNumber_attribute.html | 61 + .../contact/Person_id_attribute.html | 61 + .../contact/Person_isFavorite_attribute.html | 63 + .../contact/Person_link.html | 70 + .../contact/Person_link_TypeMismatch.html | 63 + .../contact/Person_link_exist.html | 56 + .../contact/Person_link_misarg.html | 58 + .../contact/Person_link_personId_invalid.html | 68 + .../contact/Person_notexist.html | 44 + .../contact/Person_photoURI_attribute.html | 62 + .../contact/Person_resetUsageCount.html | 63 + .../contact/Person_resetUsageCount_exist.html | 53 + ...son_resetUsageCount_type_TypeMismatch.html | 69 + .../Person_resetUsageCount_with_type.html | 63 + .../contact/Person_ringtoneURI_attribute.html | 62 + .../contact/Person_unlink.html | 81 + .../contact/Person_unlink_TypeMismatch.html | 74 + .../Person_unlink_contactId_invalid.html | 69 + .../contact/Person_unlink_exist.html | 56 + .../contact/Person_unlink_misarg.html | 69 + .../PersonsChangeCallback_notexist.html | 44 + .../PersonsChangeCallback_onpersonsadded.html | 92 + ...ersonsChangeCallback_onpersonsremoved.html | 84 + ...ersonsChangeCallback_onpersonsupdated.html | 96 + .../contact/support/Makefile.am | 3 + .../contact/support/contact_common.js | 210 + .../contact/support/getJsonConf.js | 46 + .../support/tizen_contact_data_generators.js | 256 + .../contact/support/unitcommon.js | 586 ++ mobile/tct-contact-tizen-tests/icon.png | Bin 0 -> 15972 bytes mobile/tct-contact-tizen-tests/inst.apk.py | 108 + mobile/tct-contact-tizen-tests/inst.wgt.py | 223 + mobile/tct-contact-tizen-tests/inst.xpk.py | 229 + mobile/tct-contact-tizen-tests/manifest.json | 13 + mobile/tct-contact-tizen-tests/pack.py | 1104 ++++ .../tct-contact-tizen-tests/resources/COPYING | 12 + .../resources/testharness.css | 107 + .../resources/testharness.js | 2353 +++++++ .../resources/testharnessreport.js | 397 ++ mobile/tct-contact-tizen-tests/suite.json | 55 + mobile/tct-contact-tizen-tests/testcase.xsl | 200 + mobile/tct-contact-tizen-tests/testresult.xsl | 491 ++ mobile/tct-contact-tizen-tests/tests.bak.xml | 875 +++ mobile/tct-contact-tizen-tests/tests.css | 132 + mobile/tct-contact-tizen-tests/tests.full.xml | 5771 +++++++++++++++++ mobile/tct-contact-tizen-tests/tests.xml | 2411 +++++++ .../webapi-tizen-contact-test_image1.png | Bin 0 -> 785 bytes .../webapi-tizen-contact-test_image2.png | Bin 0 -> 787 bytes .../webapi-tizen-contact-test_ring1.mp3 | Bin 0 -> 6272 bytes .../webapi-tizen-contact-test_ring2.mp3 | Bin 0 -> 42052 bytes .../webrunner/index.html | 133 + .../webrunner/jquery-1.10.2.min.js | 6 + .../webrunner/testrunner.js | 916 +++ 516 files changed, 46355 insertions(+) create mode 100644 mobile/tct-contact-tizen-tests/COPYING create mode 100644 mobile/tct-contact-tizen-tests/LICENSE.Apache-2.0 create mode 100644 mobile/tct-contact-tizen-tests/LICENSE.CC-BY-3.0 create mode 100644 mobile/tct-contact-tizen-tests/NOTICE create mode 100644 mobile/tct-contact-tizen-tests/README create mode 100644 mobile/tct-contact-tizen-tests/config.xml create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_onsuccess.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsadded.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsremoved.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsupdated.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_AccountId_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_ArraySuccessCallback_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_contacts_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_one_missNull.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_bothNull.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_oneIsNull.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_successCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_fullSet.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_multiple_type.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_partSet.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_anniversaries_multiple.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_emailsField_multiple.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_get_remove.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_fullSet.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_partSet.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_notes_multiple.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_null.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_phoneNumbersField_multiple.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_add_remove_get.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_filter.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_sortMode.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_get.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_extra_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_get_check_fields.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_get_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_get_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_id_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_name_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_readOnly_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_remove.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_ids_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_successCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_without_successCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_remove_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_remove_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_remove_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_update.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_contacts_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_successCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_without_successCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_ringtoneURI.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_update_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_update_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/AddressBook_update_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddressInit_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_additionalInformation_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_attribute_byDefault.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_city_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_ContactAddressInit.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_minargs.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_country_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_isDefault_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_label_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_postalCode_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_region_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_streetAddress_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_CUSTOM.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_OTHER.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor_minargs.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAnniversary_date_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAnniversary_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAnniversary_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactAnniversary_label_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_onsuccess.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor_minargs.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_email_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_isDefault_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_label_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_CUSTOM.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_OTHER.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_data_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_with_dictionary.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_without_dictionary.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data10_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data11_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data12_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data1_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data2_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data3_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data4_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data5_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data6_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data7_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data8_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_data9_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactExtension_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_addressBookId_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_attribute_byDefault.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_connstructor_minarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_id_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_name_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_photoURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_not_nullable.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactGroup_ringtoneURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactInit_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_imAddress_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_label_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_type_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManagerObject_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_check_types.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_sortModeOrder_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_with_offset.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_filter.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_sortMode.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_get.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback_null.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_without_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_extra_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_extra_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_get_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_get_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_get_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_in_tizen.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_remove.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_obj.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_personIds_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_successCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_remove_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_remove_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_remove_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_update.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invoked.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_persons_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_invalid_cb.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_errorCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_successCallback.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_update_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_update_invalid_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_update_missarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactNameInit_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_attribute_byDefault.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_constructor_contactNameInit.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_constructor_minarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_displayName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_firstName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_lastName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_middleName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute_multi.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_not_nullable.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_phoneticFirstName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_phoneticLastName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_phoneticMiddleName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_prefix_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactName_suffix_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganizationInit_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_ContactOrganizationInit.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_minarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_department_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_logoURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_name_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_role_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactOrganization_title_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attribute_byDefault.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor_minargs.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_isDefault_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_label_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_number_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_ASSISTANT.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_CUSTOM.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_OTHER.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRef_addressBookId_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRef_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRef_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRef_contactId_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRef_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRef_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRelationship_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRelationship_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRelationship_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRelationship_label_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRelationship_relativeName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactRelationship_type_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_VCARD_30.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactWebSite_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor_minarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactWebSite_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactWebSite_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactWebSite_type_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/ContactWebSite_url_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactArraySuccessCallback_onsuccess.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactEmailAddress_emails_types.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactManagerObject_attri_contact.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_NULL.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getDefaultAddressBook.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ContactPhoneNumber_attri_number_types.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_addressBookId_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_addresses_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_anniversaries_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_attributeType_check.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_attribute_byDefault.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_birthday_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_clone.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_clone_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_clone_extra_argument.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_constructor_ContactInit.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_constructor_VCARD.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_convertToString.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_convertToString_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_convertToString_format_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_format.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_null.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_one.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_emails_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_groupIds_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_id_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_not_nullable.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_lastUpdated_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_messageAlertURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_messengers_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_name_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_notes_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_organizations_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_personId_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_phoneNumbers_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_photoURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_relationships_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_ringtoneURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_urls_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Contact_vibrationURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Makefile.am create mode 100644 mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_onsuccess.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_contactCount_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_displayContactId_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_displayName_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_extend.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_getUsageCount.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_type_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_with_type.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_hasEmail_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_hasPhoneNumber_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_id_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_isFavorite_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_link.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_link_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_link_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_link_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_link_personId_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_photoURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_type_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_with_type.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_ringtoneURI_attribute.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_unlink.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_unlink_TypeMismatch.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_unlink_contactId_invalid.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_unlink_exist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/Person_unlink_misarg.html create mode 100644 mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_notexist.html create mode 100644 mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsadded.html create mode 100644 mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsremoved.html create mode 100644 mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsupdated.html create mode 100644 mobile/tct-contact-tizen-tests/contact/support/Makefile.am create mode 100644 mobile/tct-contact-tizen-tests/contact/support/contact_common.js create mode 100644 mobile/tct-contact-tizen-tests/contact/support/getJsonConf.js create mode 100644 mobile/tct-contact-tizen-tests/contact/support/tizen_contact_data_generators.js create mode 100644 mobile/tct-contact-tizen-tests/contact/support/unitcommon.js create mode 100644 mobile/tct-contact-tizen-tests/icon.png create mode 100644 mobile/tct-contact-tizen-tests/inst.apk.py create mode 100644 mobile/tct-contact-tizen-tests/inst.wgt.py create mode 100644 mobile/tct-contact-tizen-tests/inst.xpk.py create mode 100644 mobile/tct-contact-tizen-tests/manifest.json create mode 100644 mobile/tct-contact-tizen-tests/pack.py create mode 100644 mobile/tct-contact-tizen-tests/resources/COPYING create mode 100644 mobile/tct-contact-tizen-tests/resources/testharness.css create mode 100644 mobile/tct-contact-tizen-tests/resources/testharness.js create mode 100644 mobile/tct-contact-tizen-tests/resources/testharnessreport.js create mode 100644 mobile/tct-contact-tizen-tests/suite.json create mode 100644 mobile/tct-contact-tizen-tests/testcase.xsl create mode 100644 mobile/tct-contact-tizen-tests/testresult.xsl create mode 100644 mobile/tct-contact-tizen-tests/tests.bak.xml create mode 100644 mobile/tct-contact-tizen-tests/tests.css create mode 100644 mobile/tct-contact-tizen-tests/tests.full.xml create mode 100644 mobile/tct-contact-tizen-tests/tests.xml create mode 100644 mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_image1.png create mode 100644 mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_image2.png create mode 100644 mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_ring1.mp3 create mode 100644 mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_ring2.mp3 create mode 100644 mobile/tct-contact-tizen-tests/webrunner/index.html create mode 100644 mobile/tct-contact-tizen-tests/webrunner/jquery-1.10.2.min.js create mode 100644 mobile/tct-contact-tizen-tests/webrunner/testrunner.js diff --git a/mobile/tct-contact-tizen-tests/COPYING b/mobile/tct-contact-tizen-tests/COPYING new file mode 100644 index 000000000..7d06b324c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/COPYING @@ -0,0 +1,24 @@ +Copyright (c) 2012 Intel Corporation. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of works must retain the original copyright notice, this list + of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the original copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of Intel Corporation nor the names of its contributors + may be used to endorse or promote products derived from this work without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/mobile/tct-contact-tizen-tests/LICENSE.Apache-2.0 b/mobile/tct-contact-tizen-tests/LICENSE.Apache-2.0 new file mode 100644 index 000000000..d64569567 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/LICENSE.Apache-2.0 @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/mobile/tct-contact-tizen-tests/LICENSE.CC-BY-3.0 b/mobile/tct-contact-tizen-tests/LICENSE.CC-BY-3.0 new file mode 100644 index 000000000..67323bd5a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/LICENSE.CC-BY-3.0 @@ -0,0 +1,295 @@ +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. +DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. +CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS +MAKES NO WARRANTIES REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR +DAMAGES RESULTING FROM ITS USE. + +License +THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS +PUBLIC LICENSE("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR +OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE +OR COPYRIGHT LAW IS PROHIBITED. + +BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND +BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED +TO BE A CONTRACT, +THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR +ACCEPTANCE OF SUCH TERMS AND CONDITIONS. + +1. Definitions + +a."Adaptation" means a work based upon the Work, or upon the Work and +other pre-existing works, such as a translation, adaptation, derivative work, +arrangement of music or other alterations of a literary or artistic work, +or phonogram or performance and includes cinematographic adaptations +or any other form in which the Work may be recast, +transformed, or adapted including in any form recognizably derived from +the original, +except that a work that constitutes a Collection will not be considered +an Adaptation for the purpose of this License. +For the avoidance of doubt, where the Work is a musical work, performance +or phonogram, the synchronization of the Work in timed-relation with a moving +image ("synching") will be considered an Adaptation for the purpose of this License. +b."Collection" means a collection of literary or artistic works, +such as encyclopedias and anthologies, or performances, +phonograms or broadcasts, or other works or subject matter other than +works listed in Section 1(f) below, which, by reason of the selection +and arrangement of their contents, constitute intellectual creations, +in which the Work is included in its entirety in unmodified form +along with one or more other contributions, each constituting separate +and independent works in themselves, which together are assembled into +a collective whole. +A work that constitutes a Collection will not be considered an Adaptation +(as defined above) for the purposes of this License. +c."Distribute" means to make available to the public the original and +copies of the Work or Adaptation, as appropriate, through sale or +other transfer of ownership. +d."Licensor" means the individual, individuals, entity or entities that offer(s) +the Work under the terms of this License. +e."Original Author" means, in the case of a literary or artistic work, +the individual, individuals, +entity or entities who created the Work or if no individual or entity can be identified, +the publisher; and in addition +(i) in the case of a performance the actors, singers, musicians, dancers, +and other persons who act, sing, deliver, declaim, play in, interpret or +otherwise perform literary or artistic works or expressions of folklore; +(ii) in the case of a phonogram the producer being the person or legal entity +who first fixes the sounds of a performance or other sounds; and, +(iii) in the case of broadcasts, the organization that transmits the broadcast. +f."Work" means the literary and/or artistic work offered under the terms +of this License including without limitation any production in the literary, +scientific and artistic domain, whatever may be the mode or form of its expression +including digital form, such as a book, pamphlet and other writing; a lecture, +address, sermon or other work of the same nature; a dramatic or dramatico-musical work; +a choreographic work or entertainment in dumb show; +a musical composition with or without words; a cinematographic work to which +are assimilated works expressed by a process analogous to cinematography; +a work of drawing, painting, architecture, sculpture, engraving or lithography; +a photographic work to which are assimilated works expressed by a process analogous +to photography; a work of applied art; an illustration, map, plan, sketch or +three-dimensional work relative to geography, topography, architecture or science; +a performance; a broadcast; a phonogram; a compilation of data to the extent it +is protected as a copyrightable work; or a work performed by a variety or +circus performer to the extent it is not otherwise considered a literary or artistic work. +g."You" means an individual or entity exercising rights under this License +who has not previously violated the terms of this License with respect to the Work, +or who has received express permission from the Licensor to exercise rights +under this License despite a previous violation. +h."Publicly Perform" means to perform public recitations of the Work and to +communicate to the public those public recitations, by any means or process, +including by wire or wireless means or public digital performances; +to make available to the public Works in such a way that members of the public +may access these Works from a place and at a place individually chosen by them; +to perform the Work to the public by any means or process and the communication +to the public of the performances of the Work, including by public digital performance; +to broadcast and rebroadcast the Work by any means including signs, sounds or images. +i."Reproduce" means to make copies of the Work by any means including without +limitation by sound or visual recordings and the right of fixation and +reproducing fixations of the Work, including storage of a protected performance +or phonogram in digital form or other electronic medium. + +2. Fair Dealing Rights. Nothing in this License is intended to reduce, limit, +or restrict any uses free from copyright or rights arising from limitations or +exceptions that are provided for in connection with the copyright protection +under copyright law or other applicable laws. + +3. License Grant. Subject to the terms and conditions of this License, +Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual +(for the duration of the applicable copyright) license to exercise the rights +in the Work as stated below: + +a.to Reproduce the Work, to incorporate the Work into one or more Collections, +and to Reproduce the Work as incorporated in the Collections; +b.to create and Reproduce Adaptations provided that any such Adaptation, +including any translation in any medium, takes reasonable steps to clearly label, +demarcate or otherwise identify that changes were made to the original Work. +For example, a translation could be marked "The original work was translated +from English to Spanish," or a modification could indicate +"The original work has been modified."; +c.to Distribute and Publicly Perform the Work including as incorporated +in Collections; and, +d.to Distribute and Publicly Perform Adaptations. +e.For the avoidance of doubt: + +i.Non-waivable Compulsory License Schemes. In those jurisdictions in which +the right to collect royalties through any statutory or compulsory licensing +scheme cannot be waived, the Licensor reserves the exclusive right to collect +such royalties for any exercise by You of the rights granted under this License; +ii.Waivable Compulsory License Schemes. In those jurisdictions in which the right +to collect royalties through any statutory or compulsory licensing scheme can be waived, +the Licensor waives the exclusive right to collect such royalties for any exercise +by You of the rights granted under this License; and, +iii.Voluntary License Schemes. The Licensor waives the right to collect royalties, +whether individually or, in the event that the Licensor is a member of a collecting +society that administers voluntary licensing schemes, via that society, +from any exercise by You of the rights granted under this License. +The above rights may be exercised in all media and formats whether now known +or hereafter devised. The above rights include the right to make such modifications +as are technically necessary to exercise the rights in other media and formats. +Subject to Section 8(f), all rights not expressly granted by Licensor +are hereby reserved. + +4. Restrictions. The license granted in Section 3 above is expressly made +subject to and limited by the following restrictions: + +a.You may Distribute or Publicly Perform the Work only under the terms of +this License. You must include a copy of, or the Uniform Resource Identifier (URI) +for, this License with every copy of the Work You Distribute or Publicly Perform. +You may not offer or impose any terms on the Work that restrict the terms of +this License or the ability of the recipient of the Work to exercise +the rights granted to that recipient under the terms of the License. +You may not sublicense the Work. You must keep intact all notices that refer +to this License and to the disclaimer of warranties with every copy of +the Work You Distribute or Publicly Perform. +When You Distribute or Publicly Perform the Work, +You may not impose any effective technological measures on the Work +that restrict the ability of a recipient of the Work from You to exercise +the rights granted to that recipient under the terms of the License. +This Section 4(a) applies to the Work as incorporated in a Collection, +but this does not require the Collection apart from the Work itself +to be made subject to the terms of this License. +If You create a Collection, upon notice from any Licensor You must, +to the extent practicable, remove from the Collection any credit +as required by Section 4(b), as requested. If You create an Adaptation, +upon notice from any Licensor You must, to the extent practicable, +remove from the Adaptation any credit as required by Section 4(b), +as requested. b.If You Distribute, or Publicly Perform the Work or +any Adaptations or Collections, You must, unless a request has been made +pursuant to Section 4(a), keep intact all copyright notices for the Work +and provide, reasonable to the medium or means You are utilizing: +(i) the name of the Original Author (or pseudonym, if applicable) +if supplied, and/or if the Original Author and/or Licensor designate +another party or parties (e.g., a sponsor institute, publishing entity, journal) +for attribution ("Attribution Parties") in Licensor's copyright notice, +terms of service or by other reasonable means, +the name of such party or parties; (ii) the title of the Work if supplied; +(iii) to the extent reasonably practicable, the URI, if any, +that Licensor specifies to be associated with the Work, +unless such URI does not refer to the copyright notice or licensing information +for the Work; and (iv) , consistent with Section 3(b), +in the case of an Adaptation, +a credit identifying the use of the Work in the Adaptation +(e.g., "French translation of the Work by Original Author," or +"Screenplay based on original Work by Original Author"). +The credit required by this Section 4(b) may be implemented +in any reasonable manner; provided, however, that in the case of +a Adaptation or Collection, at a minimum such credit will appear, +if a credit for all contributing authors of the Adaptation or Collection appears, +then as part of these credits and in a manner at least as prominent +as the credits for the other contributing authors. +For the avoidance of doubt, You may only use the credit required by this Section +for the purpose of attribution in the manner set out above and, +by exercising Your rights under this License, You may not implicitly +or explicitly assert or imply any connection with, sponsorship or +endorsement by the Original Author, Licensor and/or Attribution Parties, +as appropriate, of You or Your use of the Work, without the separate, +express prior written permission of the Original Author, +Licensor and/or Attribution Parties. +c.Except as otherwise agreed in writing by the Licensor or as may be otherwise +permitted by applicable law, if You Reproduce, Distribute or Publicly Perform +the Work either by itself or as part of any Adaptations or Collections, +You must not distort, mutilate, modify or take other derogatory action +in relation to the Work which would be prejudicial to the Original Author's honor +or reputation. Licensor agrees that in those jurisdictions (e.g. Japan), +in which any exercise of the right granted in Section 3(b) of this License +(the right to make Adaptations) would be deemed to be a distortion, +mutilation, modification or other derogatory action prejudicial to +the Original Author's honor and reputation, the Licensor will waive or +not assert, as appropriate, this Section, to the fullest extent permitted +by the applicable national law, to enable You to reasonably exercise +Your right under Section 3(b) of this License (right to make Adaptations) +but not otherwise. + +5. Representations, Warranties and Disclaimer + +UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, +LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES +OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, +INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, +FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT +OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, +WHETHER OR NOT DISCOVERABLE. +SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, +SO SUCH EXCLUSION MAY NOT APPLY TO YOU. + +6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, +IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY +FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES +ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, +EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. Termination + +a.This License and the rights granted hereunder will terminate automatically +upon any breach by You of the terms of this License. +Individuals or entities who have received Adaptations or Collections +from You under this License, however, +will not have their licenses terminated provided such individuals or entities +remain in full compliance with those licenses. +Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License. +b.Subject to the above terms and conditions, the license granted here is +perpetual (for the duration of the applicable copyright in the Work). +Notwithstanding the above, Licensor reserves the right to release the Work +under different license terms or to stop distributing the Work at any time; +provided, however that any such election will not serve to withdraw +this License (or any other license that has been, or is required to be, +granted under the terms of this License), +and this License will continue in full force and effect unless terminated +as stated above. + +8. Miscellaneous + +a.Each time You Distribute or Publicly Perform the Work or a Collection, +the Licensor offers to the recipient a license to the Work on the same terms +and conditions as the license granted to You under this License. +b.Each time You Distribute or Publicly Perform an Adaptation, +Licensor offers to the recipient a license to the original Work on the same terms +and conditions as the license granted to You under this License. +c.If any provision of this License is invalid or unenforceable +under applicable law, it shall not affect the validity or enforceability +of the remainder of the terms of this License, and without further action +by the parties to this agreement, such provision shall be reformed +to the minimum extent necessary to make such provision valid and enforceable. +d.No term or provision of this License shall be deemed waived and +no breach consented to unless such waiver or consent shall be in writing +and signed by the party to be charged with such waiver or consent. +e.This License constitutes the entire agreement between the parties +with respect to the Work licensed here. There are no understandings, +agreements or representations with respect to the Work not specified here. +Licensor shall not be bound by any additional provisions that may appear +in any communication from You. This License may not be modified +without the mutual written agreement of the Licensor and You. +f.The rights granted under, and the subject matter referenced, +in this License were drafted utilizing the terminology of the Berne Convention +for the Protection of Literary and Artistic Works (as amended on September 28, 1979), +the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, +the WIPO Performances and Phonograms Treaty of 1996 +and the Universal Copyright Convention (as revised on July 24, 1971). +These rights and subject matter take effect in the relevant jurisdiction +in which the License terms are sought to be enforced according to +the corresponding provisions of the implementation of those treaty provisions +in the applicable national law. If the standard suite of rights granted +under applicable copyright law includes additional rights not granted +under this License, such additional rights are deemed to be included in the License; +this License is not intended to restrict the license of any rights under applicable law. +Creative Commons Notice +Creative Commons is not a party to this License, and makes no warranty +whatsoever in connection with the Work. Creative Commons will not be liable to +You or any party on any legal theory for any damages whatsoever, +including without limitation any general, special, incidental +or consequential damages arising in connection to this license. +Notwithstanding the foregoing two (2) sentences, +if Creative Commons has expressly identified itself as the Licensor hereunder, +it shall have all rights and obligations of Licensor. + +Except for the limited purpose of indicating to the public +that the Work is licensed under the CCPL, Creative Commons does not authorize +the use by either party of the trademark "Creative Commons" or any related trademark +or logo of Creative Commons without the prior written consent of Creative Commons. +Any permitted use will be in compliance with Creative Commons' +then-current trademark usage guidelines, as may be published on its website +or otherwise made available upon request from time to time. +For the avoidance of doubt, this trademark restriction does not form part +of this License. + +Creative Commons may be contacted at http://creativecommons.org/. diff --git a/mobile/tct-contact-tizen-tests/NOTICE b/mobile/tct-contact-tizen-tests/NOTICE new file mode 100644 index 000000000..7b9a56383 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/NOTICE @@ -0,0 +1,15 @@ +Copyright (c) 2014 Samsung Electronics Co., Ltd. All rights reserved. +Copyright (c) 2014 Intel Corporation. +Except as noted, this software is licensed under Apache License, Version 2 or BSD-3-Clause License. +Please, see the LICENSE.Apache-2.0 file for Apache License, Version 2 terms and conditions +or the COPYING file for BSD-3-Clause License. + +Following resources are licensed under its own license. + +webapi-tizen-contact-test_image1.png, +webapi-tizen-contact-test_image2.png, +webapi-tizen-contact-test_ring1.mp3, +webapi-tizen-contact-test_ring2.mp3: +Copyright (c) 2012 Samsung Electronics Co., Ltd. All right reserved. +The above resource files are licensed under Creative Commons Attribution 3.0. +Please see the LICENSE.CC-BY-3.0 for Creative Commons Attribution 3.0 terms and conditions. diff --git a/mobile/tct-contact-tizen-tests/README b/mobile/tct-contact-tizen-tests/README new file mode 100644 index 000000000..8c9fb7a49 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/README @@ -0,0 +1,70 @@ +---------------------------------------------- +License +---------------------------------------------- +Copyright (c) 2012 Intel Corporation. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of works must retain the original copyright notice, this list + of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the original copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of Intel Corporation nor the names of its contributors + may be used to endorse or promote products derived from this work without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Authors: + Li, Cici + Tomasz Paciorek + + + +---------------------------------------------- +Introduction +---------------------------------------------- +This test suite is for testing Tizen Contact API, which covers the following specifications: +https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + + +---------------------------------------------- +Test Environment +---------------------------------------------- +1. Testkit-stub must be installed on target device. +2. Testkit-lite must be installed on test machine. + + +---------------------------------------------- +Build and Run +---------------------------------------------- +(Suppose you only get the source code and Testkit-Lite has been set up on your test machine. + If you have got tct-contact-tizen-tests ZIP packages, you can directly go to step 3 on the test machine; + if you have not installed Testkit-lite, you need to install the latest version.) + +Steps: +1. Prepare for building by running the following command: + cd tct-contact-tizen-tests + +2. Build ZIP package by running the following command: + ./pack.sh + +3. Unzip the package on the test machine by running the following command: + unzip -o tct-contact-tizen-tests-.zip -d /home/owner/share/tct + +4. Install the package on the test machine by running the following command: + /home/owner/share/tct/opt/tct-contact-tizen-tests/inst.sh + +5. Run test cases by running the following command on host: + testkit-lite -f device:/home/owner/share/tct/opt/tct-contact-tizen-tests/tests.xml -e "WRTLauncher" -o tct-contact-tizen-tests.results.xml diff --git a/mobile/tct-contact-tizen-tests/config.xml b/mobile/tct-contact-tizen-tests/config.xml new file mode 100644 index 000000000..87b172ed7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/config.xml @@ -0,0 +1,12 @@ + + + tct-contact-tizen-tests + + + + + + + + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_notexist.html b/mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_notexist.html new file mode 100644 index 000000000..c4e5b1753 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_notexist.html @@ -0,0 +1,43 @@ + + + + +AddressBookArraySuccessCallback_notexist + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_onsuccess.html b/mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_onsuccess.html new file mode 100644 index 000000000..c3bae83ce --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_onsuccess.html @@ -0,0 +1,57 @@ + + + + +AddressBookArraySuccessCallback_onsuccess + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_notexist.html b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_notexist.html new file mode 100644 index 000000000..45b599688 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_notexist.html @@ -0,0 +1,44 @@ + + + + +AddressBookChangeCallback_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsadded.html b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsadded.html new file mode 100644 index 000000000..fdac1ce63 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsadded.html @@ -0,0 +1,87 @@ + + + + +AddressBookChangeCallback_oncontactsadded + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsremoved.html b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsremoved.html new file mode 100644 index 000000000..7c6692c9a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsremoved.html @@ -0,0 +1,85 @@ + + + + +AddressBookChangeCallback_oncontactsremoved + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsupdated.html b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsupdated.html new file mode 100644 index 000000000..a881c2515 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsupdated.html @@ -0,0 +1,90 @@ + + + + +AddressBookChangeCallback_oncontactsupdated + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_AccountId_attribute.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_AccountId_attribute.html new file mode 100644 index 000000000..8773b7744 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_AccountId_attribute.html @@ -0,0 +1,49 @@ + + + + +AddressBook_AccountId_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_ArraySuccessCallback_notexist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_ArraySuccessCallback_notexist.html new file mode 100644 index 000000000..f5acf8f0b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_ArraySuccessCallback_notexist.html @@ -0,0 +1,44 @@ + + + + +AddressBook_ArraySuccessCallback_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add.html new file mode 100644 index 000000000..0dc7f271a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add.html @@ -0,0 +1,66 @@ + + + + +AddressBook_add + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch.html new file mode 100644 index 000000000..8f2ccc0e5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch.html @@ -0,0 +1,72 @@ + + + + +AddressBook_addBatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_contacts_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_contacts_TypeMismatch.html new file mode 100644 index 000000000..c1440d2ee --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_contacts_TypeMismatch.html @@ -0,0 +1,59 @@ + + + + + +AddressBook_addBatch_contacts_TypeMismatch + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..0b9ec2d34 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_TypeMismatch.html @@ -0,0 +1,80 @@ + + + + + +AddressBook_addBatch_errorCallback_TypeMismatch + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invalid_cb.html new file mode 100644 index 000000000..f0855d10c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invalid_cb.html @@ -0,0 +1,78 @@ + + + + + +AddressBook_addBatch_errorCallback_invalid_cb + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invoked.html new file mode 100644 index 000000000..49b44d40e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invoked.html @@ -0,0 +1,74 @@ + + + + +AddressBook_addBatch_errorCallback_invoked + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_exist.html new file mode 100644 index 000000000..d42090363 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_exist.html @@ -0,0 +1,46 @@ + + + + +AddressBook_addBatch_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_missarg.html new file mode 100644 index 000000000..396d44e5d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_missarg.html @@ -0,0 +1,52 @@ + + + + + +AddressBook_addBatch_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_one_missNull.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_one_missNull.html new file mode 100644 index 000000000..17670c681 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_one_missNull.html @@ -0,0 +1,81 @@ + + + + +AddressBook_addBatch_one_missNull + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_TypeMismatch.html new file mode 100644 index 000000000..40b3eaf07 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_TypeMismatch.html @@ -0,0 +1,77 @@ + + + + + +AddressBook_addBatch_successCallback_TypeMismatch + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_invalid_cb.html new file mode 100644 index 000000000..a872ce295 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_invalid_cb.html @@ -0,0 +1,76 @@ + + + + + +AddressBook_addBatch_successCallback_invalid_cb + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_bothNull.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_bothNull.html new file mode 100644 index 000000000..683c50a05 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_bothNull.html @@ -0,0 +1,93 @@ + + + + +AddressBook_addBatch_two_bothNull + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_oneIsNull.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_oneIsNull.html new file mode 100644 index 000000000..8df4055b1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_oneIsNull.html @@ -0,0 +1,82 @@ + + + + +AddressBook_addBatch_two_oneIsNull + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_errorCallback.html new file mode 100644 index 000000000..41363b6d9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_errorCallback.html @@ -0,0 +1,79 @@ + + + + + +AddressBook_addBatch_with_errorCallback + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_successCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_successCallback.html new file mode 100644 index 000000000..e3655a4be --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_successCallback.html @@ -0,0 +1,85 @@ + + + + + +AddressBook_addBatch_with_successCallback + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener.html new file mode 100644 index 000000000..942b53899 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener.html @@ -0,0 +1,71 @@ + + + + +AddressBook_addChangeListener + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..167a1de68 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_TypeMismatch.html @@ -0,0 +1,69 @@ + + + + +AddressBook_addChangeListener_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_invalid_cb.html new file mode 100644 index 000000000..77eca04cc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_invalid_cb.html @@ -0,0 +1,67 @@ + + + + +AddressBook_addChangeListener_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_exist.html new file mode 100644 index 000000000..59308a4d8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_exist.html @@ -0,0 +1,46 @@ + + + + +AddressBook_addChangeListener_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_missarg.html new file mode 100644 index 000000000..3b2a3497f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_missarg.html @@ -0,0 +1,54 @@ + + + + + +AddressBook_addChangeListener_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_TypeMismatch.html new file mode 100644 index 000000000..514bf074f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_TypeMismatch.html @@ -0,0 +1,56 @@ + + + + +AddressBook_addChangeListener_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_invalid_cb.html new file mode 100644 index 000000000..3590bed63 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_invalid_cb.html @@ -0,0 +1,56 @@ + + + + +AddressBook_addChangeListener_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_with_errorCallback.html new file mode 100644 index 000000000..0d8a88515 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_with_errorCallback.html @@ -0,0 +1,60 @@ + + + + +AddressBook_addChangeListener_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup.html new file mode 100644 index 000000000..4ab836800 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup.html @@ -0,0 +1,51 @@ + + + + +AddressBook_addGroup + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_exist.html new file mode 100644 index 000000000..e1b44b04f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_exist.html @@ -0,0 +1,46 @@ + + + + +AddressBook_addGroup_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_TypeMismatch.html new file mode 100644 index 000000000..094e12f1e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_TypeMismatch.html @@ -0,0 +1,56 @@ + + + + +AddressBook_addGroup_group_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_invalid_obj.html new file mode 100644 index 000000000..68902b923 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_invalid_obj.html @@ -0,0 +1,52 @@ + + + + +AddressBook_addGroup_group_invalid_obj + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_missarg.html new file mode 100644 index 000000000..1811edb65 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_addGroup_missarg.html @@ -0,0 +1,52 @@ + + + + + +AddressBook_addGroup_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_fullSet.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_fullSet.html new file mode 100644 index 000000000..bc540bf71 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_fullSet.html @@ -0,0 +1,89 @@ + + + + +AddressBook_add_addressesField_fullSet + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_multiple_type.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_multiple_type.html new file mode 100644 index 000000000..356affb5e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_multiple_type.html @@ -0,0 +1,96 @@ + + + + +AddressBook_add_addressesField_multiple_type + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_partSet.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_partSet.html new file mode 100644 index 000000000..4983a13a9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_partSet.html @@ -0,0 +1,76 @@ + + + + +AddressBook_add_addressesField_partSet + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_anniversaries_multiple.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_anniversaries_multiple.html new file mode 100644 index 000000000..0e8cc8c79 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_anniversaries_multiple.html @@ -0,0 +1,84 @@ + + + + +AddressBook_add_anniversaries_multiple + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_TypeMismatch.html new file mode 100644 index 000000000..d67df4070 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_TypeMismatch.html @@ -0,0 +1,60 @@ + + + + + +AddressBook_add_contact_TypeMismatch + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_invalid_obj.html new file mode 100644 index 000000000..5f4818c2f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_contact_invalid_obj.html @@ -0,0 +1,63 @@ + + + + + +AddressBook_add_contact_invalid_obj + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_emailsField_multiple.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_emailsField_multiple.html new file mode 100644 index 000000000..cb574caa7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_emailsField_multiple.html @@ -0,0 +1,88 @@ + + + + +AddressBook_add_emailsField_multiple + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_exist.html new file mode 100644 index 000000000..bdaf5a9e2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_add_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_get_remove.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_get_remove.html new file mode 100644 index 000000000..8a7ea033d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_get_remove.html @@ -0,0 +1,74 @@ + + + + +AddressBook_add_get_remove + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_missarg.html new file mode 100644 index 000000000..9ef35b37e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_missarg.html @@ -0,0 +1,52 @@ + + + + + +AddressBook_add_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_fullSet.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_fullSet.html new file mode 100644 index 000000000..376f06dc7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_fullSet.html @@ -0,0 +1,74 @@ + + + + +AddressBook_add_nameField_fullSet + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_partSet.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_partSet.html new file mode 100644 index 000000000..18a31253a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_nameField_partSet.html @@ -0,0 +1,67 @@ + + + + +AddressBook_add_nameField_partSet + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_notes_multiple.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_notes_multiple.html new file mode 100644 index 000000000..3b9241789 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_notes_multiple.html @@ -0,0 +1,64 @@ + + + + +AddressBook_add_notes_multiple + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_null.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_null.html new file mode 100644 index 000000000..7b9563255 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_null.html @@ -0,0 +1,69 @@ + + + + +AddressBook_add_null + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_phoneNumbersField_multiple.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_phoneNumbersField_multiple.html new file mode 100644 index 000000000..77940ea66 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_phoneNumbersField_multiple.html @@ -0,0 +1,69 @@ + + + + +AddressBook_add_phoneNumbersField_multiple + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_add_remove_get.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_remove_get.html new file mode 100644 index 000000000..c4555e146 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_add_remove_get.html @@ -0,0 +1,69 @@ + + + + +AddressBook_add_remove_get + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_constructor.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_constructor.html new file mode 100644 index 000000000..09ac1eec2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_constructor.html @@ -0,0 +1,60 @@ + + + + + +AddressBook_constructor + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_exist.html new file mode 100644 index 000000000..e88ccdeff --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_exist.html @@ -0,0 +1,43 @@ + + + + +AddressBook_exist + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_extend.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_extend.html new file mode 100644 index 000000000..759be6ed2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_extend.html @@ -0,0 +1,48 @@ + + + + + +AddressBook_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find.html new file mode 100644 index 000000000..6ab89b751 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find.html @@ -0,0 +1,66 @@ + + + + +AddressBook_find + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..b3dd19623 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_TypeMismatch.html @@ -0,0 +1,60 @@ + + + + +AddressBook_find_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invalid_cb.html new file mode 100644 index 000000000..194201b98 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invalid_cb.html @@ -0,0 +1,59 @@ + + + + +AddressBook_find_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invoked.html new file mode 100644 index 000000000..1734b6a34 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invoked.html @@ -0,0 +1,72 @@ + + + + +AddressBook_find_errorCallback_invoked + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_exist.html new file mode 100644 index 000000000..95eb23ba3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_exist.html @@ -0,0 +1,46 @@ + + + + +AddressBook_find_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_TypeMismatch.html new file mode 100644 index 000000000..c92fcce07 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_TypeMismatch.html @@ -0,0 +1,63 @@ + + + + +AddressBook_find_filter_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_invalid_obj.html new file mode 100644 index 000000000..4c512138f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_filter_invalid_obj.html @@ -0,0 +1,64 @@ + + + + +AddressBook_find_filter_invalid_obj + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_missarg.html new file mode 100644 index 000000000..220bddece --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_missarg.html @@ -0,0 +1,52 @@ + + + + + +AddressBook_find_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_TypeMismatch.html new file mode 100644 index 000000000..4f9925d8f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_TypeMismatch.html @@ -0,0 +1,64 @@ + + + + +AddressBook_find_sortMode_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_invalid_obj.html new file mode 100644 index 000000000..26c540fcf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_invalid_obj.html @@ -0,0 +1,64 @@ + + + + +AddressBook_find_sortMode_invalid_obj + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_TypeMismatch.html new file mode 100644 index 000000000..53561c4ab --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_TypeMismatch.html @@ -0,0 +1,55 @@ + + + + +AddressBook_find_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_invalid_cb.html new file mode 100644 index 000000000..2e1880ada --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_invalid_cb.html @@ -0,0 +1,56 @@ + + + + +AddressBook_find_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_errorCallback.html new file mode 100644 index 000000000..ee3b86766 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_errorCallback.html @@ -0,0 +1,68 @@ + + + + +AddressBook_find_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_filter.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_filter.html new file mode 100644 index 000000000..2c85380ff --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_filter.html @@ -0,0 +1,77 @@ + + + + +AddressBook_find_with_filter + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_sortMode.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_sortMode.html new file mode 100644 index 000000000..53d680e44 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_find_with_sortMode.html @@ -0,0 +1,70 @@ + + + + +AddressBook_find_with_sortMode + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_get.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_get.html new file mode 100644 index 000000000..64a3d0ebf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_get.html @@ -0,0 +1,71 @@ + + + + +AddressBook_get + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup.html new file mode 100644 index 000000000..7ad2d77bb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup.html @@ -0,0 +1,52 @@ + + + + +AddressBook_getGroup + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_constructor.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_constructor.html new file mode 100644 index 000000000..fe7fe8896 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_constructor.html @@ -0,0 +1,60 @@ + + + + + +AddressBook_getGroup_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_exist.html new file mode 100644 index 000000000..1f0618422 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_getGroup_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_TypeMismatch.html new file mode 100644 index 000000000..a4f25be5a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +AddressBook_getGroup_groupId_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_invalid.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_invalid.html new file mode 100644 index 000000000..9f665fae9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_invalid.html @@ -0,0 +1,51 @@ + + + + +AddressBook_getGroup_groupId_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_invalid_argument.html new file mode 100644 index 000000000..1fc29034c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_invalid_argument.html @@ -0,0 +1,51 @@ + + + + +AddressBook_getGroup_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_misarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_misarg.html new file mode 100644 index 000000000..efe4db4bc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroup_misarg.html @@ -0,0 +1,48 @@ + + + + +AddressBook_getGroup_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups.html new file mode 100644 index 000000000..6866ed7d2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups.html @@ -0,0 +1,68 @@ + + + + +AddressBook_getGroups + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_exist.html new file mode 100644 index 000000000..d63ca24e1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_getGroups_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_extra_argument.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_extra_argument.html new file mode 100644 index 000000000..701d21975 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_getGroups_extra_argument.html @@ -0,0 +1,46 @@ + + + + +AddressBook_getGroups_extra_argument + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_get_check_fields.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_check_fields.html new file mode 100644 index 000000000..4c26bf050 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_check_fields.html @@ -0,0 +1,70 @@ + + + + + +AddressBook_get_check_fields + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_get_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_exist.html new file mode 100644 index 000000000..2eba81f07 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_get_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_TypeMismatch.html new file mode 100644 index 000000000..5c04586c5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +AddressBook_get_id_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_invalid.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_invalid.html new file mode 100644 index 000000000..f854298ad --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_id_invalid.html @@ -0,0 +1,63 @@ + + + + +AddressBook_get_id_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_get_misarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_misarg.html new file mode 100644 index 000000000..406583908 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_get_misarg.html @@ -0,0 +1,48 @@ + + + + +AddressBook_get_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_id_attribute.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_id_attribute.html new file mode 100644 index 000000000..97fa2aecc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_id_attribute.html @@ -0,0 +1,50 @@ + + + + +AddressBook_id_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_name_attribute.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_name_attribute.html new file mode 100644 index 000000000..ed6fbe2fa --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_name_attribute.html @@ -0,0 +1,51 @@ + + + + +AddressBook_name_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_readOnly_attribute.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_readOnly_attribute.html new file mode 100644 index 000000000..6d9d487e1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_readOnly_attribute.html @@ -0,0 +1,51 @@ + + + + +AddressBook_readOnly_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_remove.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove.html new file mode 100644 index 000000000..8c4134581 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove.html @@ -0,0 +1,68 @@ + + + + +AddressBook_remove + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch.html new file mode 100644 index 000000000..507286e37 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch.html @@ -0,0 +1,81 @@ + + + + +AddressBook_removeBatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..40693e4fd --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_TypeMismatch.html @@ -0,0 +1,82 @@ + + + + +AddressBook_removeBatch_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invalid_cb.html new file mode 100644 index 000000000..d625aa0d8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invalid_cb.html @@ -0,0 +1,80 @@ + + + + +AddressBook_removeBatch_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invoked.html new file mode 100644 index 000000000..a457f2991 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invoked.html @@ -0,0 +1,76 @@ + + + + +AddressBook_removeBatch_errorCallback_invoked + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_exist.html new file mode 100644 index 000000000..5d2cac77e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_removeBatch_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_ids_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_ids_TypeMismatch.html new file mode 100644 index 000000000..1b415c63b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_ids_TypeMismatch.html @@ -0,0 +1,57 @@ + + + + +AddressBook_removeBatch_ids_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_missarg.html new file mode 100644 index 000000000..68b2f7948 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_missarg.html @@ -0,0 +1,52 @@ + + + + + +AddressBook_removeBatch_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_TypeMismatch.html new file mode 100644 index 000000000..d982d02ed --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_TypeMismatch.html @@ -0,0 +1,78 @@ + + + + +AddressBook_removeBatch_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_invalid_cb.html new file mode 100644 index 000000000..efc07ea4f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_invalid_cb.html @@ -0,0 +1,78 @@ + + + + +AddressBook_removeBatch_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_errorCallback.html new file mode 100644 index 000000000..6b343911d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_errorCallback.html @@ -0,0 +1,76 @@ + + + + +AddressBook_removeBatch_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_successCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_successCallback.html new file mode 100644 index 000000000..25ce0d927 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_successCallback.html @@ -0,0 +1,73 @@ + + + + +AddressBook_removeBatch_with_successCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_without_successCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_without_successCallback.html new file mode 100644 index 000000000..812021b2a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeBatch_without_successCallback.html @@ -0,0 +1,99 @@ + + + + + +AddressBook_removeBatch_without_successCallback + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener.html new file mode 100644 index 000000000..384522c7f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener.html @@ -0,0 +1,62 @@ + + + + +AddressBook_removeChangeListener + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_exist.html new file mode 100644 index 000000000..e074c1252 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_removeChangeListener_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_misarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_misarg.html new file mode 100644 index 000000000..7f55e35f7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_misarg.html @@ -0,0 +1,48 @@ + + + + +AddressBook_removeChangeListener_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_TypeMismatch.html new file mode 100644 index 000000000..6d740a0f0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +AddressBook_removeChangeListener_watchId_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_invalid_argument.html new file mode 100644 index 000000000..b0692a840 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_invalid_argument.html @@ -0,0 +1,60 @@ + + + + +AddressBook_removeChangeListener_watchId_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup.html new file mode 100644 index 000000000..9a4278c92 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup.html @@ -0,0 +1,58 @@ + + + + + +AddressBook_removeGroup + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_exist.html new file mode 100644 index 000000000..3753f5d84 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_removeGroup_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_TypeMismatch.html new file mode 100644 index 000000000..567712335 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_TypeMismatch.html @@ -0,0 +1,54 @@ + + + + +AddressBook_removeGroup_groupId_TypeMismatch + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_invalid.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_invalid.html new file mode 100644 index 000000000..d159cbaba --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_invalid.html @@ -0,0 +1,52 @@ + + + + +AddressBook_removeGroup_groupId_invalid + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_invalid_argument.html new file mode 100644 index 000000000..f901421c5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_invalid_argument.html @@ -0,0 +1,52 @@ + + + + +AddressBook_removeGroup_invalid_argument + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_misarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_misarg.html new file mode 100644 index 000000000..b23e4a251 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_removeGroup_misarg.html @@ -0,0 +1,49 @@ + + + + +AddressBook_removeGroup_misarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_exist.html new file mode 100644 index 000000000..ced0358a8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_remove_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_TypeMismatch.html new file mode 100644 index 000000000..c4411e804 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +AddressBook_remove_id_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_invalid.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_invalid.html new file mode 100644 index 000000000..8dd4d908d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_id_invalid.html @@ -0,0 +1,63 @@ + + + + +AddressBook_remove_id_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_invalid_argument.html new file mode 100644 index 000000000..72e97ea11 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_invalid_argument.html @@ -0,0 +1,63 @@ + + + + +AddressBook_remove_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_misarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_misarg.html new file mode 100644 index 000000000..180d32c2c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_remove_misarg.html @@ -0,0 +1,48 @@ + + + + +AddressBook_remove_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_update.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_update.html new file mode 100644 index 000000000..8a4fd636e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_update.html @@ -0,0 +1,76 @@ + + + + +AddressBook_update + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch.html new file mode 100644 index 000000000..b49e23bbe --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch.html @@ -0,0 +1,91 @@ + + + + +AddressBook_updateBatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_contacts_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_contacts_TypeMismatch.html new file mode 100644 index 000000000..c11831c11 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_contacts_TypeMismatch.html @@ -0,0 +1,57 @@ + + + + +AddressBook_updateBatch_contacts_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..75991135f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_TypeMismatch.html @@ -0,0 +1,85 @@ + + + + +AddressBook_updateBatch_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invalid_cb.html new file mode 100644 index 000000000..37a87f32b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invalid_cb.html @@ -0,0 +1,83 @@ + + + + +AddressBook_updateBatch_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invoked.html new file mode 100644 index 000000000..ee98dcb50 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invoked.html @@ -0,0 +1,75 @@ + + + + +AddressBook_updateBatch_errorCallback_invoked + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_exist.html new file mode 100644 index 000000000..e995b5659 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_updateBatch_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_missarg.html new file mode 100644 index 000000000..154a0d19b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_missarg.html @@ -0,0 +1,53 @@ + + + + + +AddressBook_updateBatch_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_TypeMismatch.html new file mode 100644 index 000000000..a35cb53a0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_TypeMismatch.html @@ -0,0 +1,80 @@ + + + + +AddressBook_updateBatch_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_invalid_cb.html new file mode 100644 index 000000000..02f4ca749 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_invalid_cb.html @@ -0,0 +1,82 @@ + + + + +AddressBook_updateBatch_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_errorCallback.html new file mode 100644 index 000000000..668af98e1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_errorCallback.html @@ -0,0 +1,81 @@ + + + + +AddressBook_updateBatch_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_successCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_successCallback.html new file mode 100644 index 000000000..3b6ae192b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_successCallback.html @@ -0,0 +1,78 @@ + + + + +AddressBook_updateBatch_with_successCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_without_successCallback.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_without_successCallback.html new file mode 100644 index 000000000..00b9eea4a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateBatch_without_successCallback.html @@ -0,0 +1,61 @@ + + + + + +AddressBook_updateBatch_without_successCallback + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup.html new file mode 100644 index 000000000..4129bf08c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup.html @@ -0,0 +1,55 @@ + + + + +AddressBook_updateGroup + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_exist.html new file mode 100644 index 000000000..4fae80d8a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_updateGroup_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_TypeMismatch.html new file mode 100644 index 000000000..65e471718 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_TypeMismatch.html @@ -0,0 +1,57 @@ + + + + +AddressBook_updateGroup_group_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_invalid_obj.html new file mode 100644 index 000000000..c7a8fa3ec --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_invalid_obj.html @@ -0,0 +1,53 @@ + + + + +AddressBook_updateGroup_group_invalid_obj + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_invalid_argument.html new file mode 100644 index 000000000..1cf5d058f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_invalid_argument.html @@ -0,0 +1,53 @@ + + + + +AddressBook_updateGroup_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_missarg.html new file mode 100644 index 000000000..2b02b31b8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_missarg.html @@ -0,0 +1,53 @@ + + + + + +AddressBook_updateGroup_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_ringtoneURI.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_ringtoneURI.html new file mode 100644 index 000000000..e48eb35e0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_updateGroup_ringtoneURI.html @@ -0,0 +1,55 @@ + + + + + +AddressBook_updateGroup_ringtoneURI + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_TypeMismatch.html new file mode 100644 index 000000000..8402cda61 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_TypeMismatch.html @@ -0,0 +1,57 @@ + + + + +AddressBook_update_contact_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_invalid_obj.html new file mode 100644 index 000000000..861094f60 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_contact_invalid_obj.html @@ -0,0 +1,65 @@ + + + + + +AddressBook_update_contact_invalid_obj + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_update_exist.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_exist.html new file mode 100644 index 000000000..39df74065 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_exist.html @@ -0,0 +1,47 @@ + + + + +AddressBook_update_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_update_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_invalid_argument.html new file mode 100644 index 000000000..a529a532c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_invalid_argument.html @@ -0,0 +1,71 @@ + + + + +AddressBook_update_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/AddressBook_update_missarg.html b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_missarg.html new file mode 100644 index 000000000..4a528e46d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/AddressBook_update_missarg.html @@ -0,0 +1,53 @@ + + + + + +AddressBook_update_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddressInit_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactAddressInit_attributeType_check.html new file mode 100644 index 000000000..2a48bba45 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddressInit_attributeType_check.html @@ -0,0 +1,65 @@ + + + + +ContactAddressInit_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_additionalInformation_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_additionalInformation_attribute.html new file mode 100644 index 000000000..356a4abf9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_additionalInformation_attribute.html @@ -0,0 +1,59 @@ + + + + +ContactAddress_additionalInformation_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_attributeType_check.html new file mode 100644 index 000000000..a2a71579c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_attributeType_check.html @@ -0,0 +1,62 @@ + + + + +ContactAddress_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_attribute_byDefault.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_attribute_byDefault.html new file mode 100644 index 000000000..55d12775a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_attribute_byDefault.html @@ -0,0 +1,54 @@ + + + + +ContactAddress_attribute_byDefault + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_city_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_city_attribute.html new file mode 100644 index 000000000..4aa3442d9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_city_attribute.html @@ -0,0 +1,59 @@ + + + + +ContactAddress_city_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor.html new file mode 100644 index 000000000..4ee07cad2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor.html @@ -0,0 +1,54 @@ + + + + + +ContactAddress_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_ContactAddressInit.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_ContactAddressInit.html new file mode 100644 index 000000000..176bf3b6a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_ContactAddressInit.html @@ -0,0 +1,65 @@ + + + + +ContactAddress_constructor_ContactAddressInit + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_minargs.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_minargs.html new file mode 100644 index 000000000..d2c82b598 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_constructor_minargs.html @@ -0,0 +1,48 @@ + + + + +ContactAddress_constructor_minargs + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_country_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_country_attribute.html new file mode 100644 index 000000000..9a803a5eb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_country_attribute.html @@ -0,0 +1,59 @@ + + + + +ContactAddress_country_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_exist.html new file mode 100644 index 000000000..e1b42c83c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_exist.html @@ -0,0 +1,44 @@ + + + + +ContactAddress_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_extend.html new file mode 100644 index 000000000..84e3395df --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_extend.html @@ -0,0 +1,51 @@ + + + + + +ContactAddress_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_isDefault_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_isDefault_attribute.html new file mode 100644 index 000000000..40fc06158 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_isDefault_attribute.html @@ -0,0 +1,60 @@ + + + + +ContactAddress_isDefault_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_label_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_label_attribute.html new file mode 100644 index 000000000..b299f8590 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_label_attribute.html @@ -0,0 +1,61 @@ + + + + +ContactAddress_label_attribute + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_postalCode_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_postalCode_attribute.html new file mode 100644 index 000000000..3b053c322 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_postalCode_attribute.html @@ -0,0 +1,58 @@ + + + + +ContactAddress_postalCode_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_region_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_region_attribute.html new file mode 100644 index 000000000..2f4724db9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_region_attribute.html @@ -0,0 +1,58 @@ + + + + +ContactAddress_region_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_streetAddress_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_streetAddress_attribute.html new file mode 100644 index 000000000..6352e5b07 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_streetAddress_attribute.html @@ -0,0 +1,58 @@ + + + + +ContactAddress_streetAddress_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute.html new file mode 100644 index 000000000..8cf6341e9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute.html @@ -0,0 +1,64 @@ + + + + +ContactAddress_types_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_CUSTOM.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_CUSTOM.html new file mode 100644 index 000000000..e19a14cdc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_CUSTOM.html @@ -0,0 +1,60 @@ + + + + +ContactAddress_types_attribute_CUSTOM + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_OTHER.html b/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_OTHER.html new file mode 100644 index 000000000..669bd18f8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_OTHER.html @@ -0,0 +1,60 @@ + + + + +ContactAddress_types_attribute_OTHER + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor.html new file mode 100644 index 000000000..510cc237a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor.html @@ -0,0 +1,51 @@ + + + + + +ContactAnniversary_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor_minargs.html b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor_minargs.html new file mode 100644 index 000000000..e101f473d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_constructor_minargs.html @@ -0,0 +1,51 @@ + + + + + +ContactAnniversary_constructor_minargs + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_date_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_date_attribute.html new file mode 100644 index 000000000..9f020791c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_date_attribute.html @@ -0,0 +1,55 @@ + + + + + +ContactAnniversary_date_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_exist.html new file mode 100644 index 000000000..e68f767fa --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_exist.html @@ -0,0 +1,49 @@ + + + + + +ContactAnniversary_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_extend.html new file mode 100644 index 000000000..29c60fe91 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_extend.html @@ -0,0 +1,47 @@ + + + + + +ContactAnniversary_extend + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_label_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_label_attribute.html new file mode 100644 index 000000000..905719af8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactAnniversary_label_attribute.html @@ -0,0 +1,54 @@ + + + + + +ContactAnniversary_label_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_notexist.html b/mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_notexist.html new file mode 100644 index 000000000..f2291f403 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_notexist.html @@ -0,0 +1,44 @@ + + + + +ContactArraySuccessCallback_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_onsuccess.html b/mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_onsuccess.html new file mode 100644 index 000000000..328911b07 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_onsuccess.html @@ -0,0 +1,80 @@ + + + + +ContactArraySuccessCallback_onsuccess + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_attributeType_check.html new file mode 100644 index 000000000..84b833754 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_attributeType_check.html @@ -0,0 +1,48 @@ + + + + +ContactEmailAddress_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor.html new file mode 100644 index 000000000..aedfa1bb3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor.html @@ -0,0 +1,52 @@ + + + + + +ContactEmailAddress_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor_minargs.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor_minargs.html new file mode 100644 index 000000000..1ca148ae8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor_minargs.html @@ -0,0 +1,49 @@ + + + + +ContactEmailAddress_constructor_minargs + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_email_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_email_attribute.html new file mode 100644 index 000000000..196d7f552 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_email_attribute.html @@ -0,0 +1,52 @@ + + + + +ContactEmailAddress_email_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_exist.html new file mode 100644 index 000000000..2a959d761 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_exist.html @@ -0,0 +1,44 @@ + + + + +ContactEmailAddress_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_extend.html new file mode 100644 index 000000000..78741b532 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_extend.html @@ -0,0 +1,48 @@ + + + + + +ContactEmailAddress_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_isDefault_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_isDefault_attribute.html new file mode 100644 index 000000000..81935b914 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_isDefault_attribute.html @@ -0,0 +1,53 @@ + + + + +ContactEmailAddress_isDefault_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_label_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_label_attribute.html new file mode 100644 index 000000000..a1372e1c5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_label_attribute.html @@ -0,0 +1,50 @@ + + + + +ContactEmailAddress_label_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute.html new file mode 100644 index 000000000..6f90f5c00 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute.html @@ -0,0 +1,57 @@ + + + + +ContactEmailAddress_types_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_CUSTOM.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_CUSTOM.html new file mode 100644 index 000000000..8cbf49866 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_CUSTOM.html @@ -0,0 +1,48 @@ + + + + +ContactEmailAddress_types_attribute_CUSTOM + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_OTHER.html b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_OTHER.html new file mode 100644 index 000000000..bda1bd5d1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_OTHER.html @@ -0,0 +1,49 @@ + + + + +ContactEmailAddress_types_attribute_OTHER + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_data_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_data_attribute.html new file mode 100644 index 000000000..ce1a9cf83 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_data_attribute.html @@ -0,0 +1,76 @@ + + + + +ContactExtension_constructor_attribute + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_exist.html new file mode 100644 index 000000000..e51bca6b1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_exist.html @@ -0,0 +1,43 @@ + + + + +ContactExtension_constructor_exist + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_with_dictionary.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_with_dictionary.html new file mode 100644 index 000000000..68b88be4e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_with_dictionary.html @@ -0,0 +1,56 @@ + + + + +ContactExtension_constructor_with_dictionary + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_without_dictionary.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_without_dictionary.html new file mode 100644 index 000000000..986e65538 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_constructor_without_dictionary.html @@ -0,0 +1,56 @@ + + + + +ContactExtension_constructor_without_dictionary + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data10_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data10_attribute.html new file mode 100644 index 000000000..6bfd8cffd --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data10_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data10_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data11_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data11_attribute.html new file mode 100644 index 000000000..3909270d5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data11_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data11_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data12_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data12_attribute.html new file mode 100644 index 000000000..0f045f6d3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data12_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data12_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data1_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data1_attribute.html new file mode 100644 index 000000000..03dfc47f7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data1_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data1_attribute + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data2_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data2_attribute.html new file mode 100644 index 000000000..82aa307c8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data2_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data2_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data3_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data3_attribute.html new file mode 100644 index 000000000..a0eca3dfb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data3_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data3_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data4_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data4_attribute.html new file mode 100644 index 000000000..bc83a5536 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data4_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data4_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data5_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data5_attribute.html new file mode 100644 index 000000000..ca38f5867 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data5_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data5_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data6_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data6_attribute.html new file mode 100644 index 000000000..93b647f79 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data6_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data6_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data7_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data7_attribute.html new file mode 100644 index 000000000..2602e2adf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data7_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data7_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data8_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data8_attribute.html new file mode 100644 index 000000000..b7a38b2ba --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data8_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data8_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_data9_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data9_attribute.html new file mode 100644 index 000000000..7cad70996 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_data9_attribute.html @@ -0,0 +1,66 @@ + + + + +ContactExtension_data9_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactExtension_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactExtension_extend.html new file mode 100644 index 000000000..55972ee24 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactExtension_extend.html @@ -0,0 +1,43 @@ + + + + +ContactExtension_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_addressBookId_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_addressBookId_attribute.html new file mode 100644 index 000000000..666379cc8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_addressBookId_attribute.html @@ -0,0 +1,67 @@ + + + + +ContactGroup_addressBookId_attribute + + + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_attributeType_check.html new file mode 100644 index 000000000..6f58a9900 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_attributeType_check.html @@ -0,0 +1,49 @@ + + + + +ContactGroup_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_attribute_byDefault.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_attribute_byDefault.html new file mode 100644 index 000000000..9ac624c74 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_attribute_byDefault.html @@ -0,0 +1,49 @@ + + + + + +ContactGroup_attribute_byDefault + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_connstructor_minarg.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_connstructor_minarg.html new file mode 100644 index 000000000..2c4ae30e1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_connstructor_minarg.html @@ -0,0 +1,55 @@ + + + + + +ContactGroup_connstructor_minarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_constructor.html new file mode 100644 index 000000000..c9adb7ee9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_constructor.html @@ -0,0 +1,55 @@ + + + + + +ContactGroup_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_exist.html new file mode 100644 index 000000000..4c7433ad7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_exist.html @@ -0,0 +1,47 @@ + + + + + +ContactGroup_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_extend.html new file mode 100644 index 000000000..eef6b7d96 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_extend.html @@ -0,0 +1,47 @@ + + + + + +ContactGroup_extend + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_id_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_id_attribute.html new file mode 100644 index 000000000..a682bf3e5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_id_attribute.html @@ -0,0 +1,68 @@ + + + + +ContactGroup_id_attribute + + + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_name_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_name_attribute.html new file mode 100644 index 000000000..69ff48aaf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_name_attribute.html @@ -0,0 +1,56 @@ + + + + + +ContactGroup_name_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_photoURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_photoURI_attribute.html new file mode 100644 index 000000000..766f076a9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_photoURI_attribute.html @@ -0,0 +1,54 @@ + + + + + +ContactGroup_photoURI_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_attribute.html new file mode 100644 index 000000000..179aa828b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_attribute.html @@ -0,0 +1,54 @@ + + + + + +ContactGroup_readOnly_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_not_nullable.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_not_nullable.html new file mode 100644 index 000000000..bf8f8f23e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_readOnly_not_nullable.html @@ -0,0 +1,47 @@ + + + + +ContactGroup_readOnly_not_nullable + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactGroup_ringtoneURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactGroup_ringtoneURI_attribute.html new file mode 100644 index 000000000..f22cb0a99 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactGroup_ringtoneURI_attribute.html @@ -0,0 +1,54 @@ + + + + + +ContactGroup_ringtoneURI_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactInit_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactInit_attributeType_check.html new file mode 100644 index 000000000..533f2b4fb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactInit_attributeType_check.html @@ -0,0 +1,85 @@ + + + + +ContactInit_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_constructor.html new file mode 100644 index 000000000..7a1c5cbfc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_constructor.html @@ -0,0 +1,48 @@ + + + + +ContactInstantMessenger_constructor + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_exist.html new file mode 100644 index 000000000..03caa9cb1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_exist.html @@ -0,0 +1,43 @@ + + + + +ContactInstantMessenger_exist + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_extend.html new file mode 100644 index 000000000..1aed03a18 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_extend.html @@ -0,0 +1,43 @@ + + + + +ContactInstantMessenger_extend + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_imAddress_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_imAddress_attribute.html new file mode 100644 index 000000000..5fad1e9c2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_imAddress_attribute.html @@ -0,0 +1,52 @@ + + + + +ContactInstantMessenger_imAddress_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_label_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_label_attribute.html new file mode 100644 index 000000000..e82eeafd6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_label_attribute.html @@ -0,0 +1,50 @@ + + + + +ContactInstantMessenger_label_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_type_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_type_attribute.html new file mode 100644 index 000000000..cd35eec64 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactInstantMessenger_type_attribute.html @@ -0,0 +1,73 @@ + + + + +ContactInstantMessenger_type_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManagerObject_notexist.html b/mobile/tct-contact-tizen-tests/contact/ContactManagerObject_notexist.html new file mode 100644 index 000000000..c4ce3563e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManagerObject_notexist.html @@ -0,0 +1,44 @@ + + + + +ContactManagerObject_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook.html new file mode 100644 index 000000000..3f9634825 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook.html @@ -0,0 +1,59 @@ + + + + +ContactManager_addAddressBook + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_TypeMismatch.html new file mode 100644 index 000000000..a84d95904 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +ContactManager_addAddressBook_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_exist.html new file mode 100644 index 000000000..c67f84fb4 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_exist.html @@ -0,0 +1,44 @@ + + + + +ContactManager_addAddressBook_exist + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_invalid.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_invalid.html new file mode 100644 index 000000000..861c45821 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_invalid.html @@ -0,0 +1,48 @@ + + + + + +ContactManager_addAddressBook_invalid + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_misarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_misarg.html new file mode 100644 index 000000000..1adeecd85 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_misarg.html @@ -0,0 +1,47 @@ + + + + +ContactManager_addAddressBook_missarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener.html new file mode 100644 index 000000000..c0d0b591a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener.html @@ -0,0 +1,63 @@ + + + + +ContactManager_addChangeListener + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_exist.html new file mode 100644 index 000000000..0c62370ef --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_exist.html @@ -0,0 +1,45 @@ + + + + +ContactManager_addChangeListener_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_missarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_missarg.html new file mode 100644 index 000000000..93c9c4633 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_missarg.html @@ -0,0 +1,51 @@ + + + + + +ContactManager_addChangeListener_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_TypeMismatch.html new file mode 100644 index 000000000..c7c12efc6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_TypeMismatch.html @@ -0,0 +1,55 @@ + + + + +ContactManager_addChangeListener_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_invalid_cb.html new file mode 100644 index 000000000..28186aa07 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_invalid_cb.html @@ -0,0 +1,56 @@ + + + + +ContactManager_addChangeListener_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_check_types.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_check_types.html new file mode 100644 index 000000000..150a20e94 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_check_types.html @@ -0,0 +1,62 @@ + + + + + +ContactManager_check_types + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_extend.html new file mode 100644 index 000000000..a5795a43a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_extend.html @@ -0,0 +1,47 @@ + + + + + +ContactManager_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find.html new file mode 100644 index 000000000..506ba6013 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find.html @@ -0,0 +1,70 @@ + + + + +ContactManager_find + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount.html new file mode 100644 index 000000000..fdedf1b0a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount.html @@ -0,0 +1,73 @@ + + + + +ContactManager_findByUsageCount + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..cdf660634 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_TypeMismatch.html @@ -0,0 +1,60 @@ + + + + +ContactManager_findByUsageCount_errorCallback_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invalid_cb.html new file mode 100644 index 000000000..fe8d7ea50 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invalid_cb.html @@ -0,0 +1,59 @@ + + + + +ContactManager_findByUsageCount_errorCallback_invalid_cb + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invoked.html new file mode 100644 index 000000000..64f24d4cc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invoked.html @@ -0,0 +1,78 @@ + + + + +ContactManager_findByUsageCount_errorCallback_invoked + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_exist.html new file mode 100644 index 000000000..5cea0ec95 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_exist.html @@ -0,0 +1,43 @@ + + + + +ContactManager_findByUsageCount_exist + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_TypeMismatch.html new file mode 100644 index 000000000..66b4cc824 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_TypeMismatch.html @@ -0,0 +1,63 @@ + + + + +ContactManager_findByUsageCount_filter_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_invalid_obj.html new file mode 100644 index 000000000..d46849ff3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_invalid_obj.html @@ -0,0 +1,79 @@ + + + + +ContactManager_findByUsageCount_filter_invalid_obj + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_misarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_misarg.html new file mode 100644 index 000000000..6e4f4529e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_misarg.html @@ -0,0 +1,44 @@ + + + + +ContactManager_findByUsageCount_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_sortModeOrder_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_sortModeOrder_TypeMismatch.html new file mode 100644 index 000000000..1439e9316 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_sortModeOrder_TypeMismatch.html @@ -0,0 +1,64 @@ + + + + +ContactManager_findByUsageCount_sortModeOrder_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_TypeMismatch.html new file mode 100644 index 000000000..85e2bef26 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_TypeMismatch.html @@ -0,0 +1,54 @@ + + + + +ContactManager_findByUsageCount_successCallback_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_invalid_cb.html new file mode 100644 index 000000000..de6e00881 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_invalid_cb.html @@ -0,0 +1,59 @@ + + + + +ContactManager_findByUsageCount_successCallback_invalid_cb + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_with_offset.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_with_offset.html new file mode 100644 index 000000000..2f4ead422 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_with_offset.html @@ -0,0 +1,77 @@ + + + + +ContactManager_findByUsageCount_with_offset + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..5b564fba2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_TypeMismatch.html @@ -0,0 +1,60 @@ + + + + +ContactManager_find_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invalid_cb.html new file mode 100644 index 000000000..1a66aba03 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invalid_cb.html @@ -0,0 +1,58 @@ + + + + +ContactManager_find_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invoked.html new file mode 100644 index 000000000..116a49a20 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invoked.html @@ -0,0 +1,68 @@ + + + + +ContactManager_find_errorCallback_invoked + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_exist.html new file mode 100644 index 000000000..8fc6fbd97 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_exist.html @@ -0,0 +1,45 @@ + + + + +ContactManager_find_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_TypeMismatch.html new file mode 100644 index 000000000..1ea516b9c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_TypeMismatch.html @@ -0,0 +1,62 @@ + + + + +ContactManager_find_filter_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_invalid_obj.html new file mode 100644 index 000000000..fddb264d9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_filter_invalid_obj.html @@ -0,0 +1,63 @@ + + + + +ContactManager_find_filter_invalid_obj + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_missarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_missarg.html new file mode 100644 index 000000000..a7b945ad7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_missarg.html @@ -0,0 +1,50 @@ + + + + + +ContactManager_find_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_TypeMismatch.html new file mode 100644 index 000000000..e12a3d923 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_TypeMismatch.html @@ -0,0 +1,63 @@ + + + + +ContactManager_find_sortMode_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_invalid_obj.html new file mode 100644 index 000000000..934cd86f7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_invalid_obj.html @@ -0,0 +1,60 @@ + + + + +ContactManager_find_sortMode_invalid_obj + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_TypeMismatch.html new file mode 100644 index 000000000..c4aa23bb0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_TypeMismatch.html @@ -0,0 +1,55 @@ + + + + +ContactManager_find_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_invalid_cb.html new file mode 100644 index 000000000..c95f7cde6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_invalid_cb.html @@ -0,0 +1,55 @@ + + + + +ContactManager_find_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_errorCallback.html new file mode 100644 index 000000000..44c9ef6f9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_errorCallback.html @@ -0,0 +1,67 @@ + + + + +ContactManager_find_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_filter.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_filter.html new file mode 100644 index 000000000..c4f67e709 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_filter.html @@ -0,0 +1,68 @@ + + + + +ContactManager_find_with_filter + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_sortMode.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_sortMode.html new file mode 100644 index 000000000..dfd54c48e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_find_with_sortMode.html @@ -0,0 +1,69 @@ + + + + +ContactManager_find_with_sortMode + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_get.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_get.html new file mode 100644 index 000000000..b7ea14c30 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_get.html @@ -0,0 +1,70 @@ + + + + +ContactManager_get + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook.html new file mode 100644 index 000000000..e61777c3a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook.html @@ -0,0 +1,48 @@ + + + + +ContactManager_getAddressBook + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_TypeMismatch.html new file mode 100644 index 000000000..ec0e1aa82 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +ContactManager_getAddressBook_addressBookId_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_invalid.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_invalid.html new file mode 100644 index 000000000..fe275d3c3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_invalid.html @@ -0,0 +1,46 @@ + + + + +ContactManager_getAddressBook_addressBookId_invalid + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_exist.html new file mode 100644 index 000000000..2ed4836df --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_exist.html @@ -0,0 +1,45 @@ + + + + +ContactManager_getAddressBook_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_invalid_argument.html new file mode 100644 index 000000000..8ac094c10 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_invalid_argument.html @@ -0,0 +1,45 @@ + + + + +ContactManager_getAddressBook_invalid_argument + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_misarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_misarg.html new file mode 100644 index 000000000..d0c5d64bd --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_misarg.html @@ -0,0 +1,46 @@ + + + + +ContactManager_getAddressBook_misarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks.html new file mode 100644 index 000000000..ecd9e8417 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks.html @@ -0,0 +1,53 @@ + + + + +ContactManager_getAddressBooks + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..972080eeb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_TypeMismatch.html @@ -0,0 +1,59 @@ + + + + +ContactManager_getAddressBooks_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_invalid_cb.html new file mode 100644 index 000000000..372cba180 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_invalid_cb.html @@ -0,0 +1,58 @@ + + + + +ContactManager_getAddressBooks_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_exist.html new file mode 100644 index 000000000..f06bc22da --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_exist.html @@ -0,0 +1,46 @@ + + + + +ContactManager_getAddressBooks_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_missarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_missarg.html new file mode 100644 index 000000000..8487e14bb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_missarg.html @@ -0,0 +1,49 @@ + + + + + +ContactManager_getAddressBooks_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_TypeMismatch.html new file mode 100644 index 000000000..4f494a9a0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_TypeMismatch.html @@ -0,0 +1,55 @@ + + + + +ContactManager_getAddressBooks_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_invalid_cb.html new file mode 100644 index 000000000..16a90213a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_invalid_cb.html @@ -0,0 +1,56 @@ + + + + +ContactManager_getAddressBooks_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback.html new file mode 100644 index 000000000..68e855b34 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback.html @@ -0,0 +1,53 @@ + + + + +ContactManager_getAddressBooks_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback_null.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback_null.html new file mode 100644 index 000000000..9030b2124 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback_null.html @@ -0,0 +1,64 @@ + + + + + +ContactManager_getAddressBooks_with_errorCallback_null + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_without_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_without_errorCallback.html new file mode 100644 index 000000000..e6365f13e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_without_errorCallback.html @@ -0,0 +1,56 @@ + + + + + +ContactManager_getAddressBooks_without_errorCallback + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook.html new file mode 100644 index 000000000..fe32a8490 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook.html @@ -0,0 +1,49 @@ + + + + +ContactManager_getDefaultAddressBook + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_exist.html new file mode 100644 index 000000000..84010c3e9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_exist.html @@ -0,0 +1,45 @@ + + + + +ContactManager_getDefaultAddressBook_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_extra_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_extra_argument.html new file mode 100644 index 000000000..7b0510bd6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_extra_argument.html @@ -0,0 +1,45 @@ + + + + +ContactManager_getDefaultAddressBook_extra_argument + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook.html new file mode 100644 index 000000000..56291794a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook.html @@ -0,0 +1,51 @@ + + + + +ContactManager_getUnifiedAddressBook + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_exist.html new file mode 100644 index 000000000..319b911b8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_exist.html @@ -0,0 +1,45 @@ + + + + +ContactManager_getUnifiedAddressBook_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_extra_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_extra_argument.html new file mode 100644 index 000000000..ea2b0f55d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_extra_argument.html @@ -0,0 +1,45 @@ + + + + +ContactManager_getUnifiedAddressBook_extra_argument + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_get_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_exist.html new file mode 100644 index 000000000..2b77af896 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_exist.html @@ -0,0 +1,45 @@ + + + + +ContactManager_get_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_get_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_invalid_argument.html new file mode 100644 index 000000000..2a3533bc7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_invalid_argument.html @@ -0,0 +1,63 @@ + + + + +ContactManager_get_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_get_misarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_misarg.html new file mode 100644 index 000000000..238e9d0bc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_misarg.html @@ -0,0 +1,46 @@ + + + + +ContactManager_get_misarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_TypeMismatch.html new file mode 100644 index 000000000..7056a55d2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +ContactManager_get_personId_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_invalid.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_invalid.html new file mode 100644 index 000000000..1ce019754 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_get_personId_invalid.html @@ -0,0 +1,63 @@ + + + + +ContactManager_get_personId_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_in_tizen.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_in_tizen.html new file mode 100644 index 000000000..6ec332da7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_in_tizen.html @@ -0,0 +1,45 @@ + + + + +ContactManager_in_tizen + +l + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_notexist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_notexist.html new file mode 100644 index 000000000..e29b7ef45 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_notexist.html @@ -0,0 +1,44 @@ + + + + +ContactManager_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_remove.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove.html new file mode 100644 index 000000000..3d3d1beba --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove.html @@ -0,0 +1,63 @@ + + + + +ContactManager_remove + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook.html new file mode 100644 index 000000000..7ff997883 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook.html @@ -0,0 +1,55 @@ + + + + +ContactManager_removeAddressBook + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_exist.html new file mode 100644 index 000000000..98e99fe60 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_exist.html @@ -0,0 +1,44 @@ + + + + +ContactManager_removeAddressBook_exist + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_argument.html new file mode 100644 index 000000000..cf3040c5b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_argument.html @@ -0,0 +1,57 @@ + + + + +ContactManager_removeAddressBook_invalid_argument + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_obj.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_obj.html new file mode 100644 index 000000000..9bdbb5848 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_obj.html @@ -0,0 +1,48 @@ + + + + +ContactManager_removeAddressBook_invalid_obj + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_misarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_misarg.html new file mode 100644 index 000000000..f3e308068 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_misarg.html @@ -0,0 +1,47 @@ + + + + +ContactManager_removeAddressBook_missarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch.html new file mode 100644 index 000000000..a8905f616 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch.html @@ -0,0 +1,68 @@ + + + + +ContactManager_removeBatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..1b0257b23 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_TypeMismatch.html @@ -0,0 +1,76 @@ + + + + +ContactManager_removeBatch_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invalid_cb.html new file mode 100644 index 000000000..79622a3c9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invalid_cb.html @@ -0,0 +1,76 @@ + + + + +ContactManager_removeBatch_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invoked.html new file mode 100644 index 000000000..ee3659ab5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invoked.html @@ -0,0 +1,52 @@ + + + + +ContactManager_removeBatch_errorCallback_invoked + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_exist.html new file mode 100644 index 000000000..b519abdf6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_exist.html @@ -0,0 +1,46 @@ + + + + +ContactManager_removeBatch_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_missarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_missarg.html new file mode 100644 index 000000000..879ae7269 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_missarg.html @@ -0,0 +1,51 @@ + + + + + +ContactManager_removeBatch_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_personIds_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_personIds_TypeMismatch.html new file mode 100644 index 000000000..77a738a4a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_personIds_TypeMismatch.html @@ -0,0 +1,53 @@ + + + + +ContactManager_removeBatch_personIds_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_TypeMismatch.html new file mode 100644 index 000000000..b418c8222 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_TypeMismatch.html @@ -0,0 +1,73 @@ + + + + +ContactManager_removeBatch_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_invalid_cb.html new file mode 100644 index 000000000..f7c52eac3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_invalid_cb.html @@ -0,0 +1,73 @@ + + + + +ContactManager_removeBatch_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_errorCallback.html new file mode 100644 index 000000000..02c2b4826 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_errorCallback.html @@ -0,0 +1,69 @@ + + + + +ContactManager_removeBatch_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_successCallback.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_successCallback.html new file mode 100644 index 000000000..63b457b0f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_successCallback.html @@ -0,0 +1,73 @@ + + + + +ContactManager_removeBatch_with_successCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener.html new file mode 100644 index 000000000..75b2f0129 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener.html @@ -0,0 +1,60 @@ + + + + +ContactManager_removeChangeListener + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_TypeMismatch.html new file mode 100644 index 000000000..769ecd11b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +ContactManager_removeChangeListener_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_exist.html new file mode 100644 index 000000000..b1bad77ae --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_exist.html @@ -0,0 +1,46 @@ + + + + +ContactManager_removeChangeListener_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_invalid_argument.html new file mode 100644 index 000000000..f46dce50a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_invalid_argument.html @@ -0,0 +1,59 @@ + + + + +ContactManager_removeChangeListener_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_misarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_misarg.html new file mode 100644 index 000000000..81203775e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_misarg.html @@ -0,0 +1,45 @@ + + + + +ContactManager_removeChangeListener_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_exist.html new file mode 100644 index 000000000..7c3750212 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_exist.html @@ -0,0 +1,46 @@ + + + + +ContactManager_remove_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_invalid_argument.html new file mode 100644 index 000000000..d7ea03f3d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_invalid_argument.html @@ -0,0 +1,63 @@ + + + + +ContactManager_remove_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_misarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_misarg.html new file mode 100644 index 000000000..681a2ea0c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_misarg.html @@ -0,0 +1,46 @@ + + + + +ContactManager_remove_misarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_TypeMismatch.html new file mode 100644 index 000000000..b91f2a6c4 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_TypeMismatch.html @@ -0,0 +1,52 @@ + + + + +ContactManager_remove_personId_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_invalid.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_invalid.html new file mode 100644 index 000000000..41003ba7e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_remove_personId_invalid.html @@ -0,0 +1,63 @@ + + + + +ContactManager_remove_personId_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_update.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_update.html new file mode 100644 index 000000000..94f6b0c65 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_update.html @@ -0,0 +1,66 @@ + + + + +ContactManager_update + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch.html new file mode 100644 index 000000000..4f70aa69f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch.html @@ -0,0 +1,74 @@ + + + + +ContactManager_updateBatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_TypeMismatch.html new file mode 100644 index 000000000..d1f4f2dde --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_TypeMismatch.html @@ -0,0 +1,80 @@ + + + + +ContactManager_updateBatch_errorCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invalid_cb.html new file mode 100644 index 000000000..4fffa66db --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invalid_cb.html @@ -0,0 +1,80 @@ + + + + +ContactManager_updateBatch_errorCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invoked.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invoked.html new file mode 100644 index 000000000..aa40f92bf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invoked.html @@ -0,0 +1,70 @@ + + + + +ContactManager_updateBatch_errorCallback_invoked + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_exist.html new file mode 100644 index 000000000..29d3a1d97 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_exist.html @@ -0,0 +1,46 @@ + + + + +ContactManager_updateBatch_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_missarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_missarg.html new file mode 100644 index 000000000..3591b9e08 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_missarg.html @@ -0,0 +1,52 @@ + + + + + +ContactManager_updateBatch_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_persons_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_persons_TypeMismatch.html new file mode 100644 index 000000000..a9a562452 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_persons_TypeMismatch.html @@ -0,0 +1,54 @@ + + + + +ContactManager_updateBatch_persons_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_TypeMismatch.html new file mode 100644 index 000000000..8797ca409 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_TypeMismatch.html @@ -0,0 +1,78 @@ + + + + +ContactManager_updateBatch_successCallback_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_invalid_cb.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_invalid_cb.html new file mode 100644 index 000000000..f3919c75f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_invalid_cb.html @@ -0,0 +1,77 @@ + + + + +ContactManager_updateBatch_successCallback_invalid_cb + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_errorCallback.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_errorCallback.html new file mode 100644 index 000000000..70e97af8e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_errorCallback.html @@ -0,0 +1,77 @@ + + + + +ContactManager_updateBatch_with_errorCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_successCallback.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_successCallback.html new file mode 100644 index 000000000..baf96074a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_successCallback.html @@ -0,0 +1,77 @@ + + + + +ContactManager_updateBatch_with_successCallback + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_update_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_exist.html new file mode 100644 index 000000000..fb5c78de9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_exist.html @@ -0,0 +1,46 @@ + + + + +ContactManager_update_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_update_invalid_argument.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_invalid_argument.html new file mode 100644 index 000000000..9bb3f4e93 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_invalid_argument.html @@ -0,0 +1,65 @@ + + + + +ContactManager_update_invalid_argument + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_update_missarg.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_missarg.html new file mode 100644 index 000000000..7c4761adc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_missarg.html @@ -0,0 +1,50 @@ + + + + + +ContactManager_update_missarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_TypeMismatch.html new file mode 100644 index 000000000..d83ac60cf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_TypeMismatch.html @@ -0,0 +1,55 @@ + + + + +ContactManager_update_person_TypeMismatch + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_invalid.html b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_invalid.html new file mode 100644 index 000000000..5a1c35859 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactManager_update_person_invalid.html @@ -0,0 +1,65 @@ + + + + +ContactManager_update_person_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactNameInit_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactNameInit_attributeType_check.html new file mode 100644 index 000000000..282319bca --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactNameInit_attributeType_check.html @@ -0,0 +1,64 @@ + + + + +ContactNameInit_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactName_attributeType_check.html new file mode 100644 index 000000000..58d7cc40a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_attributeType_check.html @@ -0,0 +1,64 @@ + + + + +ContactName_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_attribute_byDefault.html b/mobile/tct-contact-tizen-tests/contact/ContactName_attribute_byDefault.html new file mode 100644 index 000000000..cfc708c4d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_attribute_byDefault.html @@ -0,0 +1,53 @@ + + + + +ContactName_attribute_byDefault + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactName_constructor.html new file mode 100644 index 000000000..c98dc331d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_constructor.html @@ -0,0 +1,68 @@ + + + + + +ContactName_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_constructor_contactNameInit.html b/mobile/tct-contact-tizen-tests/contact/ContactName_constructor_contactNameInit.html new file mode 100644 index 000000000..cb5d9d37a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_constructor_contactNameInit.html @@ -0,0 +1,65 @@ + + + + +ContactName_constructor_contactNameInit + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_constructor_minarg.html b/mobile/tct-contact-tizen-tests/contact/ContactName_constructor_minarg.html new file mode 100644 index 000000000..8ff196a6d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_constructor_minarg.html @@ -0,0 +1,47 @@ + + + + +ContactName_constructor_minarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_displayName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_displayName_attribute.html new file mode 100644 index 000000000..7b0f66cb8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_displayName_attribute.html @@ -0,0 +1,74 @@ + + + + + +ContactName_displayName_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactName_exist.html new file mode 100644 index 000000000..e4bb2a74c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_exist.html @@ -0,0 +1,47 @@ + + + + + +ContactName_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactName_extend.html new file mode 100644 index 000000000..4af1abcd9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_extend.html @@ -0,0 +1,58 @@ + + + + + +ContactName_extend + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_firstName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_firstName_attribute.html new file mode 100644 index 000000000..0a319f953 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_firstName_attribute.html @@ -0,0 +1,62 @@ + + + + + +ContactName_firstName_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_lastName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_lastName_attribute.html new file mode 100644 index 000000000..81b1b7661 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_lastName_attribute.html @@ -0,0 +1,62 @@ + + + + + +ContactName_lastName_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_middleName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_middleName_attribute.html new file mode 100644 index 000000000..5957322e1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_middleName_attribute.html @@ -0,0 +1,62 @@ + + + + + +ContactName_middleName_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute.html new file mode 100644 index 000000000..0c22d0eb6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute.html @@ -0,0 +1,79 @@ + + + + + +ContactName_nicknames_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute_multi.html b/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute_multi.html new file mode 100644 index 000000000..2a9633bf7 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute_multi.html @@ -0,0 +1,57 @@ + + + + +ContactName_nicknames_attribute_multi + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_not_nullable.html b/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_not_nullable.html new file mode 100644 index 000000000..6578c5151 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_nicknames_not_nullable.html @@ -0,0 +1,59 @@ + + + + +ContactName_nicknames_not_nullable + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticFirstName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticFirstName_attribute.html new file mode 100644 index 000000000..bf5cac350 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticFirstName_attribute.html @@ -0,0 +1,62 @@ + + + + + +ContactName_phoneticFirstName_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticLastName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticLastName_attribute.html new file mode 100644 index 000000000..515fd66ad --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticLastName_attribute.html @@ -0,0 +1,62 @@ + + + + + +ContactName_phoneticLastName_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticMiddleName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticMiddleName_attribute.html new file mode 100644 index 000000000..c6a732968 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_phoneticMiddleName_attribute.html @@ -0,0 +1,61 @@ + + + + +ContactName_phoneticMiddleName_attribute + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_prefix_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_prefix_attribute.html new file mode 100644 index 000000000..0364873fa --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_prefix_attribute.html @@ -0,0 +1,62 @@ + + + + + +ContactName_prefix_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactName_suffix_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactName_suffix_attribute.html new file mode 100644 index 000000000..3b6dd2834 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactName_suffix_attribute.html @@ -0,0 +1,62 @@ + + + + + +ContactName_suffix_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganizationInit_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganizationInit_attributeType_check.html new file mode 100644 index 000000000..0d2f0dec0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganizationInit_attributeType_check.html @@ -0,0 +1,59 @@ + + + + +ContactOrganizationInit_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_attributeType_check.html new file mode 100644 index 000000000..b0d02a935 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_attributeType_check.html @@ -0,0 +1,59 @@ + + + + +ContactOrganization_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor.html new file mode 100644 index 000000000..2fd66646c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor.html @@ -0,0 +1,62 @@ + + + + + +ContactOrganization_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_ContactOrganizationInit.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_ContactOrganizationInit.html new file mode 100644 index 000000000..e7b0e0abc --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_ContactOrganizationInit.html @@ -0,0 +1,59 @@ + + + + +ContactOrganization_constructor_ContactOrganizationInit + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_minarg.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_minarg.html new file mode 100644 index 000000000..a0efb7130 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_constructor_minarg.html @@ -0,0 +1,59 @@ + + + + + +ContactOrganization_constructor_minarg + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_department_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_department_attribute.html new file mode 100644 index 000000000..9f782fad0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_department_attribute.html @@ -0,0 +1,60 @@ + + + + + +ContactOrganization_department_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_exist.html new file mode 100644 index 000000000..9e33bdcdb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_exist.html @@ -0,0 +1,47 @@ + + + + + +ContactOrganization_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_extend.html new file mode 100644 index 000000000..70f9840a5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_extend.html @@ -0,0 +1,47 @@ + + + + + +ContactOrganization_extend + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_logoURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_logoURI_attribute.html new file mode 100644 index 000000000..78faaa5b6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_logoURI_attribute.html @@ -0,0 +1,60 @@ + + + + + +ContactOrganization_logoURI_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_name_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_name_attribute.html new file mode 100644 index 000000000..20f4e3645 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_name_attribute.html @@ -0,0 +1,60 @@ + + + + + +ContactOrganization_name_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_role_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_role_attribute.html new file mode 100644 index 000000000..1299457f3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_role_attribute.html @@ -0,0 +1,60 @@ + + + + + +ContactOrganization_role_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactOrganization_title_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_title_attribute.html new file mode 100644 index 000000000..02edc1dc8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactOrganization_title_attribute.html @@ -0,0 +1,60 @@ + + + + + +ContactOrganization_title_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attributeType_check.html new file mode 100644 index 000000000..23ac665ea --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attributeType_check.html @@ -0,0 +1,49 @@ + + + + +ContactPhoneNumber_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attribute_byDefault.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attribute_byDefault.html new file mode 100644 index 000000000..8aed12183 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_attribute_byDefault.html @@ -0,0 +1,49 @@ + + + + + +ContactPhoneNumber_attribute_byDefault + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor.html new file mode 100644 index 000000000..355b78c54 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor.html @@ -0,0 +1,54 @@ + + + + + +ContactPhoneNumber_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor_minargs.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor_minargs.html new file mode 100644 index 000000000..02802c788 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor_minargs.html @@ -0,0 +1,54 @@ + + + + + +ContactPhoneNumber_constructor_minargs + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_exist.html new file mode 100644 index 000000000..57e0e7197 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_exist.html @@ -0,0 +1,47 @@ + + + + + +ContactPhoneNumber_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_extend.html new file mode 100644 index 000000000..12e9c4c25 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_extend.html @@ -0,0 +1,51 @@ + + + + + +ContactPhoneNumber_extend + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_isDefault_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_isDefault_attribute.html new file mode 100644 index 000000000..4a733bc75 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_isDefault_attribute.html @@ -0,0 +1,56 @@ + + + + + +ContactPhoneNumber_isDefault_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_label_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_label_attribute.html new file mode 100644 index 000000000..5661cae0a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_label_attribute.html @@ -0,0 +1,51 @@ + + + + +ContactPhoneNumber_label_attribute + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_number_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_number_attribute.html new file mode 100644 index 000000000..97ab5eac5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_number_attribute.html @@ -0,0 +1,56 @@ + + + + + +ContactPhoneNumber_number_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute.html new file mode 100644 index 000000000..9b6d9c309 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute.html @@ -0,0 +1,59 @@ + + + + + +ContactPhoneNumber_types_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_ASSISTANT.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_ASSISTANT.html new file mode 100644 index 000000000..653310d74 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_ASSISTANT.html @@ -0,0 +1,50 @@ + + + + +ContactPhoneNumber_types_attribute_ASSISTANT + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_CUSTOM.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_CUSTOM.html new file mode 100644 index 000000000..ee1823580 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_CUSTOM.html @@ -0,0 +1,50 @@ + + + + +ContactPhoneNumber_types_attribute_CUSTOM + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_OTHER.html b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_OTHER.html new file mode 100644 index 000000000..29c274ed3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_OTHER.html @@ -0,0 +1,50 @@ + + + + +ContactPhoneNumber_types_attribute_OTHER + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRef_addressBookId_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactRef_addressBookId_attribute.html new file mode 100644 index 000000000..1bb6c9108 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRef_addressBookId_attribute.html @@ -0,0 +1,56 @@ + + + + + +ContactRef_addressBookId_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRef_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactRef_attributeType_check.html new file mode 100644 index 000000000..18e5ca987 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRef_attributeType_check.html @@ -0,0 +1,55 @@ + + + + + +ContactRef_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRef_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactRef_constructor.html new file mode 100644 index 000000000..75b66592d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRef_constructor.html @@ -0,0 +1,55 @@ + + + + + +ContactRef_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRef_contactId_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactRef_contactId_attribute.html new file mode 100644 index 000000000..9e59585ae --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRef_contactId_attribute.html @@ -0,0 +1,60 @@ + + + + + +ContactRef_contactId_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRef_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactRef_exist.html new file mode 100644 index 000000000..fa9dc9c1b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRef_exist.html @@ -0,0 +1,47 @@ + + + + + +ContactRef_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRef_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactRef_extend.html new file mode 100644 index 000000000..d061ee9db --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRef_extend.html @@ -0,0 +1,50 @@ + + + + + +ContactRef_extend + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRelationship_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_constructor.html new file mode 100644 index 000000000..57dc63508 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_constructor.html @@ -0,0 +1,48 @@ + + + + +ContactRelationship_constructor + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRelationship_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_exist.html new file mode 100644 index 000000000..f9f11b6b3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_exist.html @@ -0,0 +1,43 @@ + + + + +ContactRelationship_exist + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRelationship_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_extend.html new file mode 100644 index 000000000..3843111ea --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_extend.html @@ -0,0 +1,43 @@ + + + + +ContactRelationship_extend + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRelationship_label_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_label_attribute.html new file mode 100644 index 000000000..5eb12c012 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_label_attribute.html @@ -0,0 +1,49 @@ + + + + +ContactRelationship_label_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRelationship_relativeName_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_relativeName_attribute.html new file mode 100644 index 000000000..f89f710e1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_relativeName_attribute.html @@ -0,0 +1,51 @@ + + + + +ContactRelationship_relativeName_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactRelationship_type_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_type_attribute.html new file mode 100644 index 000000000..5eb6159f0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactRelationship_type_attribute.html @@ -0,0 +1,81 @@ + + + + +ContactRelationship_type_attribute + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_VCARD_30.html b/mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_VCARD_30.html new file mode 100644 index 000000000..b52bbb17d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_VCARD_30.html @@ -0,0 +1,73 @@ + + + + +ContactTextFormat_enum_VCARD_30 + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_invalid.html b/mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_invalid.html new file mode 100644 index 000000000..e2e38cc60 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactTextFormat_enum_invalid.html @@ -0,0 +1,72 @@ + + + + + +ContactTextFormat_enum_invalid + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactWebSite_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_attributeType_check.html new file mode 100644 index 000000000..ce94dc14b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_attributeType_check.html @@ -0,0 +1,49 @@ + + + + + +ContactWebSite_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor.html b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor.html new file mode 100644 index 000000000..ee314b8f8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor.html @@ -0,0 +1,52 @@ + + + + + +ContactWebSite_constructor + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor_minarg.html b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor_minarg.html new file mode 100644 index 000000000..0d0c5afd6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_constructor_minarg.html @@ -0,0 +1,50 @@ + + + + + +ContactWebSite_constructor_minarg + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/ContactWebSite_exist.html b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_exist.html new file mode 100644 index 000000000..5c48f1ddf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_exist.html @@ -0,0 +1,44 @@ + + + + +ContactWebSite_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactWebSite_extend.html b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_extend.html new file mode 100644 index 000000000..21bac5b0e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_extend.html @@ -0,0 +1,48 @@ + + + + + +ContactWebSite_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactWebSite_type_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_type_attribute.html new file mode 100644 index 000000000..cb5314522 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_type_attribute.html @@ -0,0 +1,52 @@ + + + + +ContactWebSite_type_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/ContactWebSite_url_attribute.html b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_url_attribute.html new file mode 100644 index 000000000..741eb15c4 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/ContactWebSite_url_attribute.html @@ -0,0 +1,52 @@ + + + + +ContactWebSite_url_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactArraySuccessCallback_onsuccess.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactArraySuccessCallback_onsuccess.html new file mode 100644 index 000000000..64880bb11 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactArraySuccessCallback_onsuccess.html @@ -0,0 +1,70 @@ + + + + +Contact_ContactArraySuccessCallback_onsuccess + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactEmailAddress_emails_types.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactEmailAddress_emails_types.html new file mode 100644 index 000000000..0107144ee --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactEmailAddress_emails_types.html @@ -0,0 +1,60 @@ + + + + + +Contact_ContactEmailAddress_emails_types + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactManagerObject_attri_contact.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManagerObject_attri_contact.html new file mode 100644 index 000000000..87b695b3c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManagerObject_attri_contact.html @@ -0,0 +1,56 @@ + + + + +Contact_ContactManagerObject_attri_contact + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook.html new file mode 100644 index 000000000..ad19f0acd --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook.html @@ -0,0 +1,71 @@ + + + + + +Contact_ContactManager_getAddressBook + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_NULL.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_NULL.html new file mode 100644 index 000000000..148a9de25 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_NULL.html @@ -0,0 +1,57 @@ + + + + + +Contact_ContactManager_getAddressBook_NULL + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_invalid.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_invalid.html new file mode 100644 index 000000000..286204454 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_invalid.html @@ -0,0 +1,58 @@ + + + + + + +Contact_ContactManager_getAddressBook_invalid + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks.html new file mode 100644 index 000000000..bc2ab5307 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks.html @@ -0,0 +1,64 @@ + + + + +Contact_ContactManager_getAddressBooks + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks_invalid.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks_invalid.html new file mode 100644 index 000000000..393da11ca --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks_invalid.html @@ -0,0 +1,63 @@ + + + + +Contact_ContactManager_getAddressBooks_invalid + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getDefaultAddressBook.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getDefaultAddressBook.html new file mode 100644 index 000000000..1cefd0c5c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactManager_getDefaultAddressBook.html @@ -0,0 +1,56 @@ + + + + +Contact_ContactManager_getDefaultAddressBook + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ContactPhoneNumber_attri_number_types.html b/mobile/tct-contact-tizen-tests/contact/Contact_ContactPhoneNumber_attri_number_types.html new file mode 100644 index 000000000..8dd278c28 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ContactPhoneNumber_attri_number_types.html @@ -0,0 +1,63 @@ + + + + +Contact_ContactPhoneNumber_attri_number_types + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_addressBookId_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_addressBookId_attribute.html new file mode 100644 index 000000000..a9c4d530e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_addressBookId_attribute.html @@ -0,0 +1,81 @@ + + + + +Contact_addressBookId_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_addresses_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_addresses_attribute.html new file mode 100644 index 000000000..4344fc096 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_addresses_attribute.html @@ -0,0 +1,96 @@ + + + + +Contact_addresses_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_anniversaries_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_anniversaries_attribute.html new file mode 100644 index 000000000..3373c07fb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_anniversaries_attribute.html @@ -0,0 +1,85 @@ + + + + +Contact_anniversaries_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_attributeType_check.html b/mobile/tct-contact-tizen-tests/contact/Contact_attributeType_check.html new file mode 100644 index 000000000..fa39f937c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_attributeType_check.html @@ -0,0 +1,78 @@ + + + + +Contact_attributeType_check + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_attribute_byDefault.html b/mobile/tct-contact-tizen-tests/contact/Contact_attribute_byDefault.html new file mode 100644 index 000000000..eae1ca47a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_attribute_byDefault.html @@ -0,0 +1,69 @@ + + + + + +Contact_attribute_byDefault + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_birthday_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_birthday_attribute.html new file mode 100644 index 000000000..e9535fa05 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_birthday_attribute.html @@ -0,0 +1,78 @@ + + + + +Contact_birthday_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_clone.html b/mobile/tct-contact-tizen-tests/contact/Contact_clone.html new file mode 100644 index 000000000..20314024f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_clone.html @@ -0,0 +1,70 @@ + + + + +Contact_clone + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_clone_exist.html b/mobile/tct-contact-tizen-tests/contact/Contact_clone_exist.html new file mode 100644 index 000000000..0967e99e2 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_clone_exist.html @@ -0,0 +1,50 @@ + + + + +Contact_clone_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_clone_extra_argument.html b/mobile/tct-contact-tizen-tests/contact/Contact_clone_extra_argument.html new file mode 100644 index 000000000..f58aa5710 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_clone_extra_argument.html @@ -0,0 +1,54 @@ + + + + +Contact_clone_extra_argument + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_constructor_ContactInit.html b/mobile/tct-contact-tizen-tests/contact/Contact_constructor_ContactInit.html new file mode 100644 index 000000000..0c321b597 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_constructor_ContactInit.html @@ -0,0 +1,76 @@ + + + + + +Contact_constructor_ContactInit + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_constructor_VCARD.html b/mobile/tct-contact-tizen-tests/contact/Contact_constructor_VCARD.html new file mode 100644 index 000000000..ae88f56f0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_constructor_VCARD.html @@ -0,0 +1,64 @@ + + + + + +Contact_constructor_VCARD + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_convertToString.html b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString.html new file mode 100644 index 000000000..f9bf8b6bb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString.html @@ -0,0 +1,52 @@ + + + + +Contact_convertToString + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_exist.html b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_exist.html new file mode 100644 index 000000000..bdd5de02a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_exist.html @@ -0,0 +1,49 @@ + + + + +Contact_convertToString_exist + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_format_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_format_TypeMismatch.html new file mode 100644 index 000000000..4ddccd7bf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_format_TypeMismatch.html @@ -0,0 +1,56 @@ + + + + +Contact_convertToString_format_TypeMismatch + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_format.html b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_format.html new file mode 100644 index 000000000..c00b1769b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_format.html @@ -0,0 +1,52 @@ + + + + +Contact_convertToString_with_format + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_null.html b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_null.html new file mode 100644 index 000000000..40b71ab3a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_null.html @@ -0,0 +1,51 @@ + + + + +Contact_convertToString_with_null + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_one.html b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_one.html new file mode 100644 index 000000000..1ca743893 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_convertToString_with_one.html @@ -0,0 +1,51 @@ + + + + + +Contact_convertToString_with_one + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_emails_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_emails_attribute.html new file mode 100644 index 000000000..17b28e04e --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_emails_attribute.html @@ -0,0 +1,85 @@ + + + + +Contact_emails_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_exist.html b/mobile/tct-contact-tizen-tests/contact/Contact_exist.html new file mode 100644 index 000000000..e95bead88 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_exist.html @@ -0,0 +1,44 @@ + + + + +Contact_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_extend.html b/mobile/tct-contact-tizen-tests/contact/Contact_extend.html new file mode 100644 index 000000000..20adf01a8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_extend.html @@ -0,0 +1,64 @@ + + + + + +Contact_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_groupIds_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_groupIds_attribute.html new file mode 100644 index 000000000..250171458 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_groupIds_attribute.html @@ -0,0 +1,95 @@ + + + + +Contact_groupIds_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_id_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_id_attribute.html new file mode 100644 index 000000000..78c6d6700 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_id_attribute.html @@ -0,0 +1,81 @@ + + + + +Contact_id_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_attribute.html new file mode 100644 index 000000000..325b698bf --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_attribute.html @@ -0,0 +1,77 @@ + + + + +Contact_isFavorite_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_not_nullable.html b/mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_not_nullable.html new file mode 100644 index 000000000..3b9cb83c1 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_isFavorite_not_nullable.html @@ -0,0 +1,75 @@ + + + + +Contact_isFavorite_not_nullable + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_lastUpdated_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_lastUpdated_attribute.html new file mode 100644 index 000000000..ba1760603 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_lastUpdated_attribute.html @@ -0,0 +1,81 @@ + + + + +Contact_lastUpdated_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_messageAlertURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_messageAlertURI_attribute.html new file mode 100644 index 000000000..be5bd014c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_messageAlertURI_attribute.html @@ -0,0 +1,77 @@ + + + + +Contact_messageAlertURI_attribute + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_messengers_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_messengers_attribute.html new file mode 100644 index 000000000..7f161c7b3 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_messengers_attribute.html @@ -0,0 +1,85 @@ + + + + +Contact_messengers_attribute + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_name_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_name_attribute.html new file mode 100644 index 000000000..c48aa6a1b --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_name_attribute.html @@ -0,0 +1,86 @@ + + + + +Contact_name_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_notes_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_notes_attribute.html new file mode 100644 index 000000000..1108eb9d5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_notes_attribute.html @@ -0,0 +1,83 @@ + + + + +Contact_notes_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_organizations_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_organizations_attribute.html new file mode 100644 index 000000000..1a8abeae9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_organizations_attribute.html @@ -0,0 +1,87 @@ + + + + +Contact_organizations_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_personId_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_personId_attribute.html new file mode 100644 index 000000000..ba3d98578 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_personId_attribute.html @@ -0,0 +1,81 @@ + + + + +Contact_personId_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_phoneNumbers_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_phoneNumbers_attribute.html new file mode 100644 index 000000000..fd1f02b77 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_phoneNumbers_attribute.html @@ -0,0 +1,85 @@ + + + + +Contact_phoneNumbers_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_photoURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_photoURI_attribute.html new file mode 100644 index 000000000..d00c46117 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_photoURI_attribute.html @@ -0,0 +1,77 @@ + + + + +Contact_photoURI_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_relationships_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_relationships_attribute.html new file mode 100644 index 000000000..c0e4e38af --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_relationships_attribute.html @@ -0,0 +1,85 @@ + + + + +Contact_relationships_attribute + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_ringtoneURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_ringtoneURI_attribute.html new file mode 100644 index 000000000..490451de6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_ringtoneURI_attribute.html @@ -0,0 +1,77 @@ + + + + +Contact_ringtoneURI_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_urls_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_urls_attribute.html new file mode 100644 index 000000000..36c2475c5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_urls_attribute.html @@ -0,0 +1,87 @@ + + + + +Contact_urls_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Contact_vibrationURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/Contact_vibrationURI_attribute.html new file mode 100644 index 000000000..fdc50cf4c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Contact_vibrationURI_attribute.html @@ -0,0 +1,77 @@ + + + + +Contact_vibrationURI_attribute + + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Makefile.am b/mobile/tct-contact-tizen-tests/contact/Makefile.am new file mode 100644 index 000000000..5eaa7f6e6 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Makefile.am @@ -0,0 +1,4 @@ +SUBDIRS = support +contact_SCRIPTS = * +contactdir = $(prefix)/opt/tct-contact-tizen-tests/contact +EXTRA_DIST = $(contact_SCRIPTS) diff --git a/mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_notexist.html b/mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_notexist.html new file mode 100644 index 000000000..51b2bc04a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_notexist.html @@ -0,0 +1,44 @@ + + + + +PersonArraySuccessCallback_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_onsuccess.html b/mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_onsuccess.html new file mode 100644 index 000000000..971f46b0d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_onsuccess.html @@ -0,0 +1,78 @@ + + + + +PersonArraySuccessCallback_onsuccess + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_contactCount_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_contactCount_attribute.html new file mode 100644 index 000000000..881f0f6ea --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_contactCount_attribute.html @@ -0,0 +1,61 @@ + + + + +Person_contactCount_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_displayContactId_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_displayContactId_attribute.html new file mode 100644 index 000000000..dba6ea1a5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_displayContactId_attribute.html @@ -0,0 +1,63 @@ + + + + +Person_displayContactId_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_displayName_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_displayName_attribute.html new file mode 100644 index 000000000..69e27723c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_displayName_attribute.html @@ -0,0 +1,59 @@ + + + + +Person_displayName_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_extend.html b/mobile/tct-contact-tizen-tests/contact/Person_extend.html new file mode 100644 index 000000000..ed5fc529a --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_extend.html @@ -0,0 +1,62 @@ + + + + + +Person_extend + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount.html b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount.html new file mode 100644 index 000000000..331a8d4b8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount.html @@ -0,0 +1,63 @@ + + + + +Person_getUsageCount + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_exist.html b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_exist.html new file mode 100644 index 000000000..6160d16ef --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_exist.html @@ -0,0 +1,53 @@ + + + + +Person_getUsageCount_exist + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_type_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_type_TypeMismatch.html new file mode 100644 index 000000000..e9ea42f18 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_type_TypeMismatch.html @@ -0,0 +1,69 @@ + + + + +Person_getUsageCount_type_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_with_type.html b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_with_type.html new file mode 100644 index 000000000..3a2cd8f02 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_getUsageCount_with_type.html @@ -0,0 +1,63 @@ + + + + +Person_getUsageCount_with_type + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_hasEmail_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_hasEmail_attribute.html new file mode 100644 index 000000000..0bfacf141 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_hasEmail_attribute.html @@ -0,0 +1,61 @@ + + + + +Person_hasEmail_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_hasPhoneNumber_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_hasPhoneNumber_attribute.html new file mode 100644 index 000000000..41aa322b0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_hasPhoneNumber_attribute.html @@ -0,0 +1,61 @@ + + + + +Person_hasPhoneNumber_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_id_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_id_attribute.html new file mode 100644 index 000000000..4122f55f8 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_id_attribute.html @@ -0,0 +1,61 @@ + + + + +Person_id_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_isFavorite_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_isFavorite_attribute.html new file mode 100644 index 000000000..a29ba1a60 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_isFavorite_attribute.html @@ -0,0 +1,63 @@ + + + + +Person_isFavorite_attribute + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_link.html b/mobile/tct-contact-tizen-tests/contact/Person_link.html new file mode 100644 index 000000000..cce987433 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_link.html @@ -0,0 +1,70 @@ + + + + +Person_link + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_link_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/Person_link_TypeMismatch.html new file mode 100644 index 000000000..dacb1f74d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_link_TypeMismatch.html @@ -0,0 +1,63 @@ + + + + +Person_link_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_link_exist.html b/mobile/tct-contact-tizen-tests/contact/Person_link_exist.html new file mode 100644 index 000000000..49edee5f9 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_link_exist.html @@ -0,0 +1,56 @@ + + + + +Person_link_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_link_misarg.html b/mobile/tct-contact-tizen-tests/contact/Person_link_misarg.html new file mode 100644 index 000000000..4219adbae --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_link_misarg.html @@ -0,0 +1,58 @@ + + + + +Person_link_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_link_personId_invalid.html b/mobile/tct-contact-tizen-tests/contact/Person_link_personId_invalid.html new file mode 100644 index 000000000..d30d2ed40 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_link_personId_invalid.html @@ -0,0 +1,68 @@ + + + + +Person_link_personId_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_notexist.html b/mobile/tct-contact-tizen-tests/contact/Person_notexist.html new file mode 100644 index 000000000..8173d5ceb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_notexist.html @@ -0,0 +1,44 @@ + + + + +Person_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_photoURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_photoURI_attribute.html new file mode 100644 index 000000000..6f0bf7ea4 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_photoURI_attribute.html @@ -0,0 +1,62 @@ + + + + +Person_photoURI_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount.html b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount.html new file mode 100644 index 000000000..d517e8189 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount.html @@ -0,0 +1,63 @@ + + + + +Person_resetUsageCount + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_exist.html b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_exist.html new file mode 100644 index 000000000..f78af50d0 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_exist.html @@ -0,0 +1,53 @@ + + + + +Person_resetUsageCount_exist + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_type_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_type_TypeMismatch.html new file mode 100644 index 000000000..74f2a82ae --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_type_TypeMismatch.html @@ -0,0 +1,69 @@ + + + + +Person_resetUsageCount_type_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_with_type.html b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_with_type.html new file mode 100644 index 000000000..40622eb3c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_resetUsageCount_with_type.html @@ -0,0 +1,63 @@ + + + + +Person_resetUsageCount_with_type + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_ringtoneURI_attribute.html b/mobile/tct-contact-tizen-tests/contact/Person_ringtoneURI_attribute.html new file mode 100644 index 000000000..ab0c12660 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_ringtoneURI_attribute.html @@ -0,0 +1,62 @@ + + + + +Person_ringtoneURI_attribute + + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_unlink.html b/mobile/tct-contact-tizen-tests/contact/Person_unlink.html new file mode 100644 index 000000000..84aa77e12 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_unlink.html @@ -0,0 +1,81 @@ + + + + +Person_unlink + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_unlink_TypeMismatch.html b/mobile/tct-contact-tizen-tests/contact/Person_unlink_TypeMismatch.html new file mode 100644 index 000000000..7ee04a330 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_unlink_TypeMismatch.html @@ -0,0 +1,74 @@ + + + + +Person_unlink_TypeMismatch + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_unlink_contactId_invalid.html b/mobile/tct-contact-tizen-tests/contact/Person_unlink_contactId_invalid.html new file mode 100644 index 000000000..76d29a729 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_unlink_contactId_invalid.html @@ -0,0 +1,69 @@ + + + + +Person_unlink_contactId_invalid + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/Person_unlink_exist.html b/mobile/tct-contact-tizen-tests/contact/Person_unlink_exist.html new file mode 100644 index 000000000..4edb3787f --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_unlink_exist.html @@ -0,0 +1,56 @@ + + + + +Person_unlink_exist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/Person_unlink_misarg.html b/mobile/tct-contact-tizen-tests/contact/Person_unlink_misarg.html new file mode 100644 index 000000000..593535f1c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/Person_unlink_misarg.html @@ -0,0 +1,69 @@ + + + + +Person_unlink_misarg + + + + +
+ + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_notexist.html b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_notexist.html new file mode 100644 index 000000000..43ef70517 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_notexist.html @@ -0,0 +1,44 @@ + + + + +PersonsChangeCallback_notexist + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsadded.html b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsadded.html new file mode 100644 index 000000000..896e687e5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsadded.html @@ -0,0 +1,92 @@ + + + + + +PersonsChangeCallback_onpersonsadded + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsremoved.html b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsremoved.html new file mode 100644 index 000000000..293e81d55 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsremoved.html @@ -0,0 +1,84 @@ + + + + + +PersonsChangeCallback_onpersonsremoved + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsupdated.html b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsupdated.html new file mode 100644 index 000000000..5d4e22120 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsupdated.html @@ -0,0 +1,96 @@ + + + + + +PersonsChangeCallback_onpersonsupdated + + + + + +
+ + + diff --git a/mobile/tct-contact-tizen-tests/contact/support/Makefile.am b/mobile/tct-contact-tizen-tests/contact/support/Makefile.am new file mode 100644 index 000000000..3665ad738 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/support/Makefile.am @@ -0,0 +1,3 @@ +supportdir = $(prefix)/opt/tct-contact-tizen-tests/contact/support +support_SCRIPTS = * +EXTRA_DIST = $(support_SCRIPTS) diff --git a/mobile/tct-contact-tizen-tests/contact/support/contact_common.js b/mobile/tct-contact-tizen-tests/contact/support/contact_common.js new file mode 100644 index 000000000..0c2fdc614 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/support/contact_common.js @@ -0,0 +1,210 @@ +/* +Copyright (c) 2012 Intel Corporation. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of works must retain the original copyright notice, this list + of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the original copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of Intel Corporation nor the names of its contributors + may be used to endorse or promote products derived from this work without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Authors: + yananx.xu + Jakub Siewierski + Tomasz Paciorek + +*/ + +var TEST_IMAGE_1 = ""; +var TEST_IMAGE_2 = ""; +var TEST_RING_1 = ""; +var TEST_RING_2 = ""; +var TYPE_MISMATCH_ERR = "TypeMismatchError"; +var INVALID_VALUES_ERR = "InvalidValuesError"; +var NOT_FOUND_ERR = "NotFoundError"; +var UNKNOWN_ERR = "UnknownError"; +var NOT_SUPPORTED_ERR = "NotSupportedError"; +var PERMISSION_DENIED_ERR = "SecurityError"; +var watcherId = null; + +function createTestContactInit() { + return { + name:new tizen.ContactName({ + firstName:"John", + lastName:"Doe", + displayName:"John Doe" + }), + addresses:[new tizen.ContactAddress({ + country:"United States", + region:"Florida", + city:"Miami", + streetAddress:"124 SW 17th Ave." + })], + phoneNumbers:[new tizen.ContactPhoneNumber("817-444-2345")], + emails:[new tizen.ContactEmailAddress("email@example.org")], + birthday:new Date(1980, 3, 4), + anniversaries:[new tizen.ContactAnniversary(new Date(2000, 4, 12))], + note:"Lorem Ipsum", + isFavorite:true + }; +} + +function createTestContact() { + return new tizen.Contact({ + name:new tizen.ContactName({ + firstName:"John", + lastName:"Doe", + displayName:"John Doe" + }), + addresses:[new tizen.ContactAddress({ + country:"United States", + region:"Florida", + city:"Miami", + streetAddress:"124 SW 17th Ave." + })], + phoneNumbers:[new tizen.ContactPhoneNumber("817-444-2345")], + emails:[new tizen.ContactEmailAddress("email@example.org")], + birthday:new Date(1980, 3, 4), + anniversaries:[new tizen.ContactAnniversary(new Date(2000, 4, 12))], + note:"Lorem Ipsum", + isFavorite:true + }); +} + +function createTestContacts(id) { + var contact1 = new tizen.Contact({ + name:new tizen.ContactName({ + firstName:"Jennifer"+id, + lastName:"Lewis", + displayName:"Jenny" + }), + addresses:[new tizen.ContactAddress({ + country:"Canada", + region:"BC", + city:"Vancouver", + streetAddress:"934 Laurel St." + })], + phoneNumbers:[new tizen.ContactPhoneNumber("416-412-5555")], + emails:[new tizen.ContactEmailAddress("jenni@somemail.com")], + note:"Some Note" + }), + contact2 = new tizen.Contact({ + name:new tizen.ContactName({ + firstName:"Edward"+id, + lastName:"Butch", + displayName:"Edward Butch" + }), + addresses:[new tizen.ContactAddress({ + country:"United Kingdom", + city:"London" + })], + phoneNumbers:[new tizen.ContactPhoneNumber("554-555-4895")] + }); + return [contact1, contact2]; +} + +function addContactsToAddressBook(contacts) { + for (i = 0; i < contacts.length; i++) { + tizen.contact.getDefaultAddressBook().add(contacts[i]); + } +} + +function removeContactsFromAddressBook(contacts) { + for (i = 0; i < contacts.length; i++) { + tizen.contact.getDefaultAddressBook().remove(contacts[i].id); + } +} + +// Define the error callback +function errorCB(err) { + console.log( 'The following error occurred: ' + err.name); +} + +// Define the add contact success callback +function contactsAddedCB(contacts) { + console.log( contacts.length + ' contact(s) were successfully added to an Address Book' ); +} + +function FailTest() +{ + var description = "Fail Test", + t = async_test("Test Description: " + description); + t.step(function() { assert_true(false); } ); + t.done(); +} +function PassTest() +{ + t.step(function() { assert_true(true); } ); + t.done(); +} + +function find(addressBook, callback, filter, sortMode) { + + function errorCB(error) { + console.log("tizen.contact.find"); + console.log('The following error occurred: ' + error.code + ' ' + error.message); + } + + try { + if(filter !== undefined && sortMode !== undefined) { + addressBook.find(callback, errorCB, filter, sortMode); + } else if(filter !== undefined && sortMode === undefined) { + addressBook.find(callback, errorCB, filter); + } else if(filter === undefined && sortMode !== undefined) { + addressBook.find(callback, errorCB, null, sortMode); + } else { + addressBook.find(callback, errorCB); + } + } catch(error) { + console.log("tizen.contact.find" + error.name + ' ' + error.message); + } +} + +function printContactsProperty(contacts, propName, subPropName, str) { + var nCont = contacts.length, i; + for (i = 0; i < nCont; i++) { + if (subPropName !== undefined && subPropName !== null && subPropName.length !== '') { + console.log(str + contacts[i][propName][subPropName]); + } else { + console.log(str + contacts[i][propName]); + } + } +} + +function printContacts(contacts) { + var nCont = contacts.length, date; + console.log(nCont + " contacts found"); + for (i = 0; i < nCont; i++) { + console.log("Contact id: " + contacts[i].id); + console.log("Contact lastUpdated: " + contacts[i].lastUpdated); + console.log("Contact displayName: " + contacts[i].name.displayName); + console.log("Contact first + last name: " + contacts[i].name.firstName + + " " + contacts[i].name.lastName); + console.log("Contact nickname: " + contacts[i].name.nicknames[0]); + console.log("Contact email: " + contacts[i].emails[0].email); + console.log("Contact phone: " + contacts[i].phoneNumbers[0].number); + date = contacts[i].birthday; + if (date !== undefined) { + console.log("Contact birthday: " + date.getFullYear() + "-" + date.getMonth() + "-" + date.getDate()); + } + console.log("Contact ringtone: " + contacts[i].ringtoneURI); + } +} +document.write(''); +document.write(''); diff --git a/mobile/tct-contact-tizen-tests/contact/support/getJsonConf.js b/mobile/tct-contact-tizen-tests/contact/support/getJsonConf.js new file mode 100644 index 000000000..6d97c2dc5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/support/getJsonConf.js @@ -0,0 +1,46 @@ +/* +Copyright (c) 2013 Intel Corporation. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of works must retain the original copyright notice, this list + of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the original copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of Intel Corporation nor the names of its contributors + may be used to endorse or promote products derived from this work without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Authors: + Li, Hao + +*/ +var USER_DIR; +$.ajax({ + url:"/tmp/TCT_CONFIG", + data:{}, + async:false, + success:function(data){ + var regEx = /DEVICE_SUITE_TARGET_30=(.+)/i; + var path = regEx.exec(data); + RESOURCE_DIR = path[1]; + TEST_DIR = "file://" + RESOURCE_DIR + "/tct-contact-tizen-tests/"; + TEST_IMAGE_1 = TEST_DIR + "webapi-tizen-contact-test_image1.png"; + TEST_IMAGE_2 = TEST_DIR + "webapi-tizen-contact-test_image2.png"; + TEST_RING_1 = TEST_DIR + "webapi-tizen-contact-test_ring1.mp3"; + TEST_RING_2 = TEST_DIR + "webapi-tizen-contact-test_ring2.mp3"; + } +}); diff --git a/mobile/tct-contact-tizen-tests/contact/support/tizen_contact_data_generators.js b/mobile/tct-contact-tizen-tests/contact/support/tizen_contact_data_generators.js new file mode 100644 index 000000000..3668a49b5 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/support/tizen_contact_data_generators.js @@ -0,0 +1,256 @@ +/* +Copyright (c) 2012 Intel Corporation. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of works must retain the original copyright notice, this list + of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the original copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of Intel Corporation nor the names of its contributors + may be used to endorse or promote products derived from this work without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Authors: + + +*/ + +function createVCard() { + var vcard = "BEGIN:VCARD\n"+ + "VERSION:3.0\n"+ + "N:Gump;Forrest\n"+ + "FN:Forrest Gump\n"+ + "ORG:Bubba Gump Shrimp Co.\n"+ + "TITLE:Shrimp Man\n"+ + "PHOTO;VALUE=URL;TYPE=GIF:http://www.example.com/dir_photos/my_photo.gif\n"+ + "TEL;TYPE=WORK,VOICE:(111) 555-1212\n"+ + "TEL;TYPE=HOME,VOICE:(404) 555-1212\n"+ + "EMAIL;TYPE=PREF,INTERNET:forrestgump@example.com\n"+ + "X-PHONETIC-FIRST-NAME:ForestGamp\n"+ + "X-TIZEN-RINGTONE:run_forest_run.snd\n"+ + "X-TIZEN-ANNIVERSARY;TYPE=Anniversary:1980-12-31\n"+ + "END:VCARD"; + return vcard; +} + +function generateFirstName() { + var firstNames = ['Anna','Mia','Jenni','Sanna','Milla','Charlie','Alex','Michael','Jorma']; + return firstNames[Math.floor(Math.random()*firstNames.length)]; +} + +function generateLastName() { + var lastNames = ['Pfifer','Leibowitz','Jackson','Stevensson','Vanhanen','Pitkanen','Pukkinen','Tukkinen','Olofsson']; + return lastNames[Math.floor(Math.random()*lastNames.length)]; +} + +function generateMiddleName() { + var middleNames = ['Ani','Christian','Manteli','X-Man','Wolvorine','MIB','Santa','Claus','Tonttu']; + return middleNames[Math.floor(Math.random()*middleNames.length)]; +} + +function generatePrefix() { + var prefixes = ['Mr','Dr','Mrs','Ms','Miss']; + return prefixes[Math.floor(Math.random()*prefixes.length)]; +} + +function generatePhoneNumber() { + var phones = ['+18009382345','+358399372573','+78124785427','+848567123','+95873624532']; + return phones[Math.floor(Math.random()*phones.length)]; +} + +function generateDisplayName() { + return generateLastName() + ' ' + generateFirstName() + ' ' + generateMiddleName(); +} + +function generateNickNames() { + var nickNames = ['norsu','mammi','echidna','Mr.Fox','fixus'], + nicks = [], i, + nickCount = Math.floor(Math.random()*3); + for(i = 0; i < nickCount; i++) { + nicks.push(nickNames[Math.floor(Math.random()*nickNames.length)]); + } + return nicks; +} + +function generatePhoneticName() { + var phoneticNames = ['Pfifer','Leibowitz','Jackson','Stevensson','Vanhanen','Pitkanen','Pukkinen','Tukkinen','Olofsson']; + return phoneticNames[Math.floor(Math.random()*phoneticNames.length)]; +} + +function generateEmail(seed) { + var emails = ['anna@gmail.com','mia@yahoo.com','jenna.lehtinen@msn.com', + 'valteri.nurminen@kolumbus.fi','jack.all.trades@intei.com', + 'alex@alex.com', 'dmitry.morozow@ya.ru', 'elena.ivanova@mail.ru']; + return emails[seed || Math.floor(Math.random()*emails.length)]; +} + +function generatePhoneNumberTypes(seed) { + var types = ['work','home'], + typesArray = [], i, + typesCount; + if(seed === undefined) { + seed = []; + } + typesCount = Math.floor(seed.length || Math.random()*4); + for (i = 0; i < typesCount; i++) { + typesArray.push(types[seed[i] || Math.floor(Math.random()*types.length)]); + } + return typesArray; +} + +function generateCountry() { + var countries = ['USA','Finland','Greece','UK','Sweden','Italy','Germany','France','Turkey']; + return countries[Math.floor(Math.random()*countries.length)]; +} + +function generateRegion() { + var regions = ['WA','UT','LA','NY','UUSIMAA','RU','MA']; + return regions[Math.floor(Math.random()*regions.length)]; +} + +function generateCity() { + var cities = ['Helsinki','Portland','St.Petersburg','Athens','Rome','Paris','New York', 'London']; + return cities[Math.floor(Math.random()*cities.length)]; +} + +function generateStreetAddress() { + var streetAddresses = ['Sinimaentie 8','Westendentie 28','Ilmallankuja 3','Times Square rd. 4','Street st. 4','Another street 9']; + return streetAddresses[Math.floor(Math.random()*streetAddresses.length)]; +} + +function generateAdditionalInformation() { + var additionalInfos = ['Main building, floor 3', 'Door code 3424', 'Ask for Hannu', 'Super informatino', 'James Bond home']; + return additionalInfos[Math.floor(Math.random()*additionalInfos.length)]; +} + +function generatePostalCode() { + var postCodes = ['03984', '30289', '90210', '038', '198207', '12345']; + return postCodes[Math.floor(Math.random()*postCodes.length)]; +} + +function generateBirthday() { + var dates = [new Date(1980,10,12), new Date(1956,6,1), new Date(1970,1,9), new Date(1930,4,19)]; + return dates[Math.floor(Math.random()*dates.length)]; +} + +function generateAnniversaryLabel() { + var anniversaries = ['Marriage', 'Honeymoon', 'Reunion', 'Another anniversary']; + return anniversaries[Math.floor(Math.random()*anniversaries.length)]; +} + +function generateOrganizationName() { + var orgName = ['Intel', 'Foxconn', 'Nokia', 'BOS', 'Micron', 'PnG', 'Sony', 'BMG']; + return orgName[Math.floor(Math.random()*orgName.length)]; +} + +function generateDepartment() { + var departments = ['sales', 'marketing', 'management', 'it support', 'rnd', 'hr', 'logistics', 'legal']; + return departments[Math.floor(Math.random()*departments.length)]; +} + +function generateOffice() { + var offices = ['Main', 'Head', 'Branch', 'Kama', 'Tolo', 'Humwee']; + return offices[Math.floor(Math.random()*offices.length)]; +} + +function generateTitle() { + var titles = ['SW Engineer', 'Manager', 'Architect', 'VP', 'CEO', 'CFO']; + return titles[Math.floor(Math.random()*titles.length)]; +} + +function generateRole() { + var roles = ['RnD', 'Sales', 'Somestuff', 'IMHO', 'Support', 'Marketing']; + return roles[Math.floor(Math.random()*roles.length)]; +} + +function generateLogoURI() { + var logos = [TEST_IMAGE_1, TEST_IMAGE_2]; + return logos[Math.floor(Math.random()*logos.length)]; +} + + +function generatePhotoURI() { + var photos = [TEST_IMAGE_1, TEST_IMAGE_2]; + return photos[Math.floor(Math.random()*photos.length)]; +} + +function generateNotes() { + var notes = ['note one','note two','note three','fifth note','fourth note']; + notesArray = [], i, + notesCount = Math.floor(Math.random()*3); + for (i = 0; i < notesCount; i++) { + notesArray.push(notes[Math.floor(Math.random()*notes.length)]); + } + return notesArray; +} + +function generateURL() { + var urls = ['http://www.myblog.com', 'http://www.myhomepage.com', 'http://www.mygallery.com']; + return urls[Math.floor(Math.random()*urls.length)]; +} + +function generateURLType() { + var urltypes = ['blog', 'homepage','company']; + return urltypes[Math.floor(Math.random()*urltypes.length)]; +} + +function generateRingtoneURI() { + var ringtones = [TEST_RING_1, TEST_RING_2]; + return ringtones[Math.floor(Math.random()*ringtones.length)]; +} + +function createContacts(number) { + var contacts = [], i; + for(i = 0; i < number; i++) { + contacts.push(createContact()); + } + return contacts; +} + + + +function printContactsProperty(contacts, propName, subPropName, str) { + var nCont = contacts.length, i; + for (i = 0; i < nCont; i++) { + if (subPropName !== undefined && subPropName !== null && subPropName.length !== '') { + console.log(str + contacts[i][propName][subPropName]); + } else { + console.log(str + contacts[i][propName]); + } + } +} + +function printContacts(contacts) { + var nCont = contacts.length, i, date; + console.log(nCont + " contacts found"); + for(i = 0; i < nCont; i++) { + console.log("Contact id: " + contacts[i].id); + console.log("Contact lastUpdated: " + contacts[i].lastUpdated); + console.log("Contact displayName: " + contacts[i].name.displayName); + console.log("Contact first + last name: " + contacts[i].name.firstName + + " " + contacts[i].name.lastName); + console.log("Contact nickname: " + contacts[i].name.nicknames[0]); + console.log("Contact email: " + contacts[i].emails[0].email); + console.log("Contact phone: " + contacts[i].phoneNumbers[0].number); + date = contacts[i].birthday; + if (date !== undefined) { + console.log("Contact birthday: " + date.getFullYear() + "-" + date.getMonth() + "-" + date.getDate()); + } + console.log("Contact categories: " + contacts[i].categories[0]); + console.log("Contact ringtone: " + contacts[i].ringtoneURI); + } +} diff --git a/mobile/tct-contact-tizen-tests/contact/support/unitcommon.js b/mobile/tct-contact-tizen-tests/contact/support/unitcommon.js new file mode 100644 index 000000000..9ad83465c --- /dev/null +++ b/mobile/tct-contact-tizen-tests/contact/support/unitcommon.js @@ -0,0 +1,586 @@ +/* + +Copyright (c) 2014 Samsung Electronics Co., Ltd. + +Licensed under the Apache License, Version 2.0 (the License); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + + +Authors: + + */ + + +MIN_BYTE = -128; +MAX_BYTE = 127; +MIN_OCTET = 0; +MAX_OCTET = 255; +MIN_SHORT = -32768; +MAX_SHORT = 32767; +MIN_UNSIGNED_SHORT = 0; +MAX_UNSIGNED_SHORT = 65535; +MIN_LONG = -2147483648; +MAX_LONG = 2147483647; +MIN_UNSIGNED_LONG = 0; +MAX_UNSIGNED_LONG = 4294967295; +MIN_LONG_LONG = -9223372036854775808; +MAX_LONG_LONG = 9223372036854775807; +MIN_UNSIGNED_LONG_LONG = 0; +MAX_UNSIGNED_LONG_LONG = 18446744073709551615; + +TYPE_MISMATCH_EXCEPTION = {name: 'TypeMismatchError'}; +NOT_FOUND_EXCEPTION = {name: 'NotFoundError'}; +INVALID_VALUES_EXCEPTION = {name: 'InvalidValuesError'}; +IO_EXCEPTION = {name: 'IOError'}; +SECURITY_EXCEPTION = {name: 'SecurityError'}; + + +(function () { + var head_src = document.head.innerHTML; + if (head_src.search(/\/testharness.js\W/) === -1) { + document.write('\n'); + } + if (head_src.search(/\/testharnessreport.js\W/) === -1) { + document.write('\n'); + } +})(); + +var _registered_types = {}; + +function _resolve_registered_type(type) { + while (type in _registered_types) { + type = _registered_types[type]; + } + return type; +} + +/** + * Method checks extra argument for none argument method. + * The only check is that method will not throw an exception. + * Example usage: + * checkExtraArgument(tizen.notification, "removeAll"); + * + * @param object object + * @param methodName string - name of the method + */ +function checkExtraArgument(object, methodName) { + var extraArgument = [ + null, + undefined, + "Tizen", + 1, + false, + ["one", "two"], + {argument: 1}, + function () {} + ], i; + + for (i = 0; i < extraArgument.length; i++) { + object[methodName](extraArgument[i]); + } +} + +/** + * Method to validate conversion. + * Example usage: + * conversionTable = getTypeConversionExceptions("functionObject", true); + * for(i = 0; i < conversionTable.length; i++) { + * errorCallback = conversionTable[i][0]; + * exceptionName = conversionTable[i][1]; + * + * assert_throws({name : exceptionName}, + * function () { + * tizen.systemsetting.setProperty("HOME_SCREEN", + * propertyValue, successCallback, errorCallback); + * }, exceptionName + " should be thrown - given incorrect errorCallback."); + * } + * + * @param conversionType + * @param isOptional + * @returns table of tables which contain value (index 0) and exceptionName (index 1) + * + */ +function getTypeConversionExceptions(conversionType, isOptional) { + var exceptionName = "TypeMismatchError", + conversionTable; + switch (conversionType) { + case "enum": + conversionTable = [ + [undefined, exceptionName], + [0, exceptionName], + [true, exceptionName], + ["dummyInvalidEnumValue", exceptionName], + [{ }, exceptionName] + ]; + if (!isOptional) { + conversionTable.push([null, exceptionName]); + } + break; + case "string": + conversionTable = [ + [undefined, exceptionName], + [null, exceptionName], + [true, exceptionName], + [false, exceptionName], + [NaN, exceptionName], + [{ }, exceptionName], + [[], exceptionName] + ]; + break; + case "double": + conversionTable = [ + [undefined, exceptionName], + [NaN, exceptionName], + [Number.POSITIVE_INFINITY, exceptionName], + [Number.NEGATIVE_INFINITY, exceptionName], + ["TIZEN", exceptionName], + [{ name : "TIZEN" }, exceptionName], + [function () { }, exceptionName] + ]; + break; + case "long": + conversionTable = [ + [undefined, exceptionName], + [NaN, exceptionName], + [Number.POSITIVE_INFINITY, exceptionName], + [Number.NEGATIVE_INFINITY, exceptionName], + ["TIZEN", exceptionName], + [{ name : "TIZEN" }, exceptionName], + [function () { }, exceptionName] + ]; + break; + case "object": + conversionTable = [ + [true, exceptionName], + [false, exceptionName], + [NaN, exceptionName], + [0, exceptionName], + ["", exceptionName], + ["TIZEN", exceptionName], + [undefined, exceptionName] + ]; + if (!isOptional) { + conversionTable.push([null, exceptionName]); + } + break; + case "functionObject": + conversionTable = [ + [true, exceptionName], + [false, exceptionName], + [NaN, exceptionName], + [0, exceptionName], + ["", exceptionName], + ["TIZEN", exceptionName], + [[], exceptionName], + [{ }, exceptionName], + [undefined, exceptionName] + ]; + if (!isOptional) { + conversionTable.push([null, exceptionName]); + } + break; + case "array": + conversionTable = [ + [true, exceptionName], + [false, exceptionName], + [NaN, exceptionName], + [0, exceptionName], + ["", exceptionName], + ["TIZEN", exceptionName], + [{ }, exceptionName], + [function () { }, exceptionName], + [undefined, exceptionName] + ]; + if (!isOptional) { + conversionTable.push([null, exceptionName]); + } + break; + case "dictionary": + conversionTable = [ + [true, exceptionName], + [false, exceptionName], + [NaN, exceptionName], + [0, exceptionName], + ["", exceptionName], + ["TIZEN", exceptionName], + [undefined, exceptionName] + ]; + if (!isOptional) { + conversionTable.push([null, exceptionName]); + } + break; + default: + assert_unreached("Fix your test. Wrong conversionType '" + conversionType + "'."); + }; + + return conversionTable; +} + + +function assert_type(obj, type, description) { + var org_type = type, prop_name, prop_type, prop_value; + + type = _resolve_registered_type(type); + + if (typeof (type) === 'string') { + type = type.toLowerCase(); + switch (type) { + case 'object': + case 'string': + case 'number': + case 'function': + case 'boolean': + case 'undefined': + case 'xml': + assert_equals(typeof (obj), type, description); + break; + case 'null': + assert_true(obj === null, description); + break; + case 'array': + assert_true(Array.isArray(obj), description); + break; + case 'date': + assert_true(obj instanceof Date, description); + break; + case 'byte': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_BYTE, description + " - value too low."); + assert_less_than_equal(obj, MAX_BYTE, description + " - value too high."); + assert_equals(Math.abs(obj % 1), 0, description + " - value is not an integer."); + break; + case 'octet': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_OCTET, description + " - value too low."); + assert_less_than_equal(obj, MAX_OCTET, description + " - value too high."); + assert_equals(obj % 1, 0, description + " - value is not an integer."); + break; + case 'short': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_SHORT, description + " - value too low."); + assert_less_than_equal(obj, MAX_SHORT, description + " - value too high."); + assert_equals(Math.abs(obj % 1), 0, description + " - value is not an integer."); + break; + case 'unsigned short': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_UNSIGNED_SHORT, description + " - value too low."); + assert_less_than_equal(obj, MAX_UNSIGNED_SHORT, description + " - value too high."); + assert_equals(obj % 1, 0, description + " - value is not an integer."); + break; + case 'long': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_LONG, description + " - value too low."); + assert_less_than_equal(obj, MAX_LONG, description + " - value too high."); + assert_equals(Math.abs(obj % 1), 0, description + " - value is not an integer."); + break; + case 'unsigned long': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_UNSIGNED_LONG, description + " - value too low."); + assert_less_than_equal(obj, MAX_UNSIGNED_LONG, description + " - value too high."); + assert_equals(obj % 1, 0, description + " - value is not an integer."); + break; + case 'long long': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_LONG_LONG, description + " - value too low."); + assert_less_than_equal(obj, MAX_LONG_LONG, description + " - value too high."); + assert_equals(Math.abs(obj % 1), 0, description + " - value is not an integer."); + break; + case 'unsigned long long': + assert_equals(typeof (obj), 'number', description); + assert_greater_than_equal(obj, MIN_UNSIGNED_LONG_LONG, description + " - value too low."); + assert_less_than_equal(obj, MAX_UNSIGNED_LONG_LONG, description + " - value too high."); + assert_equals(obj % 1, 0, description + " - value is not an integer."); + break; + case 'double': + assert_equals(typeof (obj), 'number', description); + break; + default: + assert_unreached('Fix your test. Wrong type \'' + org_type + '\''); + } + } else if (typeof (type) === 'function') { + assert_true(obj instanceof type, description); + } else if (typeof (type) === 'object') { + for (prop_name in type) { + prop_type = type[prop_name]; + if (prop_type === 'function') { + assert_inherits(obj, prop_name); + assert_equals(typeof obj[prop_name], prop_type, 'Object should have method ' + prop_name); + } else { + assert_own_property(obj, prop_name); + } + } + } else { + assert_unreached('Fix your test. Wrong type ' + org_type); + } +} + +function register_type(alias, type_spec) { + _registered_types[alias] = type_spec; +} + +/** + * Method to check if attribute is const. + * Example usage: + * check_const(tizen.bluetooth.deviceMinor, 'TOY_DOLL', 0x03, 'number', 0x29B); + * + * @param obj object to test which has const attribute + * @param attributeName attribute name. + * @param expectedValue expected value of provided attribute name + * @param expectedType expected type of provided attribute name + * @param valueToAssign value to assign in order to check if attribute value can be modified + */ +function check_const(obj, attributeName, expectedValue, expectedType, valueToAssign) { + var tmp; + if (expectedValue === valueToAssign) { + assert_unreached("Fix your test. The same values given for " + attributeName + + " in 'value' and 'valueToSet' arguments."); + } + if (typeof (attributeName) === "string") { + assert_true(attributeName in obj, "Name " + attributeName + " doesn't exist in provided object."); + assert_equals(obj[attributeName], expectedValue, "Value of " + attributeName + " is diffrent."); + if (typeof (expectedType) !== "undefined") { + if (expectedValue === null) { + assert_type(obj[attributeName], "object", "Type of " + attributeName + " is different."); + } else { + assert_type(obj[attributeName], expectedType, "Type of " + attributeName + " is different."); + } + } else { + assert_unreached("Fix your test. Wrong type " + expectedType); + } + tmp = obj[attributeName]; + obj[attributeName] = valueToAssign; + assert_equals(obj[attributeName], tmp, attributeName + " can be modified."); + } else { + assert_unreached("Fix your test. Wrong type of name " + typeof (attributeName)); + } +} + +/** + * Method to check if attribute is readonly. + * Example usage: + * check_readonly(statusNotification, "postedTime", null, 'object', new Date()); + * + * @param obj object to test which has readonly attribute + * @param attributeName attribute name. + * @param expectedValue expected value of provided attribute name + * @param expectedType expected type of provided attribute name + * @param valueToAssign value to assign in order to check if attribute value can be modified + */ +function check_readonly(obj, attributeName, expectedValue, expectedType, valueToAssign) { + check_const(obj, attributeName, expectedValue, expectedType, valueToAssign); +} + +/** + * Method to check if attribute can be set to null. + * Example usage: + * check_not_nullable(syncInfo, "mode"); + * + * @param obj object to test which has not nullable attribute + * @param attributeName attribute name. + */ +function check_not_nullable(obj, attributeName) +{ var old_value = obj[attributeName]; + obj[attributeName] = null; + assert_not_equals(obj[attributeName], null, "Attribute " + attributeName + " can be set to null."); + obj[attributeName] = old_value; +} + +/** + * Method to check NoInterfaceObject + * Example usage: + * check_no_interface_object("BluetoothAdapter") + * + * @param interfaceName interface name + */ +function check_no_interface_object(interfaceName) { + assert_throws({name: "TypeError"}, function () { + tizen[interfaceName](); + },"Wrong call as a function"); + assert_throws({name: "TypeError"}, function () { + new tizen[interfaceName](); + },"Wrong call as a new function"); + assert_throws({name: "TypeError"}, function () { + ({}) instanceof tizen[interfaceName]; + },"instanceof exception"); + assert_equals(tizen[interfaceName], undefined, interfaceName + " is not undefined."); +} + + +/** + * Method to check Constructors + * Example usage: + * check_constructor("BluetoothAdapter") + * + * @param constructorName constructor name + */ + +function check_constructor(constructorName) { + assert_true(constructorName in tizen, "No " + constructorName + " in tizen."); + assert_false({} instanceof tizen[constructorName],"Custom object is not instance of " + constructorName); + assert_throws({ + name: "TypeError" + }, function () { + tizen[constructorName](); + }, "Constructor called as function."); +} + +/** + * Method to check if given method can be overridden in a given object - (TEMPORARY REMOVED). + * That method also checks if given method exists in a given object. + * Example usage: + * check_method_exists(tizen.notification, "get"); + * + * @param obj object with method + * @param methodName name of the method to check. + */ +function check_method_exists(obj, methodName) { + assert_type(obj[methodName], 'function', "Method does not exist."); +} + +/** + * Method to check extensibility of given object. + * Method checks if new attribute and method can be added. + * Example usage: + * check_extensibility(tizen.notification); + * + * @param obj object to check + */ +function check_extensibility(obj) { + var dummyAttribute = "dummyAttributeValue", dummyMethodResult = "dummyMethodResultValue"; + obj.newDummyMethod = function() { + return dummyMethodResult; + } + assert_equals(obj.newDummyMethod(), dummyMethodResult, "Incorrect result from added method."); + + obj.newDummyAttribute = dummyAttribute; + assert_equals(obj.newDummyAttribute, dummyAttribute, "Incorrect result from added attribute."); +} + +/** + * Method to check if attribute can be modify. + * Example usage: + * check_attr(downloadRequest, "fileName", default_val, "string", "file_name.html"); + * + * @param obj object to test which has not readonly attribute + * @param attributeName attribute name. + * @param expectedValue expected value of provided attribute name + * @param expectedType expected type of provided attribute name + * @param valueToAssign value to assign in order to check if attribute value can be modified + */ +function check_attribute(obj, attributeName, expectedValue, expectedType, valueToAssign) { + if (expectedValue === valueToAssign) { + assert_unreached("Fix your test. The same values given for " + attributeName + + " in 'value' and 'valueToSet' arguments."); + } + if (typeof (attributeName) === "string") { + assert_true(attributeName in obj, "Name " + attributeName + " doesn't exist in provided object."); + assert_equals(obj[attributeName], expectedValue, "Value of " + attributeName + " is diffrent."); + if (typeof (expectedType) !== "undefined") { + if (expectedValue === null) { + assert_type(obj[attributeName], "object", "Type of " + attributeName + " is different."); + } else { + assert_type(obj[attributeName], expectedType, "Type of " + attributeName + " is different."); + } + } else { + assert_unreached("Fix your test. Wrong type " + expectedType); + } + obj[attributeName] = valueToAssign; + assert_equals(obj[attributeName], valueToAssign, attributeName + " can be modified."); + } else { + assert_unreached("Fix your test. Wrong type of name " + typeof (attributeName)); + } +} + +/** + * Method to check if whole array can be overwritten with an invalid value. + * Sample usage: + * check_invalid_array_assignments(message, "to", false); + * + * @param obj object which has the array as its property + * @param array name of the array to check + * @param isNullable indicates if the array can be null + */ +function check_invalid_array_assignments(obj, array, isNullable) { + var args = [undefined, true, false, NaN, 0, "TIZEN", {}, function () {}], + val = obj[array], i; + + if (!isNullable) { + obj[array] = null; + assert_not_equals(obj[array], null, "Non-nullable array was set to null"); + assert_type(obj[array], "array", "Non-nullable array type changed after assigning null"); + assert_equals(obj[array].toString(), val.toString(), "Non-nullable array contents changed after assigning null"); + } + + for (i = 0 ; i < args.length ; i++) { + obj[array] = args[i]; + assert_type(obj[array], "array", "Array type changed after assigning an invalid value"); + assert_equals(obj[array].toString(), val.toString(), "Array contents changed after assigning an invalid value"); + } +} + +/** + * Method to check if an object can be overwritten with an invalid value. + * Sample usage: + * check_invalid_object_assignments(message, "body", false); + * + * @param parentObj object which has the 'obj' object as its property + * @param obj name of the object to check + * @param isNullable indicates if the object can be null + */ +function check_invalid_obj_assignments(parentObj, obj, isNullable) { + var args = [undefined, true, false, NaN, 0, "TIZEN", function () {}], + val = parentObj[obj], i; + + if (!isNullable) { + parentObj[obj] = null; + assert_equals(parentObj[obj], val, "Non-nullable obj was modified after assigning null"); + } + + for (i = 0 ; i < args.length ; i++) { + parentObj[obj] = args[i]; + assert_equals(parentObj[obj], val, "The object was set to " + args[i]); + } +} + +/** + * Method to validate conversion for listeners. + * Example usage: + * incorrectListeners = getListenerConversionExceptions(["oninstalled", "onupdated", "onuninstalled"]); + * for(i = 0; i < incorrectListeners.length; i++) { + * packageInformationEventCallback = incorrectListeners[i][0]; + * exceptionName = incorrectListeners[i][1]; + * assert_throws({name : exceptionName}, + * function () { + * tizen.package.setPackageInfoEventListener(packageInformationEventCallback); + * }, exceptionName + " should be thrown - given incorrect successCallback."); + * } + * + * + * @param callbackNames Array with names + * @returns {Array} table of tables which contain incorrect listener (index 0) and exceptionName (index 1) + * + */ +function getListenerConversionExceptions(callbackNames) { + var result = [], conversionTable, i, j, listenerName; + conversionTable = getTypeConversionExceptions("functionObject", false); + + for (i = 0; i < callbackNames.length; i++) { + for (j = 0; j < conversionTable.length; j++) { + listenerName = {}; + listenerName[callbackNames[i]] = conversionTable[j][0]; + result.push([listenerName, conversionTable[j][1]]); + } + } + + return result; +} diff --git a/mobile/tct-contact-tizen-tests/icon.png b/mobile/tct-contact-tizen-tests/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..aa50240521d4dea0a9636623ffde975b350d6d18 GIT binary patch literal 15972 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 Bx$FP{ literal 0 HcmV?d00001 diff --git a/mobile/tct-contact-tizen-tests/inst.apk.py b/mobile/tct-contact-tizen-tests/inst.apk.py new file mode 100644 index 000000000..31210db16 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/inst.apk.py @@ -0,0 +1,108 @@ +#!/usr/bin/env python + +import os +import shutil +import glob +import time +import sys +import subprocess +from optparse import OptionParser, make_option +import ConfigParser + + +SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) +PARAMETERS = None +ADB_CMD = "adb" + + +def doCMD(cmd): + # Do not need handle timeout in this short script, let tool do it + print "-->> \"%s\"" % cmd + output = [] + cmd_return_code = 1 + cmd_proc = subprocess.Popen( + cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True) + + while True: + output_line = cmd_proc.stdout.readline().strip("\r\n") + cmd_return_code = cmd_proc.poll() + if output_line == '' and cmd_return_code != None: + break + sys.stdout.write("%s\n" % output_line) + sys.stdout.flush() + output.append(output_line) + + return (cmd_return_code, output) + + +def uninstPKGs(): + action_status = True + for root, dirs, files in os.walk(SCRIPT_DIR): + for file in files: + if file.endswith(".apk"): + cmd = "%s -s %s uninstall org.xwalk.%s" % ( + ADB_CMD, PARAMETERS.device, os.path.basename(os.path.splitext(file)[0])) + (return_code, output) = doCMD(cmd) + for line in output: + if "Failure" in line: + action_status = False + break + return action_status + + +def instPKGs(): + action_status = True + for root, dirs, files in os.walk(SCRIPT_DIR): + for file in files: + if file.endswith(".apk"): + cmd = "%s -s %s install %s" % (ADB_CMD, + PARAMETERS.device, os.path.join(root, file)) + (return_code, output) = doCMD(cmd) + for line in output: + if "Failure" in line: + action_status = False + break + return action_status + + +def main(): + try: + usage = "usage: inst.py -i" + opts_parser = OptionParser(usage=usage) + opts_parser.add_option( + "-s", dest="device", action="store", help="Specify device") + opts_parser.add_option( + "-i", dest="binstpkg", action="store_true", help="Install package") + opts_parser.add_option( + "-u", dest="buninstpkg", action="store_true", help="Uninstall package") + global PARAMETERS + (PARAMETERS, args) = opts_parser.parse_args() + except Exception, e: + print "Got wrong option: %s, exit ..." % e + sys.exit(1) + + if not PARAMETERS.device: + (return_code, output) = doCMD("adb devices") + for line in output: + if str.find(line, "\tdevice") != -1: + PARAMETERS.device = line.split("\t")[0] + break + + if not PARAMETERS.device: + print "No device found" + sys.exit(1) + + if PARAMETERS.binstpkg and PARAMETERS.buninstpkg: + print "-i and -u are conflict" + sys.exit(1) + + if PARAMETERS.buninstpkg: + if not uninstPKGs(): + sys.exit(1) + else: + if not instPKGs(): + sys.exit(1) + +if __name__ == "__main__": + main() + sys.exit(0) diff --git a/mobile/tct-contact-tizen-tests/inst.wgt.py b/mobile/tct-contact-tizen-tests/inst.wgt.py new file mode 100644 index 000000000..b21ccb976 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/inst.wgt.py @@ -0,0 +1,223 @@ +#!/usr/bin/env python + +import os +import shutil +import glob +import time +import sys +import subprocess +import string +from optparse import OptionParser, make_option +import ConfigParser + + +SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) +PKG_NAME = os.path.basename(SCRIPT_DIR) +PARAMETERS = None +#XW_ENV = "export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/5000/dbus/user_bus_socket" +TCT_CONFIG_FILE = "/opt/tools/TCT_CONFIG" +tct_parser = ConfigParser.ConfigParser() +tct_parser.read(TCT_CONFIG_FILE) +SRC_DIR = tct_parser.get('DEVICE', 'DEVICE_SUITE_TARGET_30') +PKG_SRC_DIR = "%s/tct/opt/%s" % (SRC_DIR, PKG_NAME) + + +def doCMD(cmd): + # Do not need handle timeout in this short script, let tool do it + print "-->> \"%s\"" % cmd + output = [] + cmd_return_code = 1 + cmd_proc = subprocess.Popen( + cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True) + + while True: + output_line = cmd_proc.stdout.readline().strip("\r\n") + cmd_return_code = cmd_proc.poll() + if output_line == '' and cmd_return_code != None: + break + sys.stdout.write("%s\n" % output_line) + sys.stdout.flush() + output.append(output_line) + + return (cmd_return_code, output) + + +def updateCMD(cmd=None): + if "pkgcmd" in cmd: + cmd = "su - %s -c '%s;%s'" % (PARAMETERS.user, XW_ENV, cmd) + return cmd +def getUSERID(): + if PARAMETERS.mode == "SDB": + cmd = "sdb -s %s shell id -u %s" % ( + PARAMETERS.device, PARAMETERS.user) + else: + cmd = "ssh %s \"id -u %s\"" % ( + PARAMETERS.device, PARAMETERS.user ) + return doCMD(cmd) + + + + +def getPKGID(pkg_name=None): + if PARAMETERS.mode == "SDB": + cmd = "sdb -s %s shell %s" % ( + PARAMETERS.device, updateCMD('pkgcmd -l')) + else: + cmd = "ssh %s \"%s\"" % ( + PARAMETERS.device, updateCMD('pkgcmd -l')) + + (return_code, output) = doCMD(cmd) + if return_code != 0: + return None + + test_pkg_id = None + for line in output: + if line.find("[" + pkg_name + "]") != -1: + pkgidIndex = line.split().index("pkgid") + test_pkg_id = line.split()[pkgidIndex+1].strip("[]") + break + return test_pkg_id + + +def doRemoteCMD(cmd=None): + if PARAMETERS.mode == "SDB": + cmd = "sdb -s %s shell %s" % (PARAMETERS.device, updateCMD(cmd)) + else: + cmd = "ssh %s \"%s\"" % (PARAMETERS.device, updateCMD(cmd)) + + return doCMD(cmd) + + +def doRemoteCopy(src=None, dest=None): + if PARAMETERS.mode == "SDB": + cmd_prefix = "sdb -s %s push" % PARAMETERS.device + cmd = "%s %s %s" % (cmd_prefix, src, dest) + else: + cmd = "scp -r %s %s:/%s" % (src, PARAMETERS.device, dest) + + (return_code, output) = doCMD(cmd) + doRemoteCMD("sync") + + if return_code != 0: + return True + else: + return False + + +def uninstPKGs(): + action_status = True + for root, dirs, files in os.walk(SCRIPT_DIR): + for file in files: + if file.endswith(".wgt"): + pkg_id = getPKGID(os.path.basename(os.path.splitext(file)[0])) + if not pkg_id: + action_status = False + continue + (return_code, output) = doRemoteCMD( + "pkgcmd -u -t wgt -q -n %s" % pkg_id) + for line in output: + if "Failure" in line: + action_status = False + break + + (return_code, output) = doRemoteCMD( + "rm -rf %s" % PKG_SRC_DIR) + if return_code != 0: + action_status = False + + return action_status + + +def instPKGs(): + action_status = True + (return_code, output) = doRemoteCMD( + "mkdir -p %s" % PKG_SRC_DIR) + if return_code != 0: + action_status = False + for root, dirs, files in os.walk(SCRIPT_DIR): + for file in files: + if file.endswith(".wgt"): + if not doRemoteCopy(os.path.join(root, file), "%s/%s" % (SRC_DIR, file)): + action_status = False + (return_code, output) = doRemoteCMD( + "pkgcmd -i -t wgt -q -p %s/%s" % (SRC_DIR, file)) + doRemoteCMD("rm -rf %s/%s" % (SRC_DIR, file)) + for line in output: + if "Failure" in line: + action_status = False + break + + (return_code, output) = doRemoteCMD("mkdir -p %s/%s" % (SRC_DIR, PKG_NAME)) + if return_code != 0: + action_status = False + + for item in os.listdir(SCRIPT_DIR): + if item.find("webapi-tizen-contact-test_") != -1: + if not doRemoteCopy("%s/%s" % (SCRIPT_DIR, item), "%s/%s/%s" % (SRC_DIR, PKG_NAME, item)): + action_status = False + + return action_status + + +def main(): + try: + usage = "usage: inst.py -i" + opts_parser = OptionParser(usage=usage) + opts_parser.add_option( + "-m", dest="mode", action="store", help="Specify mode") + opts_parser.add_option( + "-s", dest="device", action="store", help="Specify device") + opts_parser.add_option( + "-i", dest="binstpkg", action="store_true", help="Install package") + opts_parser.add_option( + "-u", dest="buninstpkg", action="store_true", help="Uninstall package") + opts_parser.add_option( + "-a", dest="user", action="store", help="User name") + global PARAMETERS + (PARAMETERS, args) = opts_parser.parse_args() + except Exception, e: + print "Got wrong option: %s, exit ..." % e + sys.exit(1) + + if not PARAMETERS.user: + PARAMETERS.user = "owner" + if not PARAMETERS.mode: + PARAMETERS.mode = "SDB" + + if PARAMETERS.mode == "SDB": + if not PARAMETERS.device: + (return_code, output) = doCMD("sdb devices") + for line in output: + if str.find(line, "\tdevice") != -1: + PARAMETERS.device = line.split("\t")[0] + break + else: + PARAMETERS.mode = "SSH" + + if not PARAMETERS.device: + print "No device provided" + sys.exit(1) + + user_info = getUSERID() + re_code = user_info[0] + if re_code == 0 : + global XW_ENV + userid = user_info[1][0] + XW_ENV = "export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%s/dbus/user_bus_socket"%str(userid) + else: + print "[Error] cmd commands error : %s"%str(user_info[1]) + sys.exit(1) + if PARAMETERS.binstpkg and PARAMETERS.buninstpkg: + print "-i and -u are conflict" + sys.exit(1) + + if PARAMETERS.buninstpkg: + if not uninstPKGs(): + sys.exit(1) + else: + if not instPKGs(): + sys.exit(1) + +if __name__ == "__main__": + main() + sys.exit(0) diff --git a/mobile/tct-contact-tizen-tests/inst.xpk.py b/mobile/tct-contact-tizen-tests/inst.xpk.py new file mode 100644 index 000000000..371cc3088 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/inst.xpk.py @@ -0,0 +1,229 @@ +#!/usr/bin/env python + +import os +import shutil +import glob +import time +import sys +import subprocess +import string +from optparse import OptionParser, make_option +import ConfigParser + + +SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) +PKG_NAME = os.path.basename(SCRIPT_DIR) +PARAMETERS = None +#XW_ENV = "export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/5000/dbus/user_bus_socket" +TCT_CONFIG_FILE = "/opt/tools/TCT_CONFIG" +tct_parser = ConfigParser.ConfigParser() +tct_parser.read(TCT_CONFIG_FILE) +SRC_DIR = tct_parser.get('DEVICE', 'DEVICE_SUITE_TARGET_30') +PKG_SRC_DIR = "%s/tct/opt/%s" % (SRC_DIR, PKG_NAME) + + +def doCMD(cmd): + # Do not need handle timeout in this short script, let tool do it + print "-->> \"%s\"" % cmd + output = [] + cmd_return_code = 1 + cmd_proc = subprocess.Popen( + cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True) + + while True: + output_line = cmd_proc.stdout.readline().strip("\r\n") + cmd_return_code = cmd_proc.poll() + if output_line == '' and cmd_return_code != None: + break + sys.stdout.write("%s\n" % output_line) + sys.stdout.flush() + output.append(output_line) + + return (cmd_return_code, output) + + +def updateCMD(cmd=None): + if "pkgcmd" in cmd: + cmd = "su - %s -c '%s;%s'" % (PARAMETERS.user, XW_ENV, cmd) + return cmd +def getUSERID(): + if PARAMETERS.mode == "SDB": + cmd = "sdb -s %s shell id -u %s" % ( + PARAMETERS.device, PARAMETERS.user) + else: + cmd = "ssh %s \"id -u %s\"" % ( + PARAMETERS.device, PARAMETERS.user ) + return doCMD(cmd) + + + + +def getPKGID(pkg_name=None): + if PARAMETERS.mode == "SDB": + cmd = "sdb -s %s shell %s" % ( + PARAMETERS.device, updateCMD('pkgcmd -l')) + else: + cmd = "ssh %s \"%s\"" % ( + PARAMETERS.device, updateCMD('pkgcmd -l')) + + (return_code, output) = doCMD(cmd) + if return_code != 0: + return None + + test_pkg_id = None + for line in output: + if line.find("[" + pkg_name + "]") != -1: + pkgidIndex = line.split().index("pkgid") + test_pkg_id = line.split()[pkgidIndex+1].strip("[]") + break + return test_pkg_id + + +def doRemoteCMD(cmd=None): + if PARAMETERS.mode == "SDB": + cmd = "sdb -s %s shell %s" % (PARAMETERS.device, updateCMD(cmd)) + else: + cmd = "ssh %s \"%s\"" % (PARAMETERS.device, updateCMD(cmd)) + + return doCMD(cmd) + + +def doRemoteCopy(src=None, dest=None): + if PARAMETERS.mode == "SDB": + cmd_prefix = "sdb -s %s push" % PARAMETERS.device + cmd = "%s %s %s" % (cmd_prefix, src, dest) + else: + cmd = "scp -r %s %s:/%s" % (src, PARAMETERS.device, dest) + + (return_code, output) = doCMD(cmd) + doRemoteCMD("sync") + + if return_code != 0: + return True + else: + return False + + +def uninstPKGs(): + action_status = True + for root, dirs, files in os.walk(SCRIPT_DIR): + if root.endswith("mediasrc"): + continue + + for file in files: + if file.endswith(".xpk"): + pkg_id = getPKGID(os.path.basename(os.path.splitext(file)[0])) + if not pkg_id: + action_status = False + continue + (return_code, output) = doRemoteCMD( + "pkgcmd -u -t xpk -q -n %s" % pkg_id) + for line in output: + if "Failure" in line: + action_status = False + break + + (return_code, output) = doRemoteCMD( + "rm -rf %s" % PKG_SRC_DIR) + if return_code != 0: + action_status = False + + (return_code, output) = doRemoteCMD( + "rm -rf %s/Others" % SRC_DIR) + if return_code != 0: + action_status = False + + return action_status + + +def instPKGs(): + action_status = True + (return_code, output) = doRemoteCMD( + "mkdir -p %s" % PKG_SRC_DIR) + if return_code != 0: + action_status = False + for root, dirs, files in os.walk(SCRIPT_DIR): + if root.endswith("mediasrc"): + continue + + for file in files: + if file.endswith(".xpk"): + if not doRemoteCopy(os.path.join(root, file), "%s/%s" % (SRC_DIR, file)): + action_status = False + (return_code, output) = doRemoteCMD( + "pkgcmd -i -t xpk -q -p %s/%s" % (SRC_DIR, file)) + doRemoteCMD("rm -rf %s/%s" % (SRC_DIR, file)) + for line in output: + if "Failure" in line: + action_status = False + break + + # Do some special copy/delete... steps + if not doRemoteCopy(os.path.join(SCRIPT_DIR, "mediasrc"), "%s/Others" % SRC_DIR): + action_status = False + + return action_status + + +def main(): + try: + usage = "usage: inst.py -i" + opts_parser = OptionParser(usage=usage) + opts_parser.add_option( + "-m", dest="mode", action="store", help="Specify mode") + opts_parser.add_option( + "-s", dest="device", action="store", help="Specify device") + opts_parser.add_option( + "-i", dest="binstpkg", action="store_true", help="Install package") + opts_parser.add_option( + "-u", dest="buninstpkg", action="store_true", help="Uninstall package") + opts_parser.add_option( + "-a", dest="user", action="store", help="User name") + global PARAMETERS + (PARAMETERS, args) = opts_parser.parse_args() + except Exception, e: + print "Got wrong option: %s, exit ..." % e + sys.exit(1) + + if not PARAMETERS.user: + PARAMETERS.user = "owner" + if not PARAMETERS.mode: + PARAMETERS.mode = "SDB" + + if PARAMETERS.mode == "SDB": + if not PARAMETERS.device: + (return_code, output) = doCMD("sdb devices") + for line in output: + if str.find(line, "\tdevice") != -1: + PARAMETERS.device = line.split("\t")[0] + break + else: + PARAMETERS.mode = "SSH" + + if not PARAMETERS.device: + print "No device provided" + sys.exit(1) + + user_info = getUSERID() + re_code = user_info[0] + if re_code == 0 : + global XW_ENV + userid = user_info[1][0] + XW_ENV = "export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%s/dbus/user_bus_socket"%str(userid) + else: + print "[Error] cmd commands error : %s"%str(user_info[1]) + sys.exit(1) + if PARAMETERS.binstpkg and PARAMETERS.buninstpkg: + print "-i and -u are conflict" + sys.exit(1) + + if PARAMETERS.buninstpkg: + if not uninstPKGs(): + sys.exit(1) + else: + if not instPKGs(): + sys.exit(1) + +if __name__ == "__main__": + main() + sys.exit(0) diff --git a/mobile/tct-contact-tizen-tests/manifest.json b/mobile/tct-contact-tizen-tests/manifest.json new file mode 100644 index 000000000..feea57a53 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/manifest.json @@ -0,0 +1,13 @@ +{ + "version": "2.4", + "name": "tct-contact-tizen-tests", + "permissions": ["tabs", "unlimited_storage", "notifications", "http://*/*", "https://*/*"], + "description": "tct-contact-tizen-tests", + "webapimanager": true, + "file_name": "manifest.json", + "app": { + "launch": { + "local_path": "index.html" + } + } +} diff --git a/mobile/tct-contact-tizen-tests/pack.py b/mobile/tct-contact-tizen-tests/pack.py new file mode 100644 index 000000000..e67cd36fd --- /dev/null +++ b/mobile/tct-contact-tizen-tests/pack.py @@ -0,0 +1,1104 @@ +#!/usr/bin/env python +# +# Copyright (c) 2014 Intel Corporation. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# +# * Redistributions of works must retain the original copyright notice, this +# list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the original copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of Intel Corporation nor the names of its contributors +# may be used to endorse or promote products derived from this work without +# specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT, +# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +# EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# Authors: +# Fan, Yugang + +import os +import shutil +import glob +import time +import sys +import stat +import random +import json +import logging +import zipfile +import signal +import subprocess +from optparse import OptionParser + +reload(sys) +sys.setdefaultencoding('utf8') + +TOOL_VERSION = "v0.1" +VERSION_FILE = "VERSION" +DEFAULT_CMD_TIMEOUT = 600 +PKG_TYPES = ["apk", "xpk", "wgt", "apk-aio", "cordova-aio", "cordova", "embeddingapi"] +PKG_MODES = ["shared", "embedded"] +PKG_ARCHS = ["x86", "arm"] +PKG_BLACK_LIST = [] +PKG_NAME = None +BUILD_PARAMETERS = None +BUILD_ROOT = None +BUILD_ROOT_SRC = None +BUILD_ROOT_SRC_PKG = None +BUILD_ROOT_SRC_PKG_APP = None +BUILD_ROOT_SRC_SUB_APP = None +BUILD_ROOT_PKG = None +BUILD_ROOT_PKG_APP = None +LOG = None +LOG_LEVEL = logging.DEBUG + + +class ColorFormatter(logging.Formatter): + + def __init__(self, msg): + logging.Formatter.__init__(self, msg) + + def format(self, record): + red, green, yellow, blue = range(4) + colors = {'INFO': green, 'DEBUG': blue, + 'WARNING': yellow, 'ERROR': red} + msg = record.msg + if msg[0] == "+": + msg = "\33[01m" + msg[1:] + "\033[0m" + elif msg[0] == "=": + msg = "\33[07m" + msg + "\033[0m" + levelname = record.levelname + if levelname in colors: + msg_color = "\033[0;%dm" % ( + 31 + colors[levelname]) + msg + "\033[0m" + record.msg = msg_color + + return logging.Formatter.format(self, record) + + +def pidExists(pid): + if pid < 0: + return False + try: + os.kill(pid, 0) + except OSError: + return False + else: + return True + + +def isWindows(): + return sys.platform == "cygwin" or sys.platform.startswith("win") + + +def killProcesses(ppid=None): + if isWindows(): + subprocess.check_call("TASKKILL /F /PID %s /T" % ppid) + else: + ppid = str(ppid) + pidgrp = [] + + def GetChildPids(ppid): + command = "ps -ef | awk '{if ($3 ==%s) print $2;}'" % str(ppid) + pids = os.popen(command).read() + pids = pids.split() + return pids + + pidgrp.extend(GetChildPids(ppid)) + for pid in pidgrp: + pidgrp.extend(GetChildPids(pid)) + + pidgrp.insert(0, ppid) + while len(pidgrp) > 0: + pid = pidgrp.pop() + try: + os.kill(int(pid), signal.SIGKILL) + return True + except OSError: + try: + os.popen("kill -9 %d" % int(pid)) + return True + except Exception: + return False + + +def safelyGetValue(origin_json=None, key=None): + if origin_json and key and key in origin_json: + return origin_json[key] + return None + + +def checkContains(origin_str=None, key_str=None): + if origin_str.upper().find(key_str.upper()) >= 0: + return True + return False + + +def getRandomStr(): + str_pool = list("abcdefghijklmnopqrstuvwxyz1234567890") + random_str = "" + for i in range(15): + index = random.randint(0, len(str_pool) - 1) + random_str = random_str + str_pool[index] + + return random_str + + +def zipDir(dir_path, zip_file): + try: + if os.path.exists(zip_file): + if not doRemove([zip_file]): + return False + if not os.path.exists(os.path.dirname(zip_file)): + os.makedirs(os.path.dirname(zip_file)) + z_file = zipfile.ZipFile(zip_file, "w") + orig_dir = os.getcwd() + os.chdir(dir_path) + for root, dirs, files in os.walk("."): + for i_file in files: + LOG.info("zip %s" % os.path.join(root, i_file)) + z_file.write(os.path.join(root, i_file)) + z_file.close() + os.chdir(orig_dir) + except Exception as e: + LOG.error("Fail to pack %s to %s: %s" % (dir_path, zip_file, e)) + return False + LOG.info("Done to zip %s to %s" % (dir_path, zip_file)) + return True + + +def overwriteCopy(src, dest, symlinks=False, ignore=None): + if not os.path.exists(dest): + os.makedirs(dest) + shutil.copystat(src, dest) + sub_list = os.listdir(src) + if ignore: + excl = ignore(src, sub_list) + sub_list = [x for x in sub_list if x not in excl] + for i_sub in sub_list: + s_path = os.path.join(src, i_sub) + d_path = os.path.join(dest, i_sub) + if symlinks and os.path.islink(s_path): + if os.path.lexists(d_path): + os.remove(d_path) + os.symlink(os.readlink(s_path), d_path) + try: + s_path_s = os.lstat(s_path) + s_path_mode = stat.S_IMODE(s_path_s.st_mode) + os.lchmod(d_path, s_path_mode) + except Exception: + pass + elif os.path.isdir(s_path): + overwriteCopy(s_path, d_path, symlinks, ignore) + else: + shutil.copy2(s_path, d_path) + + +def doCopy(src_item=None, dest_item=None): + LOG.info("Copying %s to %s" % (src_item, dest_item)) + try: + if os.path.isdir(src_item): + overwriteCopy(src_item, dest_item, symlinks=True) + else: + if not os.path.exists(os.path.dirname(dest_item)): + LOG.info("Create non-existent dir: %s" % + os.path.dirname(dest_item)) + os.makedirs(os.path.dirname(dest_item)) + shutil.copy2(src_item, dest_item) + except Exception as e: + LOG.error("Fail to copy file %s: %s" % (src_item, e)) + return False + + return True + + +def doRemove(target_file_list=None): + for i_file in target_file_list: + LOG.info("Removing %s" % i_file) + try: + if os.path.isdir(i_file): + shutil.rmtree(i_file) + else: + os.remove(i_file) + except Exception as e: + LOG.error("Fail to remove file %s: %s" % (i_file, e)) + return False + return True + + +def updateCopylistPrefix(src_default, dest_default, src_sub, dest_sub): + src_new = "" + dest_new = "" + PACK_TOOL_TAG = "PACK-TOOL-ROOT" + + if src_sub[0:len(PACK_TOOL_TAG)] == PACK_TOOL_TAG: + src_new = src_sub.replace(PACK_TOOL_TAG, BUILD_PARAMETERS.pkgpacktools) + else: + src_new = os.path.join(src_default, src_sub) + + if dest_sub[0:len(PACK_TOOL_TAG)] == PACK_TOOL_TAG: + dest_new = dest_sub.replace(PACK_TOOL_TAG, BUILD_ROOT) + else: + dest_new = os.path.join(dest_default, dest_sub) + + return (src_new, dest_new) + + +def buildSRC(src=None, dest=None, build_json=None): + if not os.path.exists(src): + LOG.info("+Src dir does not exist, skip build src process ...") + return True + if not doCopy(src, dest): + return False + if "blacklist" in build_json: + if build_json["blacklist"].count("") > 0: + build_json["blacklist"].remove("") + black_file_list = [] + for i_black in build_json["blacklist"]: + black_file_list = black_file_list + \ + glob.glob(os.path.join(dest, i_black)) + + black_file_list = list(set(black_file_list)) + if not doRemove(black_file_list): + return False + + if "copylist" in build_json: + for i_s_key in build_json["copylist"].keys(): + if i_s_key and build_json["copylist"][i_s_key]: + (src_updated, dest_updated) = updateCopylistPrefix( + src, dest, i_s_key, build_json["copylist"][i_s_key]) + if not doCopy(src_updated, dest_updated): + return False + + return True + + +def exitHandler(return_code=1): + LOG.info("+Cleaning build root folder ...") + if not BUILD_PARAMETERS.bnotclean and os.path.exists(BUILD_ROOT): + if not doRemove([BUILD_ROOT]): + LOG.error("Fail to clean build root, exit ...") + sys.exit(1) + + if return_code == 0: + LOG.info("================ DONE ================") + else: + LOG.error( + "================ Found Something Wrong !!! ================") + sys.exit(return_code) + + +def prepareBuildRoot(): + LOG.info("+Preparing build root folder ...") + global BUILD_ROOT + global BUILD_ROOT_SRC + global BUILD_ROOT_SRC_PKG + global BUILD_ROOT_SRC_PKG_APP + global BUILD_ROOT_SRC_SUB_APP + global BUILD_ROOT_PKG + global BUILD_ROOT_PKG_APP + + while True: + BUILD_ROOT = os.path.join("/tmp", getRandomStr()) + if os.path.exists(BUILD_ROOT): + continue + else: + break + + BUILD_ROOT_SRC = os.path.join(BUILD_ROOT, PKG_NAME) + BUILD_ROOT_SRC_PKG = os.path.join(BUILD_ROOT, "pkg") + BUILD_ROOT_SRC_PKG_APP = os.path.join(BUILD_ROOT, "pkg-app") + BUILD_ROOT_SRC_SUB_APP = os.path.join(BUILD_ROOT, "sub-app") + BUILD_ROOT_PKG = os.path.join(BUILD_ROOT, "pkg", "opt", PKG_NAME) + BUILD_ROOT_PKG_APP = os.path.join(BUILD_ROOT, "pkg-app", "opt", PKG_NAME) + + if not doCopy(BUILD_PARAMETERS.srcdir, BUILD_ROOT_SRC): + return False + if not doRemove( + glob.glob(os.path.join(BUILD_ROOT_SRC, "%s*.zip" % PKG_NAME))): + return False + + return True + + +def doCMD(cmd, time_out=DEFAULT_CMD_TIMEOUT, no_check_return=False): + LOG.info("Doing CMD: [ %s ]" % cmd) + pre_time = time.time() + cmd_proc = subprocess.Popen(args=cmd, shell=True) + while True: + cmd_exit_code = cmd_proc.poll() + elapsed_time = time.time() - pre_time + if cmd_exit_code is None: + if elapsed_time >= time_out: + killProcesses(ppid=cmd_proc.pid) + LOG.error("Timeout to exe CMD") + return False + else: + if not no_check_return and cmd_exit_code != 0: + LOG.error("Fail to exe CMD") + return False + break + time.sleep(2) + return True + + +def doCMDWithOutput(cmd, time_out=DEFAULT_CMD_TIMEOUT): + LOG.info("Doing CMD: [ %s ]" % cmd) + pre_time = time.time() + output = [] + cmd_return_code = 1 + cmd_proc = subprocess.Popen( + cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True) + + while True: + output_line = cmd_proc.stdout.readline().strip("\r\n") + cmd_return_code = cmd_proc.poll() + elapsed_time = time.time() - pre_time + if cmd_return_code is None: + if elapsed_time >= time_out: + killProcesses(ppid=cmd_proc.pid) + LOG.error("Timeout to exe CMD") + return False + elif output_line == '' and cmd_return_code is not None: + break + + sys.stdout.write("%s\n" % output_line) + sys.stdout.flush() + output.append(output_line) + if cmd_return_code != 0: + LOG.error("Fail to exe CMD") + + return (cmd_return_code, output) + + +def packXPK(build_json=None, app_src=None, app_dest=None, app_name=None): + pack_tool = os.path.join(BUILD_ROOT, "make_xpk.py") + if not os.path.exists(pack_tool): + if not doCopy( + os.path.join(BUILD_PARAMETERS.pkgpacktools, "make_xpk.py"), + pack_tool): + return False + orig_dir = os.getcwd() + os.chdir(BUILD_ROOT) + if os.path.exists("key.file"): + if not doRemove(["key.file"]): + os.chdir(orig_dir) + return False + + key_file = safelyGetValue(build_json, "key-file") + if key_file == "key.file": + LOG.error( + "\"key.file\" is reserved name for default key file, " + "pls change the key file name ...") + os.chdir(orig_dir) + return False + if key_file: + pack_cmd = "python make_xpk.py %s %s -o %s" % ( + app_src, key_file, os.path.join(app_dest, "%s.xpk" % app_name)) + else: + pack_cmd = "python make_xpk.py %s key.file -o %s" % ( + app_src, os.path.join(app_dest, "%s.xpk" % app_name)) + if not doCMD(pack_cmd, DEFAULT_CMD_TIMEOUT): + os.chdir(orig_dir) + return False + + os.chdir(orig_dir) + return True + + +def packWGT(build_json=None, app_src=None, app_dest=None, app_name=None): + if not zipDir(app_src, os.path.join(app_dest, "%s.wgt" % app_name)): + return False + + if BUILD_PARAMETERS.signature == True: + if safelyGetValue(build_json, "sign-flag") == "true": + if not os.path.exists(os.path.join(BUILD_ROOT, "signing")): + if not doCopy( + os.path.join(BUILD_PARAMETERS.pkgpacktools, "signing"), + os.path.join(BUILD_ROOT, "signing")): + return False + signing_cmd = "%s --dist platform %s" % ( + os.path.join(BUILD_ROOT, "signing", "sign-widget.sh"), + os.path.join(app_dest, "%s.wgt" % app_name)) + if not doCMD(signing_cmd, DEFAULT_CMD_TIMEOUT): + return False + + return True + + +def packAPK(build_json=None, app_src=None, app_dest=None, app_name=None): + app_name = app_name.replace("-", "_") + + if not os.path.exists(os.path.join(BUILD_ROOT, "crosswalk")): + if not doCopy( + os.path.join(BUILD_PARAMETERS.pkgpacktools, "crosswalk"), + os.path.join(BUILD_ROOT, "crosswalk")): + return False + + files = glob.glob(os.path.join(BUILD_ROOT, "crosswalk", "*.apk")) + if files: + if not doRemove(files): + return False + + ext_opt = "" + cmd_opt = "" + url_opt = "" + mode_opt = "" + arch_opt = "" + icon_opt = "" + + common_opts = safelyGetValue(build_json, "apk-common-opts") + if common_opts is None: + common_opts = "" + + tmp_opt = safelyGetValue(build_json, "apk-ext-opt") + if tmp_opt: + ext_opt = "--extensions='%s'" % os.path.join(BUILD_ROOT_SRC, tmp_opt) + + tmp_opt = safelyGetValue(build_json, "apk-cmd-opt") + if tmp_opt: + cmd_opt = "--xwalk-command-line='%s'" % tmp_opt + + tmp_opt = safelyGetValue(build_json, "apk-url-opt") + if tmp_opt: + url_opt = "--app-url='%s'" % tmp_opt + + tmp_opt = safelyGetValue(build_json, "apk-mode-opt") + if tmp_opt: + if tmp_opt in PKG_MODES: + mode_opt = "--mode=%s" % tmp_opt + else: + LOG.error("Got wrong app mode: %s" % tmp_opt) + return False + else: + mode_opt = "--mode=%s" % BUILD_PARAMETERS.pkgmode + + tmp_opt = safelyGetValue(build_json, "apk-arch-opt") + if tmp_opt: + if tmp_opt in PKG_ARCHS: + arch_opt = "--arch=%s" % tmp_opt + else: + LOG.error("Got wrong app arch: %s" % tmp_opt) + return False + else: + arch_opt = "--arch=%s" % BUILD_PARAMETERS.pkgarch + + tmp_opt = safelyGetValue(build_json, "apk-icon-opt") + if tmp_opt: + icon_opt = "--icon=%s" % tmp_opt + elif tmp_opt == "": + icon_opt = "" + else: + icon_opt = "--icon=%s/icon.png" % app_src + + if safelyGetValue(build_json, "apk-type") == "MANIFEST": + pack_cmd = "python make_apk.py --package=org.xwalk.%s " \ + "--manifest=%s/manifest.json %s %s %s %s %s" % ( + app_name, app_src, mode_opt, arch_opt, + ext_opt, cmd_opt, common_opts) + elif safelyGetValue(build_json, "apk-type") == "HOSTEDAPP": + if not url_opt: + LOG.error( + "Fail to find the key \"apk-url-opt\" for hosted APP packing") + return False + pack_cmd = "python make_apk.py --package=org.xwalk.%s --name=%s %s " \ + "%s %s %s %s %s" % ( + app_name, app_name, mode_opt, arch_opt, ext_opt, + cmd_opt, url_opt, common_opts) + else: + pack_cmd = "python make_apk.py --package=org.xwalk.%s --name=%s " \ + "--app-root=%s --app-local-path=index.html %s %s " \ + "%s %s %s %s" % ( + app_name, app_name, app_src, icon_opt, mode_opt, + arch_opt, ext_opt, cmd_opt, common_opts) + + orig_dir = os.getcwd() + os.chdir(os.path.join(BUILD_ROOT, "crosswalk")) + if not doCMD(pack_cmd, DEFAULT_CMD_TIMEOUT): + os.chdir(orig_dir) + return False + + files = glob.glob(os.path.join(BUILD_ROOT, "crosswalk", "*.apk")) + if files: + if not doCopy(files[0], os.path.join(app_dest, "%s.apk" % app_name)): + os.chdir(orig_dir) + return False + else: + LOG.error("Fail to find the apk file") + os.chdir(orig_dir) + return False + + os.chdir(orig_dir) + return True + + +def packCordova(build_json=None, app_src=None, app_dest=None, app_name=None): + pack_tool = os.path.join(BUILD_ROOT, "cordova") + app_name = app_name.replace("-", "_") + if not os.path.exists(pack_tool): + if not doCopy( + os.path.join(BUILD_PARAMETERS.pkgpacktools, "cordova"), + pack_tool): + return False + + plugin_tool = os.path.join(BUILD_ROOT, "cordova_plugins") + if not os.path.exists(plugin_tool): + if not doCopy( + os.path.join(BUILD_PARAMETERS.pkgpacktools, "cordova_plugins"), + plugin_tool): + return False + + orig_dir = os.getcwd() + os.chdir(pack_tool) + pack_cmd = "bin/create %s org.xwalk.%s %s" % ( + app_name, app_name, app_name) + if not doCMD(pack_cmd, DEFAULT_CMD_TIMEOUT): + os.chdir(orig_dir) + return False + + os.chdir(os.path.join(pack_tool, app_name)) + plugin_dirs = os.listdir(plugin_tool) + for i_dir in plugin_dirs: + i_plugin_dir = os.path.join(plugin_tool, i_dir) + plugin_install_cmd = "plugman install --platform android --project " \ + "./ --plugin %s" % i_plugin_dir + if not doCMD(plugin_install_cmd, DEFAULT_CMD_TIMEOUT): + os.chdir(orig_dir) + return False + os.chdir(pack_tool) + + if not doCopy(app_src, os.path.join(pack_tool, app_name, "assets", "www")): + os.chdir(orig_dir) + return False + os.chdir(os.path.join(BUILD_ROOT, "cordova", app_name)) + pack_cmd = "./cordova/build" + if not doCMD(pack_cmd, DEFAULT_CMD_TIMEOUT): + os.chdir(orig_dir) + return False + + if not doCopy(os.path.join( + BUILD_ROOT, "cordova", app_name, "bin", "%s-debug.apk" % + app_name), + os.path.join(app_dest, "%s.apk" % app_name)): + os.chdir(orig_dir) + return False + os.chdir(orig_dir) + return True + + +def packEmbeddingAPI( + build_json=None, app_src=None, app_dest=None, app_name=None): + app_name = app_name.replace("-", "_") + + library_dir_name = safelyGetValue(build_json, "embeddingapi-library-name") + if not library_dir_name: + LOG.error("Fail to get embeddingapi-library-name ...") + return False + + new_library_dir_name = "core_library" + pack_tool = os.path.join(app_src, "..", new_library_dir_name) + + if os.path.exists(pack_tool): + if not doRemove([pack_tool]): + return False + + if not doCopy( + os.path.join(BUILD_PARAMETERS.pkgpacktools, library_dir_name), + pack_tool): + return False + + if os.path.exists(os.path.join(pack_tool, "bin", "res", "crunch")): + if not doRemove([os.path.join(pack_tool, "bin", "res", "crunch")]): + return False + + orig_dir = os.getcwd() + android_project_path = os.path.join(app_src, "android-project") + try: + os.makedirs(android_project_path) + except Exception as e: + LOG.error("Fail to create tmp project dir: %s" % e) + return False + + (return_code, output) = doCMDWithOutput("android list target") + api_level = "" + for line in output: + if "API level" in line: + api_level = line.split(":")[1].strip() + break + if not api_level: + LOG.error("Fail to get Android API Level") + os.chdir(orig_dir) + return False + + android_project_cmd = "android create project --name %s --target " \ + "android-%s --path %s --package com.%s " \ + "--activity MainActivity" % ( + app_name, api_level, android_project_path, app_name) + if not doCMD(android_project_cmd): + os.chdir(orig_dir) + return False + + try: + update_file = open( + os.path.join(android_project_path, "project.properties"), "a+") + update_file.writelines( + "{0}\n".format( + "android.library.reference.1=../%s" % + new_library_dir_name)) + update_file.close() + except Exception as e: + LOG.error( + "Fail to update %s: %s" % + (os.path.join( + android_project_path, + "project.properties"), + e)) + os.chdir(orig_dir) + return False + + if not doCopy(os.path.join(android_project_path, "build.xml"), + os.path.join(app_src, "build.xml")): + os.chdir(orig_dir) + return False + + if not doCopy( + os.path.join(android_project_path, "project.properties"), + os.path.join(app_src, "project.properties")): + os.chdir(orig_dir) + return False + + if not doCopy( + os.path.join(android_project_path, "local.properties"), + os.path.join(app_src, "local.properties")): + os.chdir(orig_dir) + return False + + if not doCopy( + os.path.join(android_project_path, "local.properties"), + os.path.join(pack_tool, "local.properties")): + os.chdir(orig_dir) + return False + + os.chdir(app_src) + if not doCMD("ant debug"): + os.chdir(orig_dir) + return False + + if not doCopy( + os.path.join(app_src, "bin", "%s-debug.apk" % app_name), + os.path.join(app_dest, "%s.apk" % app_name)): + os.chdir(orig_dir) + return False + os.chdir(orig_dir) + return True + + +def packAPP(build_json=None, app_src=None, app_dest=None, app_name=None): + LOG.info("Packing %s(%s)" % (app_name, app_src)) + if not os.path.exists(app_dest): + try: + os.makedirs(app_dest) + except Exception as e: + LOG.error("Fail to init package install dest dir: %s" % e) + return False + + if checkContains(BUILD_PARAMETERS.pkgtype, "XPK"): + if not packXPK(build_json, app_src, app_dest, app_name): + return False + elif checkContains(BUILD_PARAMETERS.pkgtype, "WGT"): + if not packWGT(build_json, app_src, app_dest, app_name): + return False + elif checkContains(BUILD_PARAMETERS.pkgtype, "APK"): + if not packAPK(build_json, app_src, app_dest, app_name): + return False + elif checkContains(BUILD_PARAMETERS.pkgtype, "CORDOVA"): + if not packCordova(build_json, app_src, app_dest, app_name): + return False + elif checkContains(BUILD_PARAMETERS.pkgtype, "EMBEDDINGAPI"): + if not packEmbeddingAPI(build_json, app_src, app_dest, app_name): + return False + else: + LOG.error("Got wrong pkg type: %s" % BUILD_PARAMETERS.pkgtype) + return False + + LOG.info("Success to pack APP: %s" % app_name) + return True + + +def createIndexFile(index_file_path=None, hosted_app=None): + try: + if hosted_app: + index_url = "http://127.0.0.1/opt/%s/webrunner/index.html?" \ + "testsuite=../tests.xml&testprefix=../../.." % PKG_NAME + else: + index_url = "opt/%s/webrunner/index.html?testsuite=../tests.xml" \ + "&testprefix=../../.." % PKG_NAME + html_content = "" % index_url + index_file = open(index_file_path, "w") + index_file.write(html_content) + index_file.close() + except Exception as e: + LOG.error("Fail to create index.html for top-app: %s" % e) + return False + LOG.info("Success to create index file %s" % index_file_path) + return True + + +def buildSubAPP(app_dir=None, build_json=None, app_dest_default=None): + app_dir_inside = safelyGetValue(build_json, "app-dir") + if app_dir_inside: + app_dir = app_dir_inside + LOG.info("+Building sub APP(s) from %s ..." % app_dir) + app_dir = os.path.join(BUILD_ROOT_SRC, app_dir) + app_name = safelyGetValue(build_json, "app-name") + if not app_name: + app_name = os.path.basename(app_dir) + + app_src = os.path.join(BUILD_ROOT_SRC_SUB_APP, app_name) + if buildSRC(app_dir, app_src, build_json): + app_dest = safelyGetValue(build_json, "install-path") + if app_dest: + app_dest = os.path.join(app_dest_default, app_dest) + else: + app_dest = app_dest_default + + if safelyGetValue(build_json, "all-apps") == "true": + app_dirs = os.listdir(app_src) + apps_num = 0 + for i_app_dir in app_dirs: + if os.path.isdir(os.path.join(app_src, i_app_dir)): + i_app_name = os.path.basename(i_app_dir) + if not packAPP( + build_json, os.path.join(app_src, i_app_name), + app_dest, i_app_name): + return False + else: + apps_num = apps_num + 1 + if apps_num > 0: + LOG.info("Totally packed %d apps in %s" % (apps_num, app_dir)) + return True + else: + return packAPP(build_json, app_src, app_dest, app_name) + return False + + +def buildPKGAPP(build_json=None): + LOG.info("+Building package APP ...") + if not doCopy(os.path.join(BUILD_ROOT_SRC, "icon.png"), + os.path.join(BUILD_ROOT_SRC_PKG_APP, "icon.png")): + return False + + if checkContains(BUILD_PARAMETERS.pkgtype, "XPK"): + if not doCopy( + os.path.join(BUILD_ROOT_SRC, "manifest.json"), + os.path.join(BUILD_ROOT_SRC_PKG_APP, "manifest.json")): + return False + elif checkContains(BUILD_PARAMETERS.pkgtype, "WGT"): + if not doCopy(os.path.join(BUILD_ROOT_SRC, "config.xml"), + os.path.join(BUILD_ROOT_SRC_PKG_APP, "config.xml")): + return False + + hosted_app = False + if safelyGetValue(build_json, "hosted-app") == "true": + hosted_app = True + if not createIndexFile( + os.path.join(BUILD_ROOT_SRC_PKG_APP, "index.html"), hosted_app): + return False + + if not hosted_app: + if "blacklist" not in build_json: + build_json.update({"blacklist": []}) + build_json["blacklist"].extend(PKG_BLACK_LIST) + if not buildSRC(BUILD_ROOT_SRC, BUILD_ROOT_PKG_APP, build_json): + return False + + if "subapp-list" in build_json: + for i_sub_app in build_json["subapp-list"].keys(): + if not buildSubAPP( + i_sub_app, build_json["subapp-list"][i_sub_app], + BUILD_ROOT_PKG_APP): + return False + + if not packAPP( + build_json, BUILD_ROOT_SRC_PKG_APP, BUILD_ROOT_PKG, PKG_NAME): + return False + + return True + + +def buildPKG(build_json=None): + if "blacklist" not in build_json: + build_json.update({"blacklist": []}) + build_json["blacklist"].extend(PKG_BLACK_LIST) + if not buildSRC(BUILD_ROOT_SRC, BUILD_ROOT_PKG, build_json): + return False + + if "subapp-list" in build_json: + for i_sub_app in build_json["subapp-list"].keys(): + if not buildSubAPP( + i_sub_app, build_json["subapp-list"][i_sub_app], + BUILD_ROOT_PKG): + return False + + if "pkg-app" in build_json: + if not buildPKGAPP(build_json["pkg-app"]): + return False + + return True + + +def main(): + global LOG + LOG = logging.getLogger("pack-tool") + LOG.setLevel(LOG_LEVEL) + stream_handler = logging.StreamHandler() + stream_handler.setLevel(LOG_LEVEL) + stream_formatter = ColorFormatter("[%(asctime)s] %(message)s") + stream_handler.setFormatter(stream_formatter) + LOG.addHandler(stream_handler) + + try: + usage = "Usage: ./pack.py -t apk -m shared -a x86" + opts_parser = OptionParser(usage=usage) + opts_parser.add_option( + "-c", + "--cfg", + dest="pkgcfg", + help="specify the path of config json file") + opts_parser.add_option( + "-t", + "--type", + dest="pkgtype", + help="specify the pkg type, e.g. apk, xpk, wgt ...") + opts_parser.add_option( + "-m", + "--mode", + dest="pkgmode", + help="specify the apk mode, e.g. shared, embedded") + opts_parser.add_option( + "-a", + "--arch", + dest="pkgarch", + help="specify the apk arch, e.g. x86, arm") + opts_parser.add_option( + "-d", + "--dest", + dest="destdir", + help="specify the installation folder for packed package") + opts_parser.add_option( + "-s", + "--src", + dest="srcdir", + help="specify the path of pkg resource for packing") + opts_parser.add_option( + "--tools", + dest="pkgpacktools", + help="specify the parent folder of pack tools") + opts_parser.add_option( + "--notclean", + dest="bnotclean", + action="store_true", + help="disable the build root clean after the packing") + opts_parser.add_option( + "--sign", + dest="signature", + action="store_true", + help="signature operation will be done when packing wgt") + opts_parser.add_option( + "-v", + "--version", + dest="bversion", + action="store_true", + help="show this tool's version") + opts_parser.add_option( + "--pkg-version", + dest="pkgversion", + help="specify the pkg version, e.g. 0.0.0.1") + + if len(sys.argv) == 1: + sys.argv.append("-h") + + global BUILD_PARAMETERS + (BUILD_PARAMETERS, args) = opts_parser.parse_args() + except Exception as e: + LOG.error("Got wrong options: %s, exit ..." % e) + sys.exit(1) + + if BUILD_PARAMETERS.bversion: + print "Version: %s" % TOOL_VERSION + sys.exit(0) + + if not BUILD_PARAMETERS.srcdir: + BUILD_PARAMETERS.srcdir = os.getcwd() + BUILD_PARAMETERS.srcdir = os.path.expanduser(BUILD_PARAMETERS.srcdir) + + if not os.path.exists( + os.path.join(BUILD_PARAMETERS.srcdir, "..", "..", VERSION_FILE)): + if not os.path.exists( + os.path.join(BUILD_PARAMETERS.srcdir, "..", VERSION_FILE)): + if not os.path.exists( + os.path.join(BUILD_PARAMETERS.srcdir, VERSION_FILE)): + LOG.info( + "Not found pkg version file, try to use option --pkg-version") + pkg_version_file_path = None + else: + pkg_version_file_path = os.path.join( + BUILD_PARAMETERS.srcdir, VERSION_FILE) + else: + pkg_version_file_path = os.path.join( + BUILD_PARAMETERS.srcdir, "..", VERSION_FILE) + else: + pkg_version_file_path = os.path.join( + BUILD_PARAMETERS.srcdir, "..", "..", VERSION_FILE) + + try: + pkg_main_version = 0 + pkg_release_version = 0 + if BUILD_PARAMETERS.pkgversion: + LOG.info("Using %s as pkg version " % BUILD_PARAMETERS.pkgversion) + pkg_main_version = BUILD_PARAMETERS.pkgversion + else: + if pkg_version_file_path is not None: + LOG.info("Using pkg version file: %s" % pkg_version_file_path) + with open(pkg_version_file_path, "rt") as pkg_version_file: + pkg_version_raw = pkg_version_file.read() + pkg_version_file.close() + pkg_version_json = json.loads(pkg_version_raw) + pkg_main_version = pkg_version_json["main-version"] + pkg_release_version = pkg_version_json["release-version"] + except Exception as e: + LOG.error("Fail to read pkg version file: %s, exit ..." % e) + sys.exit(1) + + if not BUILD_PARAMETERS.pkgtype: + LOG.error("No pkg type provided, exit ...") + sys.exit(1) + elif not BUILD_PARAMETERS.pkgtype in PKG_TYPES: + LOG.error("Wrong pkg type, only support: %s, exit ..." % + PKG_TYPES) + sys.exit(1) + + if BUILD_PARAMETERS.pkgtype == "apk" or \ + BUILD_PARAMETERS.pkgtype == "apk-aio": + if not BUILD_PARAMETERS.pkgmode: + LOG.error("No pkg mode option provided, exit ...") + sys.exit(1) + elif not BUILD_PARAMETERS.pkgmode in PKG_MODES: + LOG.error( + "Wrong pkg mode option provided, only support:%s, exit ..." % + PKG_MODES) + sys.exit(1) + + if not BUILD_PARAMETERS.pkgarch: + LOG.error("No pkg arch option provided, exit ...") + sys.exit(1) + elif not BUILD_PARAMETERS.pkgarch in PKG_ARCHS: + LOG.error( + "Wrong pkg arch option provided, only support:%s, exit ..." % + PKG_ARCHS) + sys.exit(1) + + if BUILD_PARAMETERS.pkgtype == "apk-aio" or \ + BUILD_PARAMETERS.pkgtype == "cordova-aio": + if not BUILD_PARAMETERS.destdir or not os.path.exists( + BUILD_PARAMETERS.destdir): + LOG.error("No all-in-one installation dest dir found, exit ...") + sys.exit(1) + + elif not BUILD_PARAMETERS.destdir: + BUILD_PARAMETERS.destdir = BUILD_PARAMETERS.srcdir + BUILD_PARAMETERS.destdir = os.path.expanduser(BUILD_PARAMETERS.destdir) + + if not BUILD_PARAMETERS.pkgpacktools: + BUILD_PARAMETERS.pkgpacktools = os.path.join( + BUILD_PARAMETERS.srcdir, "..", "..", "tools") + BUILD_PARAMETERS.pkgpacktools = os.path.expanduser( + BUILD_PARAMETERS.pkgpacktools) + + config_json = None + if BUILD_PARAMETERS.pkgcfg: + config_json_file_path = BUILD_PARAMETERS.pkgcfg + else: + config_json_file_path = os.path.join( + BUILD_PARAMETERS.srcdir, "suite.json") + try: + LOG.info("Using config json file: %s" % config_json_file_path) + with open(config_json_file_path, "rt") as config_json_file: + config_raw = config_json_file.read() + config_json_file.close() + config_json = json.loads(config_raw) + except Exception as e: + LOG.error("Fail to read config json file: %s, exit ..." % e) + sys.exit(1) + + global PKG_NAME + PKG_NAME = safelyGetValue(config_json, "pkg-name") + if not PKG_NAME: + PKG_NAME = os.path.basename(BUILD_PARAMETERS.srcdir) + LOG.warning( + "Fail to read pkg name from json, " + "using src dir name as pkg name ...") + + LOG.info("================= %s (%s-%s) ================" % + (PKG_NAME, pkg_main_version, pkg_release_version)) + + if not safelyGetValue(config_json, "pkg-list"): + LOG.error("Fail to read pkg-list, exit ...") + sys.exit(1) + + pkg_json = None + for i_pkg in config_json["pkg-list"].keys(): + i_pkg_list = i_pkg.replace(" ", "").split(",") + if BUILD_PARAMETERS.pkgtype in i_pkg_list: + pkg_json = config_json["pkg-list"][i_pkg] + + if not pkg_json: + LOG.error("Fail to read pkg json, exit ...") + sys.exit(1) + + if not prepareBuildRoot(): + exitHandler(1) + + if "pkg-blacklist" in config_json: + PKG_BLACK_LIST.extend(config_json["pkg-blacklist"]) + + if not buildPKG(pkg_json): + exitHandler(1) + + LOG.info("+Building package ...") + if BUILD_PARAMETERS.pkgtype == "apk-aio" or \ + BUILD_PARAMETERS.pkgtype == "cordova-aio": + pkg_file_list = os.listdir(os.path.join(BUILD_ROOT, "pkg")) + for i_file in pkg_file_list: + if not doCopy( + os.path.join(BUILD_ROOT, "pkg", i_file), + os.path.join(BUILD_PARAMETERS.destdir, i_file)): + exitHandler(1) + else: + pkg_file = os.path.join( + BUILD_PARAMETERS.destdir, + "%s-%s.%s.zip" % + (PKG_NAME, + pkg_main_version, + pkg_release_version)) + + + if not zipDir(os.path.join(BUILD_ROOT, "pkg"), pkg_file): + exitHandler(1) + +if __name__ == "__main__": + main() + exitHandler(0) diff --git a/mobile/tct-contact-tizen-tests/resources/COPYING b/mobile/tct-contact-tizen-tests/resources/COPYING new file mode 100644 index 000000000..35ac8be10 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/resources/COPYING @@ -0,0 +1,12 @@ +The testharness files come from +https://github.com/w3c/testharness.js (commit 2486f01bf4c58de1c1b7cb39322af7b55c6c700b) +without any modification. + +These tests are copyright by W3C and/or the author listed in the test +file. The tests are dual-licensed under the W3C Test Suite License: +http://www.w3.org/Consortium/Legal/2008/04-testsuite-license +and the BSD 3-clause License: +http://www.w3.org/Consortium/Legal/2008/03-bsd-license +under W3C's test suite licensing policy: +http://www.w3.org/Consortium/Legal/2008/04-testsuite-copyright + diff --git a/mobile/tct-contact-tizen-tests/resources/testharness.css b/mobile/tct-contact-tizen-tests/resources/testharness.css new file mode 100644 index 000000000..3967004bb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/resources/testharness.css @@ -0,0 +1,107 @@ +html { + font-family:DejaVu Sans, Bitstream Vera Sans, Arial, Sans; +} + +#log .warning, +#log .warning a { + color: black; + background: yellow; +} + +#log .error, +#log .error a { + color: white; + background: red; +} + +#log pre { + border: 1px solid black; + padding: 1em; +} + +section#summary { + margin-bottom:1em; +} + +table#results { + border-collapse:collapse; + table-layout:fixed; + width:100%; +} + +table#results th:first-child, +table#results td:first-child { + width:4em; +} + +table#results th:last-child, +table#results td:last-child { + width:50%; +} + +table#results.assertions th:last-child, +table#results.assertions td:last-child { + width:35%; +} + +table#results th { + padding:0; + padding-bottom:0.5em; + border-bottom:medium solid black; +} + +table#results td { + padding:1em; + padding-bottom:0.5em; + border-bottom:thin solid black; +} + +tr.pass > td:first-child { + color:green; +} + +tr.fail > td:first-child { + color:red; +} + +tr.timeout > td:first-child { + color:red; +} + +tr.notrun > td:first-child { + color:blue; +} + +.pass > td:first-child, .fail > td:first-child, .timeout > td:first-child, .notrun > td:first-child { + font-variant:small-caps; +} + +table#results span { + display:block; +} + +table#results span.expected { + font-family:DejaVu Sans Mono, Bitstream Vera Sans Mono, Monospace; + white-space:pre; +} + +table#results span.actual { + font-family:DejaVu Sans Mono, Bitstream Vera Sans Mono, Monospace; + white-space:pre; +} + +span.ok { + color:green; +} + +tr.error { + color:red; +} + +span.timeout { + color:red; +} + +span.ok, span.timeout, span.error { + font-variant:small-caps; +} \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/resources/testharness.js b/mobile/tct-contact-tizen-tests/resources/testharness.js new file mode 100644 index 000000000..ecc050c28 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/resources/testharness.js @@ -0,0 +1,2353 @@ +/*global self*/ +/*jshint latedef: nofunc*/ +/* +Distributed under both the W3C Test Suite License [1] and the W3C +3-clause BSD License [2]. To contribute to a W3C Test Suite, see the +policies and contribution forms [3]. + +[1] http://www.w3.org/Consortium/Legal/2008/04-testsuite-license +[2] http://www.w3.org/Consortium/Legal/2008/03-bsd-license +[3] http://www.w3.org/2004/10/27-testcases +*/ + +/* Documentation is in docs/api.md */ + +(function () +{ + var debug = false; + // default timeout is 10 seconds, test can override if needed + var settings = { + output:true, + harness_timeout:{ + "normal":10000, + "long":60000 + }, + test_timeout:null + }; + + var xhtml_ns = "http://www.w3.org/1999/xhtml"; + + /* + * TestEnvironment is an abstraction for the environment in which the test + * harness is used. Each implementation of a test environment has to provide + * the following interface: + * + * interface TestEnvironment { + * // Invoked after the global 'tests' object has been created and it's + * // safe to call add_*_callback() to register event handlers. + * void on_tests_ready(); + * + * // Invoked after setup() has been called to notify the test environment + * // of changes to the test harness properties. + * void on_new_harness_properties(object properties); + * + * // Should return a new unique default test name. + * DOMString next_default_test_name(); + * + * // Should return the test harness timeout duration in milliseconds. + * float test_timeout(); + * + * // Should return the global scope object. + * object global_scope(); + * }; + */ + + /* + * A test environment with a DOM. The global object is 'window'. By default + * test results are displayed in a table. Any parent windows receive + * callbacks or messages via postMessage() when test events occur. See + * apisample11.html and apisample12.html. + */ + function WindowTestEnvironment() { + this.name_counter = 0; + this.window_cache = null; + this.output_handler = null; + this.all_loaded = false; + var this_obj = this; + on_event(window, 'load', function() { + this_obj.all_loaded = true; + }); + } + + WindowTestEnvironment.prototype._dispatch = function(selector, callback_args, message_arg) { + this._forEach_windows( + function(w, is_same_origin) { + if (is_same_origin && selector in w) { + try { + w[selector].apply(undefined, callback_args); + } catch (e) { + if (debug) { + throw e; + } + } + } + if (supports_post_message(w) && w !== self) { + w.postMessage(message_arg, "*"); + } + }); + }; + + WindowTestEnvironment.prototype._forEach_windows = function(callback) { + // Iterate of the the windows [self ... top, opener]. The callback is passed + // two objects, the first one is the windows object itself, the second one + // is a boolean indicating whether or not its on the same origin as the + // current window. + var cache = this.window_cache; + if (!cache) { + cache = [[self, true]]; + var w = self; + var i = 0; + var so; + var origins = location.ancestorOrigins; + while (w != w.parent) { + w = w.parent; + // In WebKit, calls to parent windows' properties that aren't on the same + // origin cause an error message to be displayed in the error console but + // don't throw an exception. This is a deviation from the current HTML5 + // spec. See: https://bugs.webkit.org/show_bug.cgi?id=43504 + // The problem with WebKit's behavior is that it pollutes the error console + // with error messages that can't be caught. + // + // This issue can be mitigated by relying on the (for now) proprietary + // `location.ancestorOrigins` property which returns an ordered list of + // the origins of enclosing windows. See: + // http://trac.webkit.org/changeset/113945. + if (origins) { + so = (location.origin == origins[i]); + } else { + so = is_same_origin(w); + } + cache.push([w, so]); + i++; + } + w = window.opener; + if (w) { + // window.opener isn't included in the `location.ancestorOrigins` prop. + // We'll just have to deal with a simple check and an error msg on WebKit + // browsers in this case. + cache.push([w, is_same_origin(w)]); + } + this.window_cache = cache; + } + + forEach(cache, + function(a) { + callback.apply(null, a); + }); + }; + + WindowTestEnvironment.prototype.on_tests_ready = function() { + var output = new Output(); + this.output_handler = output; + + var this_obj = this; + add_start_callback(function (properties) { + this_obj.output_handler.init(properties); + this_obj._dispatch("start_callback", [properties], + { type: "start", properties: properties }); + }); + add_test_state_callback(function(test) { + this_obj.output_handler.show_status(); + this_obj._dispatch("test_state_callback", [test], + { type: "test_state", test: test.structured_clone() }); + }); + add_result_callback(function (test) { + this_obj.output_handler.show_status(); + this_obj._dispatch("result_callback", [test], + { type: "result", test: test.structured_clone() }); + }); + add_completion_callback(function (tests, harness_status) { + this_obj.output_handler.show_results(tests, harness_status); + var cloned_tests = map(tests, function(test) { return test.structured_clone(); }); + this_obj._dispatch("completion_callback", [tests, harness_status], + { type: "complete", tests: cloned_tests, + status: harness_status.structured_clone() }); + }); + }; + + WindowTestEnvironment.prototype.next_default_test_name = function() { + //Don't use document.title to work around an Opera bug in XHTML documents + var title = document.getElementsByTagName("title")[0]; + var prefix = (title && title.firstChild && title.firstChild.data) || "Untitled"; + var suffix = this.name_counter > 0 ? " " + this.name_counter : ""; + this.name_counter++; + return prefix + suffix; + }; + + WindowTestEnvironment.prototype.on_new_harness_properties = function(properties) { + this.output_handler.setup(properties); + }; + + WindowTestEnvironment.prototype.add_on_loaded_callback = function(callback) { + on_event(window, 'load', callback); + }; + + WindowTestEnvironment.prototype.test_timeout = function() { + var metas = document.getElementsByTagName("meta"); + for (var i = 0; i < metas.length; i++) { + if (metas[i].name == "timeout") { + if (metas[i].content == "long") { + return settings.harness_timeout.long; + } + break; + } + } + return settings.harness_timeout.normal; + }; + + WindowTestEnvironment.prototype.global_scope = function() { + return window; + }; + + /* + * Base TestEnvironment implementation for a generic web worker. + * + * Workers accumulate test results. One or more clients can connect and + * retrieve results from a worker at any time. + * + * WorkerTestEnvironment supports communicating with a client via a + * MessagePort. The mechanism for determining the appropriate MessagePort + * for communicating with a client depends on the type of worker and is + * implemented by the various specializations of WorkerTestEnvironment + * below. + * + * A client document using testharness can use fetch_tests_from_worker() to + * retrieve results from a worker. See apisample16.html. + */ + function WorkerTestEnvironment() { + this.name_counter = 0; + this.all_loaded = true; + this.message_list = []; + this.message_ports = []; + } + + WorkerTestEnvironment.prototype._dispatch = function(message) { + this.message_list.push(message); + for (var i = 0; i < this.message_ports.length; ++i) + { + this.message_ports[i].postMessage(message); + } + }; + + // The only requirement is that port has a postMessage() method. It doesn't + // have to be an instance of a MessagePort, and often isn't. + WorkerTestEnvironment.prototype._add_message_port = function(port) { + this.message_ports.push(port); + for (var i = 0; i < this.message_list.length; ++i) + { + port.postMessage(this.message_list[i]); + } + }; + + WorkerTestEnvironment.prototype.next_default_test_name = function() { + var suffix = this.name_counter > 0 ? " " + this.name_counter : ""; + this.name_counter++; + return "Untitled" + suffix; + }; + + WorkerTestEnvironment.prototype.on_new_harness_properties = function() {}; + + WorkerTestEnvironment.prototype.on_tests_ready = function() { + var this_obj = this; + add_start_callback( + function(properties) { + this_obj._dispatch({ + type: "start", + properties: properties, + }); + }); + add_test_state_callback( + function(test) { + this_obj._dispatch({ + type: "test_state", + test: test.structured_clone() + }); + }); + add_result_callback( + function(test) { + this_obj._dispatch({ + type: "result", + test: test.structured_clone() + }); + }); + add_completion_callback( + function(tests, harness_status) { + this_obj._dispatch({ + type: "complete", + tests: map(tests, + function(test) { + return test.structured_clone(); + }), + status: harness_status.structured_clone() + }); + }); + }; + + WorkerTestEnvironment.prototype.add_on_loaded_callback = function() {}; + + WorkerTestEnvironment.prototype.test_timeout = function() { + // Tests running in a worker don't have a default timeout. I.e. all + // worker tests behave as if settings.explicit_timeout is true. + return null; + }; + + WorkerTestEnvironment.prototype.global_scope = function() { + return self; + }; + + /* + * Dedicated web workers. + * https://html.spec.whatwg.org/multipage/workers.html#dedicatedworkerglobalscope + * + * This class is used as the test_environment when testharness is running + * inside a dedicated worker. + */ + function DedicatedWorkerTestEnvironment() { + WorkerTestEnvironment.call(this); + // self is an instance of DedicatedWorkerGlobalScope which exposes + // a postMessage() method for communicating via the message channel + // established when the worker is created. + this._add_message_port(self); + } + DedicatedWorkerTestEnvironment.prototype = Object.create(WorkerTestEnvironment.prototype); + + DedicatedWorkerTestEnvironment.prototype.on_tests_ready = function() { + WorkerTestEnvironment.prototype.on_tests_ready.call(this); + // In the absence of an onload notification, we a require dedicated + // workers to explicitly signal when the tests are done. + tests.wait_for_finish = true; + }; + + /* + * Shared web workers. + * https://html.spec.whatwg.org/multipage/workers.html#sharedworkerglobalscope + * + * This class is used as the test_environment when testharness is running + * inside a shared web worker. + */ + function SharedWorkerTestEnvironment() { + WorkerTestEnvironment.call(this); + var this_obj = this; + // Shared workers receive message ports via the 'onconnect' event for + // each connection. + self.addEventListener("connect", + function(message_event) { + this_obj._add_message_port(message_event.source); + }); + } + SharedWorkerTestEnvironment.prototype = Object.create(WorkerTestEnvironment.prototype); + + SharedWorkerTestEnvironment.prototype.on_tests_ready = function() { + WorkerTestEnvironment.prototype.on_tests_ready.call(this); + // In the absence of an onload notification, we a require shared + // workers to explicitly signal when the tests are done. + tests.wait_for_finish = true; + }; + + /* + * Service workers. + * http://www.w3.org/TR/service-workers/ + * + * This class is used as the test_environment when testharness is running + * inside a service worker. + */ + function ServiceWorkerTestEnvironment() { + WorkerTestEnvironment.call(this); + this.all_loaded = false; + this.on_loaded_callback = null; + var this_obj = this; + self.addEventListener("message", + function(event) { + if (event.data.type && event.data.type === "connect") { + this_obj._add_message_port(event.ports[0]); + event.ports[0].start(); + } + }); + + // The oninstall event is received after the service worker script and + // all imported scripts have been fetched and executed. It's the + // equivalent of an onload event for a document. All tests should have + // been added by the time this event is received, thus it's not + // necessary to wait until the onactivate event. + on_event(self, "install", + function(event) { + this_obj.all_loaded = true; + if (this_obj.on_loaded_callback) { + this_obj.on_loaded_callback(); + } + }); + } + ServiceWorkerTestEnvironment.prototype = Object.create(WorkerTestEnvironment.prototype); + + ServiceWorkerTestEnvironment.prototype.add_on_loaded_callback = function(callback) { + if (this.all_loaded) { + callback(); + } else { + this.on_loaded_callback = callback; + } + }; + + function create_test_environment() { + if ('document' in self) { + return new WindowTestEnvironment(); + } + if ('DedicatedWorkerGlobalScope' in self && + self instanceof DedicatedWorkerGlobalScope) { + return new DedicatedWorkerTestEnvironment(); + } + if ('SharedWorkerGlobalScope' in self && + self instanceof SharedWorkerGlobalScope) { + return new SharedWorkerTestEnvironment(); + } + if ('ServiceWorkerGlobalScope' in self && + self instanceof ServiceWorkerGlobalScope) { + return new ServiceWorkerTestEnvironment(); + } + throw new Error("Unsupported test environment"); + } + + var test_environment = create_test_environment(); + + function is_shared_worker(worker) { + return 'SharedWorker' in self && worker instanceof SharedWorker; + } + + function is_service_worker(worker) { + return 'ServiceWorker' in self && worker instanceof ServiceWorker; + } + + /* + * API functions + */ + + function test(func, name, properties) + { + var test_name = name ? name : test_environment.next_default_test_name(); + properties = properties ? properties : {}; + var test_obj = new Test(test_name, properties); + test_obj.step(func, test_obj, test_obj); + if (test_obj.phase === test_obj.phases.STARTED) { + test_obj.done(); + } + } + + function async_test(func, name, properties) + { + if (typeof func !== "function") { + properties = name; + name = func; + func = null; + } + var test_name = name ? name : test_environment.next_default_test_name(); + properties = properties ? properties : {}; + var test_obj = new Test(test_name, properties); + if (func) { + test_obj.step(func, test_obj, test_obj); + } + return test_obj; + } + + function promise_test(func, name, properties) { + var test = async_test(name, properties); + Promise.resolve(test.step(func, test, test)) + .then( + function() { + test.done(); + }) + .catch(test.step_func( + function(value) { + if (value instanceof AssertionError) { + throw value; + } + assert(false, "promise_test", null, + "Unhandled rejection with value: ${value}", {value:value}); + })); + } + + function setup(func_or_properties, maybe_properties) + { + var func = null; + var properties = {}; + if (arguments.length === 2) { + func = func_or_properties; + properties = maybe_properties; + } else if (func_or_properties instanceof Function) { + func = func_or_properties; + } else { + properties = func_or_properties; + } + tests.setup(func, properties); + test_environment.on_new_harness_properties(properties); + } + + function done() { + if (tests.tests.length === 0) { + tests.set_file_is_test(); + } + if (tests.file_is_test) { + tests.tests[0].done(); + } + tests.end_wait(); + } + + function generate_tests(func, args, properties) { + forEach(args, function(x, i) + { + var name = x[0]; + test(function() + { + func.apply(this, x.slice(1)); + }, + name, + Array.isArray(properties) ? properties[i] : properties); + }); + } + + function on_event(object, event, callback) + { + object.addEventListener(event, callback, false); + } + + expose(test, 'test'); + expose(async_test, 'async_test'); + expose(promise_test, 'promise_test'); + expose(generate_tests, 'generate_tests'); + expose(setup, 'setup'); + expose(done, 'done'); + expose(on_event, 'on_event'); + + /* + * Return a string truncated to the given length, with ... added at the end + * if it was longer. + */ + function truncate(s, len) + { + if (s.length > len) { + return s.substring(0, len - 3) + "..."; + } + return s; + } + + /* + * Return true if object is probably a Node object. + */ + function is_node(object) + { + // I use duck-typing instead of instanceof, because + // instanceof doesn't work if the node is from another window (like an + // iframe's contentWindow): + // http://www.w3.org/Bugs/Public/show_bug.cgi?id=12295 + if ("nodeType" in object && + "nodeName" in object && + "nodeValue" in object && + "childNodes" in object) { + try { + object.nodeType; + } catch (e) { + // The object is probably Node.prototype or another prototype + // object that inherits from it, and not a Node instance. + return false; + } + return true; + } + return false; + } + + /* + * Convert a value to a nice, human-readable string + */ + function format_value(val, seen) + { + if (!seen) { + seen = []; + } + if (typeof val === "object" && val !== null) { + if (seen.indexOf(val) >= 0) { + return "[...]"; + } + seen.push(val); + } + if (Array.isArray(val)) { + return "[" + val.map(function(x) {return format_value(x, seen);}).join(", ") + "]"; + } + + switch (typeof val) { + case "string": + val = val.replace("\\", "\\\\"); + for (var i = 0; i < 32; i++) { + var replace = "\\"; + switch (i) { + case 0: replace += "0"; break; + case 1: replace += "x01"; break; + case 2: replace += "x02"; break; + case 3: replace += "x03"; break; + case 4: replace += "x04"; break; + case 5: replace += "x05"; break; + case 6: replace += "x06"; break; + case 7: replace += "x07"; break; + case 8: replace += "b"; break; + case 9: replace += "t"; break; + case 10: replace += "n"; break; + case 11: replace += "v"; break; + case 12: replace += "f"; break; + case 13: replace += "r"; break; + case 14: replace += "x0e"; break; + case 15: replace += "x0f"; break; + case 16: replace += "x10"; break; + case 17: replace += "x11"; break; + case 18: replace += "x12"; break; + case 19: replace += "x13"; break; + case 20: replace += "x14"; break; + case 21: replace += "x15"; break; + case 22: replace += "x16"; break; + case 23: replace += "x17"; break; + case 24: replace += "x18"; break; + case 25: replace += "x19"; break; + case 26: replace += "x1a"; break; + case 27: replace += "x1b"; break; + case 28: replace += "x1c"; break; + case 29: replace += "x1d"; break; + case 30: replace += "x1e"; break; + case 31: replace += "x1f"; break; + } + val = val.replace(RegExp(String.fromCharCode(i), "g"), replace); + } + return '"' + val.replace(/"/g, '\\"') + '"'; + case "boolean": + case "undefined": + return String(val); + case "number": + // In JavaScript, -0 === 0 and String(-0) == "0", so we have to + // special-case. + if (val === -0 && 1/val === -Infinity) { + return "-0"; + } + return String(val); + case "object": + if (val === null) { + return "null"; + } + + // Special-case Node objects, since those come up a lot in my tests. I + // ignore namespaces. + if (is_node(val)) { + switch (val.nodeType) { + case Node.ELEMENT_NODE: + var ret = "<" + val.localName; + for (var i = 0; i < val.attributes.length; i++) { + ret += " " + val.attributes[i].name + '="' + val.attributes[i].value + '"'; + } + ret += ">" + val.innerHTML + ""; + return "Element node " + truncate(ret, 60); + case Node.TEXT_NODE: + return 'Text node "' + truncate(val.data, 60) + '"'; + case Node.PROCESSING_INSTRUCTION_NODE: + return "ProcessingInstruction node with target " + format_value(truncate(val.target, 60)) + " and data " + format_value(truncate(val.data, 60)); + case Node.COMMENT_NODE: + return "Comment node "; + case Node.DOCUMENT_NODE: + return "Document node with " + val.childNodes.length + (val.childNodes.length == 1 ? " child" : " children"); + case Node.DOCUMENT_TYPE_NODE: + return "DocumentType node"; + case Node.DOCUMENT_FRAGMENT_NODE: + return "DocumentFragment node with " + val.childNodes.length + (val.childNodes.length == 1 ? " child" : " children"); + default: + return "Node object of unknown type"; + } + } + + /* falls through */ + default: + return typeof val + ' "' + truncate(String(val), 60) + '"'; + } + } + expose(format_value, "format_value"); + + /* + * Assertions + */ + + function assert_true(actual, description) + { + assert(actual === true, "assert_true", description, + "expected true got ${actual}", {actual:actual}); + } + expose(assert_true, "assert_true"); + + function assert_false(actual, description) + { + assert(actual === false, "assert_false", description, + "expected false got ${actual}", {actual:actual}); + } + expose(assert_false, "assert_false"); + + function same_value(x, y) { + if (y !== y) { + //NaN case + return x !== x; + } + if (x === 0 && y === 0) { + //Distinguish +0 and -0 + return 1/x === 1/y; + } + return x === y; + } + + function assert_equals(actual, expected, description) + { + /* + * Test if two primitives are equal or two objects + * are the same object + */ + if (typeof actual != typeof expected) { + assert(false, "assert_equals", description, + "expected (" + typeof expected + ") ${expected} but got (" + typeof actual + ") ${actual}", + {expected:expected, actual:actual}); + return; + } + assert(same_value(actual, expected), "assert_equals", description, + "expected ${expected} but got ${actual}", + {expected:expected, actual:actual}); + } + expose(assert_equals, "assert_equals"); + + function assert_not_equals(actual, expected, description) + { + /* + * Test if two primitives are unequal or two objects + * are different objects + */ + assert(!same_value(actual, expected), "assert_not_equals", description, + "got disallowed value ${actual}", + {actual:actual}); + } + expose(assert_not_equals, "assert_not_equals"); + + function assert_in_array(actual, expected, description) + { + assert(expected.indexOf(actual) != -1, "assert_in_array", description, + "value ${actual} not in array ${expected}", + {actual:actual, expected:expected}); + } + expose(assert_in_array, "assert_in_array"); + + function assert_object_equals(actual, expected, description) + { + //This needs to be improved a great deal + function check_equal(actual, expected, stack) + { + stack.push(actual); + + var p; + for (p in actual) { + assert(expected.hasOwnProperty(p), "assert_object_equals", description, + "unexpected property ${p}", {p:p}); + + if (typeof actual[p] === "object" && actual[p] !== null) { + if (stack.indexOf(actual[p]) === -1) { + check_equal(actual[p], expected[p], stack); + } + } else { + assert(same_value(actual[p], expected[p]), "assert_object_equals", description, + "property ${p} expected ${expected} got ${actual}", + {p:p, expected:expected, actual:actual}); + } + } + for (p in expected) { + assert(actual.hasOwnProperty(p), + "assert_object_equals", description, + "expected property ${p} missing", {p:p}); + } + stack.pop(); + } + check_equal(actual, expected, []); + } + expose(assert_object_equals, "assert_object_equals"); + + function assert_array_equals(actual, expected, description) + { + assert(actual.length === expected.length, + "assert_array_equals", description, + "lengths differ, expected ${expected} got ${actual}", + {expected:expected.length, actual:actual.length}); + + for (var i = 0; i < actual.length; i++) { + assert(actual.hasOwnProperty(i) === expected.hasOwnProperty(i), + "assert_array_equals", description, + "property ${i}, property expected to be ${expected} but was ${actual}", + {i:i, expected:expected.hasOwnProperty(i) ? "present" : "missing", + actual:actual.hasOwnProperty(i) ? "present" : "missing"}); + assert(same_value(expected[i], actual[i]), + "assert_array_equals", description, + "property ${i}, expected ${expected} but got ${actual}", + {i:i, expected:expected[i], actual:actual[i]}); + } + } + expose(assert_array_equals, "assert_array_equals"); + + function assert_approx_equals(actual, expected, epsilon, description) + { + /* + * Test if two primitive numbers are equal withing +/- epsilon + */ + assert(typeof actual === "number", + "assert_approx_equals", description, + "expected a number but got a ${type_actual}", + {type_actual:typeof actual}); + + assert(Math.abs(actual - expected) <= epsilon, + "assert_approx_equals", description, + "expected ${expected} +/- ${epsilon} but got ${actual}", + {expected:expected, actual:actual, epsilon:epsilon}); + } + expose(assert_approx_equals, "assert_approx_equals"); + + function assert_less_than(actual, expected, description) + { + /* + * Test if a primitive number is less than another + */ + assert(typeof actual === "number", + "assert_less_than", description, + "expected a number but got a ${type_actual}", + {type_actual:typeof actual}); + + assert(actual < expected, + "assert_less_than", description, + "expected a number less than ${expected} but got ${actual}", + {expected:expected, actual:actual}); + } + expose(assert_less_than, "assert_less_than"); + + function assert_greater_than(actual, expected, description) + { + /* + * Test if a primitive number is greater than another + */ + assert(typeof actual === "number", + "assert_greater_than", description, + "expected a number but got a ${type_actual}", + {type_actual:typeof actual}); + + assert(actual > expected, + "assert_greater_than", description, + "expected a number greater than ${expected} but got ${actual}", + {expected:expected, actual:actual}); + } + expose(assert_greater_than, "assert_greater_than"); + + function assert_less_than_equal(actual, expected, description) + { + /* + * Test if a primitive number is less than or equal to another + */ + assert(typeof actual === "number", + "assert_less_than_equal", description, + "expected a number but got a ${type_actual}", + {type_actual:typeof actual}); + + assert(actual <= expected, + "assert_less_than", description, + "expected a number less than or equal to ${expected} but got ${actual}", + {expected:expected, actual:actual}); + } + expose(assert_less_than_equal, "assert_less_than_equal"); + + function assert_greater_than_equal(actual, expected, description) + { + /* + * Test if a primitive number is greater than or equal to another + */ + assert(typeof actual === "number", + "assert_greater_than_equal", description, + "expected a number but got a ${type_actual}", + {type_actual:typeof actual}); + + assert(actual >= expected, + "assert_greater_than_equal", description, + "expected a number greater than or equal to ${expected} but got ${actual}", + {expected:expected, actual:actual}); + } + expose(assert_greater_than_equal, "assert_greater_than_equal"); + + function assert_regexp_match(actual, expected, description) { + /* + * Test if a string (actual) matches a regexp (expected) + */ + assert(expected.test(actual), + "assert_regexp_match", description, + "expected ${expected} but got ${actual}", + {expected:expected, actual:actual}); + } + expose(assert_regexp_match, "assert_regexp_match"); + + function assert_class_string(object, class_string, description) { + assert_equals({}.toString.call(object), "[object " + class_string + "]", + description); + } + expose(assert_class_string, "assert_class_string"); + + + function _assert_own_property(name) { + return function(object, property_name, description) + { + assert(property_name in object, + name, description, + "expected property ${p} missing", {p:property_name}); + }; + } + expose(_assert_own_property("assert_exists"), "assert_exists"); + expose(_assert_own_property("assert_own_property"), "assert_own_property"); + + function assert_not_exists(object, property_name, description) + { + assert(!object.hasOwnProperty(property_name), + "assert_not_exists", description, + "unexpected property ${p} found", {p:property_name}); + } + expose(assert_not_exists, "assert_not_exists"); + + function _assert_inherits(name) { + return function (object, property_name, description) + { + assert(typeof object === "object", + name, description, + "provided value is not an object"); + + assert("hasOwnProperty" in object, + name, description, + "provided value is an object but has no hasOwnProperty method"); + + assert(!object.hasOwnProperty(property_name), + name, description, + "property ${p} found on object expected in prototype chain", + {p:property_name}); + + assert(property_name in object, + name, description, + "property ${p} not found in prototype chain", + {p:property_name}); + }; + } + expose(_assert_inherits("assert_inherits"), "assert_inherits"); + expose(_assert_inherits("assert_idl_attribute"), "assert_idl_attribute"); + + function assert_readonly(object, property_name, description) + { + var initial_value = object[property_name]; + try { + //Note that this can have side effects in the case where + //the property has PutForwards + object[property_name] = initial_value + "a"; //XXX use some other value here? + assert(same_value(object[property_name], initial_value), + "assert_readonly", description, + "changing property ${p} succeeded", + {p:property_name}); + } finally { + object[property_name] = initial_value; + } + } + expose(assert_readonly, "assert_readonly"); + + function assert_throws(code, func, description) + { + try { + func.call(this); + assert(false, "assert_throws", description, + "${func} did not throw", {func:func}); + } catch (e) { + if (e instanceof AssertionError) { + throw e; + } + if (code === null) { + return; + } + if (typeof code === "object") { + assert(typeof e == "object" && "name" in e && e.name == code.name, + "assert_throws", description, + "${func} threw ${actual} (${actual_name}) expected ${expected} (${expected_name})", + {func:func, actual:e, actual_name:e.name, + expected:code, + expected_name:code.name}); + return; + } + + var code_name_map = { + INDEX_SIZE_ERR: 'IndexSizeError', + HIERARCHY_REQUEST_ERR: 'HierarchyRequestError', + WRONG_DOCUMENT_ERR: 'WrongDocumentError', + INVALID_CHARACTER_ERR: 'InvalidCharacterError', + NO_MODIFICATION_ALLOWED_ERR: 'NoModificationAllowedError', + NOT_FOUND_ERR: 'NotFoundError', + NOT_SUPPORTED_ERR: 'NotSupportedError', + INVALID_STATE_ERR: 'InvalidStateError', + SYNTAX_ERR: 'SyntaxError', + INVALID_MODIFICATION_ERR: 'InvalidModificationError', + NAMESPACE_ERR: 'NamespaceError', + INVALID_ACCESS_ERR: 'InvalidAccessError', + TYPE_MISMATCH_ERR: 'TypeMismatchError', + SECURITY_ERR: 'SecurityError', + NETWORK_ERR: 'NetworkError', + ABORT_ERR: 'AbortError', + URL_MISMATCH_ERR: 'URLMismatchError', + QUOTA_EXCEEDED_ERR: 'QuotaExceededError', + TIMEOUT_ERR: 'TimeoutError', + INVALID_NODE_TYPE_ERR: 'InvalidNodeTypeError', + DATA_CLONE_ERR: 'DataCloneError' + }; + + var name = code in code_name_map ? code_name_map[code] : code; + + var name_code_map = { + IndexSizeError: 1, + HierarchyRequestError: 3, + WrongDocumentError: 4, + InvalidCharacterError: 5, + NoModificationAllowedError: 7, + NotFoundError: 8, + NotSupportedError: 9, + InvalidStateError: 11, + SyntaxError: 12, + InvalidModificationError: 13, + NamespaceError: 14, + InvalidAccessError: 15, + TypeMismatchError: 17, + SecurityError: 18, + NetworkError: 19, + AbortError: 20, + URLMismatchError: 21, + QuotaExceededError: 22, + TimeoutError: 23, + InvalidNodeTypeError: 24, + DataCloneError: 25, + + UnknownError: 0, + ConstraintError: 0, + DataError: 0, + TransactionInactiveError: 0, + ReadOnlyError: 0, + VersionError: 0 + }; + + if (!(name in name_code_map)) { + throw new AssertionError('Test bug: unrecognized DOMException code "' + code + '" passed to assert_throws()'); + } + + var required_props = { code: name_code_map[name] }; + + if (required_props.code === 0 || + ("name" in e && e.name !== e.name.toUpperCase() && e.name !== "DOMException")) { + // New style exception: also test the name property. + required_props.name = name; + } + + //We'd like to test that e instanceof the appropriate interface, + //but we can't, because we don't know what window it was created + //in. It might be an instanceof the appropriate interface on some + //unknown other window. TODO: Work around this somehow? + + assert(typeof e == "object", + "assert_throws", description, + "${func} threw ${e} with type ${type}, not an object", + {func:func, e:e, type:typeof e}); + + for (var prop in required_props) { + assert(typeof e == "object" && prop in e && e[prop] == required_props[prop], + "assert_throws", description, + "${func} threw ${e} that is not a DOMException " + code + ": property ${prop} is equal to ${actual}, expected ${expected}", + {func:func, e:e, prop:prop, actual:e[prop], expected:required_props[prop]}); + } + } + } + expose(assert_throws, "assert_throws"); + + function assert_unreached(description) { + assert(false, "assert_unreached", description, + "Reached unreachable code"); + } + expose(assert_unreached, "assert_unreached"); + + function assert_any(assert_func, actual, expected_array) + { + var args = [].slice.call(arguments, 3); + var errors = []; + var passed = false; + forEach(expected_array, + function(expected) + { + try { + assert_func.apply(this, [actual, expected].concat(args)); + passed = true; + } catch (e) { + errors.push(e.message); + } + }); + if (!passed) { + throw new AssertionError(errors.join("\n\n")); + } + } + expose(assert_any, "assert_any"); + + function Test(name, properties) + { + if (tests.file_is_test && tests.tests.length) { + throw new Error("Tried to create a test with file_is_test"); + } + this.name = name; + + this.phase = this.phases.INITIAL; + + this.status = this.NOTRUN; + this.timeout_id = null; + this.index = null; + + this.properties = properties; + var timeout = properties.timeout ? properties.timeout : settings.test_timeout; + if (timeout !== null) { + this.timeout_length = timeout * tests.timeout_multiplier; + } else { + this.timeout_length = null; + } + + this.message = null; + + this.steps = []; + + this.cleanup_callbacks = []; + + tests.push(this); + } + + Test.statuses = { + PASS:0, + FAIL:1, + TIMEOUT:2, + NOTRUN:3 + }; + + Test.prototype = merge({}, Test.statuses); + + Test.prototype.phases = { + INITIAL:0, + STARTED:1, + HAS_RESULT:2, + COMPLETE:3 + }; + + Test.prototype.structured_clone = function() + { + if (!this._structured_clone) { + var msg = this.message; + msg = msg ? String(msg) : msg; + this._structured_clone = merge({ + name:String(this.name), + properties:merge({}, this.properties), + }, Test.statuses); + } + this._structured_clone.status = this.status; + this._structured_clone.message = this.message; + this._structured_clone.index = this.index; + return this._structured_clone; + }; + + Test.prototype.step = function(func, this_obj) + { + if (this.phase > this.phases.STARTED) { + return; + } + this.phase = this.phases.STARTED; + //If we don't get a result before the harness times out that will be a test timout + this.set_status(this.TIMEOUT, "Test timed out"); + + tests.started = true; + tests.notify_test_state(this); + + if (this.timeout_id === null) { + this.set_timeout(); + } + + this.steps.push(func); + + if (arguments.length === 1) { + this_obj = this; + } + + try { + return func.apply(this_obj, Array.prototype.slice.call(arguments, 2)); + } catch (e) { + if (this.phase >= this.phases.HAS_RESULT) { + return; + } + var message = (typeof e === "object" && e !== null) ? e.message : e; + if (typeof e.stack != "undefined" && typeof e.message == "string") { + //Try to make it more informative for some exceptions, at least + //in Gecko and WebKit. This results in a stack dump instead of + //just errors like "Cannot read property 'parentNode' of null" + //or "root is null". Makes it a lot longer, of course. + message += "(stack: " + e.stack + ")"; + } + this.set_status(this.FAIL, message); + this.phase = this.phases.HAS_RESULT; + this.done(); + } + }; + + Test.prototype.step_func = function(func, this_obj) + { + var test_this = this; + + if (arguments.length === 1) { + this_obj = test_this; + } + + return function() + { + return test_this.step.apply(test_this, [func, this_obj].concat( + Array.prototype.slice.call(arguments))); + }; + }; + + Test.prototype.step_func_done = function(func, this_obj) + { + var test_this = this; + + if (arguments.length === 1) { + this_obj = test_this; + } + + return function() + { + if (func) { + test_this.step.apply(test_this, [func, this_obj].concat( + Array.prototype.slice.call(arguments))); + } + test_this.done(); + }; + }; + + Test.prototype.unreached_func = function(description) + { + return this.step_func(function() { + assert_unreached(description); + }); + }; + + Test.prototype.add_cleanup = function(callback) { + this.cleanup_callbacks.push(callback); + }; + + Test.prototype.force_timeout = function() { + this.set_status(this.TIMEOUT); + this.phase = this.phases.HAS_RESULT; + }; + + Test.prototype.set_timeout = function() + { + if (this.timeout_length !== null) { + var this_obj = this; + this.timeout_id = setTimeout(function() + { + this_obj.timeout(); + }, this.timeout_length); + } + }; + + Test.prototype.set_status = function(status, message) + { + this.status = status; + this.message = message; + }; + + Test.prototype.timeout = function() + { + this.timeout_id = null; + this.set_status(this.TIMEOUT, "Test timed out"); + this.phase = this.phases.HAS_RESULT; + this.done(); + }; + + Test.prototype.done = function() + { + if (this.phase == this.phases.COMPLETE) { + return; + } + + if (this.phase <= this.phases.STARTED) { + this.set_status(this.PASS, null); + } + + this.phase = this.phases.COMPLETE; + + clearTimeout(this.timeout_id); + tests.result(this); + this.cleanup(); + }; + + Test.prototype.cleanup = function() { + forEach(this.cleanup_callbacks, + function(cleanup_callback) { + cleanup_callback(); + }); + }; + + /* + * A RemoteTest object mirrors a Test object on a remote worker. The + * associated RemoteWorker updates the RemoteTest object in response to + * received events. In turn, the RemoteTest object replicates these events + * on the local document. This allows listeners (test result reporting + * etc..) to transparently handle local and remote events. + */ + function RemoteTest(clone) { + var this_obj = this; + Object.keys(clone).forEach( + function(key) { + this_obj[key] = clone[key]; + }); + this.index = null; + this.phase = this.phases.INITIAL; + this.update_state_from(clone); + tests.push(this); + } + + RemoteTest.prototype.structured_clone = function() { + var clone = {}; + Object.keys(this).forEach( + function(key) { + if (typeof(this[key]) === "object") { + clone[key] = merge({}, this[key]); + } else { + clone[key] = this[key]; + } + }); + clone.phases = merge({}, this.phases); + return clone; + }; + + RemoteTest.prototype.cleanup = function() {}; + RemoteTest.prototype.phases = Test.prototype.phases; + RemoteTest.prototype.update_state_from = function(clone) { + this.status = clone.status; + this.message = clone.message; + if (this.phase === this.phases.INITIAL) { + this.phase = this.phases.STARTED; + } + }; + RemoteTest.prototype.done = function() { + this.phase = this.phases.COMPLETE; + } + + /* + * A RemoteWorker listens for test events from a worker. These events are + * then used to construct and maintain RemoteTest objects that mirror the + * tests running on the remote worker. + */ + function RemoteWorker(worker) { + this.running = true; + this.tests = new Array(); + + var this_obj = this; + worker.onerror = function(error) { this_obj.worker_error(error); }; + + var message_port; + + if (is_service_worker(worker)) { + // The ServiceWorker's implicit MessagePort is currently not + // reliably accessible from the ServiceWorkerGlobalScope due to + // Blink setting MessageEvent.source to null for messages sent via + // ServiceWorker.postMessage(). Until that's resolved, create an + // explicit MessageChannel and pass one end to the worker. + var message_channel = new MessageChannel(); + message_port = message_channel.port1; + message_port.start(); + worker.postMessage({type: "connect"}, [message_channel.port2]); + } else if (is_shared_worker(worker)) { + message_port = worker.port; + } else { + message_port = worker; + } + + // Keeping a reference to the worker until worker_done() is seen + // prevents the Worker object and its MessageChannel from going away + // before all the messages are dispatched. + this.worker = worker; + + message_port.onmessage = + function(message) { + if (this_obj.running && (message.data.type in this_obj.message_handlers)) { + this_obj.message_handlers[message.data.type].call(this_obj, message.data); + } + }; + } + + RemoteWorker.prototype.worker_error = function(error) { + var message = error.message || String(error); + var filename = (error.filename ? " " + error.filename: ""); + // FIXME: Display worker error states separately from main document + // error state. + this.worker_done({ + status: { + status: tests.status.ERROR, + message: "Error in worker" + filename + ": " + message + } + }); + error.preventDefault(); + }; + + RemoteWorker.prototype.test_state = function(data) { + var remote_test = this.tests[data.test.index]; + if (!remote_test) { + remote_test = new RemoteTest(data.test); + this.tests[data.test.index] = remote_test; + } + remote_test.update_state_from(data.test); + tests.notify_test_state(remote_test); + }; + + RemoteWorker.prototype.test_done = function(data) { + var remote_test = this.tests[data.test.index]; + remote_test.update_state_from(data.test); + remote_test.done(); + tests.result(remote_test); + }; + + RemoteWorker.prototype.worker_done = function(data) { + if (tests.status.status === null && + data.status.status !== data.status.OK) { + tests.status.status = data.status.status; + tests.status.message = data.status.message; + } + this.running = false; + this.worker = null; + if (tests.all_done()) { + tests.complete(); + } + }; + + RemoteWorker.prototype.message_handlers = { + test_state: RemoteWorker.prototype.test_state, + result: RemoteWorker.prototype.test_done, + complete: RemoteWorker.prototype.worker_done + }; + + /* + * Harness + */ + + function TestsStatus() + { + this.status = null; + this.message = null; + } + + TestsStatus.statuses = { + OK:0, + ERROR:1, + TIMEOUT:2 + }; + + TestsStatus.prototype = merge({}, TestsStatus.statuses); + + TestsStatus.prototype.structured_clone = function() + { + if (!this._structured_clone) { + var msg = this.message; + msg = msg ? String(msg) : msg; + this._structured_clone = merge({ + status:this.status, + message:msg + }, TestsStatus.statuses); + } + return this._structured_clone; + }; + + function Tests() + { + this.tests = []; + this.num_pending = 0; + + this.phases = { + INITIAL:0, + SETUP:1, + HAVE_TESTS:2, + HAVE_RESULTS:3, + COMPLETE:4 + }; + this.phase = this.phases.INITIAL; + + this.properties = {}; + + this.wait_for_finish = false; + this.processing_callbacks = false; + + this.allow_uncaught_exception = false; + + this.file_is_test = false; + + this.timeout_multiplier = 1; + this.timeout_length = test_environment.test_timeout(); + this.timeout_id = null; + + this.start_callbacks = []; + this.test_state_callbacks = []; + this.test_done_callbacks = []; + this.all_done_callbacks = []; + + this.pending_workers = []; + + this.status = new TestsStatus(); + + var this_obj = this; + + test_environment.add_on_loaded_callback(function() { + if (this_obj.all_done()) { + this_obj.complete(); + } + }); + + this.set_timeout(); + } + + Tests.prototype.setup = function(func, properties) + { + if (this.phase >= this.phases.HAVE_RESULTS) { + return; + } + + if (this.phase < this.phases.SETUP) { + this.phase = this.phases.SETUP; + } + + this.properties = properties; + + for (var p in properties) { + if (properties.hasOwnProperty(p)) { + var value = properties[p]; + if (p == "allow_uncaught_exception") { + this.allow_uncaught_exception = value; + } else if (p == "explicit_done" && value) { + this.wait_for_finish = true; + } else if (p == "explicit_timeout" && value) { + this.timeout_length = null; + if (this.timeout_id) + { + clearTimeout(this.timeout_id); + } + } else if (p == "timeout_multiplier") { + this.timeout_multiplier = value; + } + } + } + + if (func) { + try { + func(); + } catch (e) { + this.status.status = this.status.ERROR; + this.status.message = String(e); + } + } + this.set_timeout(); + }; + + Tests.prototype.set_file_is_test = function() { + if (this.tests.length > 0) { + throw new Error("Tried to set file as test after creating a test"); + } + this.wait_for_finish = true; + this.file_is_test = true; + // Create the test, which will add it to the list of tests + async_test(); + }; + + Tests.prototype.set_timeout = function() { + var this_obj = this; + clearTimeout(this.timeout_id); + if (this.timeout_length !== null) { + this.timeout_id = setTimeout(function() { + this_obj.timeout(); + }, this.timeout_length); + } + }; + + Tests.prototype.timeout = function() { + if (this.status.status === null) { + this.status.status = this.status.TIMEOUT; + } + this.complete(); + }; + + Tests.prototype.end_wait = function() + { + this.wait_for_finish = false; + if (this.all_done()) { + this.complete(); + } + }; + + Tests.prototype.push = function(test) + { + if (this.phase < this.phases.HAVE_TESTS) { + this.start(); + } + this.num_pending++; + test.index = this.tests.push(test); + this.notify_test_state(test); + }; + + Tests.prototype.notify_test_state = function(test) { + var this_obj = this; + forEach(this.test_state_callbacks, + function(callback) { + callback(test, this_obj); + }); + }; + + Tests.prototype.all_done = function() { + return (this.tests.length > 0 && test_environment.all_loaded && + this.num_pending === 0 && !this.wait_for_finish && + !this.processing_callbacks && + !this.pending_workers.some(function(w) { return w.running; })); + }; + + Tests.prototype.start = function() { + this.phase = this.phases.HAVE_TESTS; + this.notify_start(); + }; + + Tests.prototype.notify_start = function() { + var this_obj = this; + forEach (this.start_callbacks, + function(callback) + { + callback(this_obj.properties); + }); + }; + + Tests.prototype.result = function(test) + { + if (this.phase > this.phases.HAVE_RESULTS) { + return; + } + this.phase = this.phases.HAVE_RESULTS; + this.num_pending--; + this.notify_result(test); + }; + + Tests.prototype.notify_result = function(test) { + var this_obj = this; + this.processing_callbacks = true; + forEach(this.test_done_callbacks, + function(callback) + { + callback(test, this_obj); + }); + this.processing_callbacks = false; + if (this_obj.all_done()) { + this_obj.complete(); + } + }; + + Tests.prototype.complete = function() { + if (this.phase === this.phases.COMPLETE) { + return; + } + this.phase = this.phases.COMPLETE; + var this_obj = this; + this.tests.forEach( + function(x) + { + if (x.phase < x.phases.COMPLETE) { + this_obj.notify_result(x); + x.cleanup(); + x.phase = x.phases.COMPLETE; + } + } + ); + this.notify_complete(); + }; + + Tests.prototype.notify_complete = function() { + var this_obj = this; + if (this.status.status === null) { + this.status.status = this.status.OK; + } + + forEach (this.all_done_callbacks, + function(callback) + { + callback(this_obj.tests, this_obj.status); + }); + }; + + Tests.prototype.fetch_tests_from_worker = function(worker) { + if (this.phase >= this.phases.COMPLETE) { + return; + } + + this.pending_workers.push(new RemoteWorker(worker)); + }; + + function fetch_tests_from_worker(port) { + tests.fetch_tests_from_worker(port); + } + expose(fetch_tests_from_worker, 'fetch_tests_from_worker'); + + function timeout() { + if (tests.timeout_length === null) { + tests.timeout(); + } + } + expose(timeout, 'timeout'); + + function add_start_callback(callback) { + tests.start_callbacks.push(callback); + } + + function add_test_state_callback(callback) { + tests.test_state_callbacks.push(callback); + } + + function add_result_callback(callback) + { + tests.test_done_callbacks.push(callback); + } + + function add_completion_callback(callback) + { + tests.all_done_callbacks.push(callback); + } + + expose(add_start_callback, 'add_start_callback'); + expose(add_test_state_callback, 'add_test_state_callback'); + expose(add_result_callback, 'add_result_callback'); + expose(add_completion_callback, 'add_completion_callback'); + + /* + * Output listener + */ + + function Output() { + this.output_document = document; + this.output_node = null; + this.enabled = settings.output; + this.phase = this.INITIAL; + } + + Output.prototype.INITIAL = 0; + Output.prototype.STARTED = 1; + Output.prototype.HAVE_RESULTS = 2; + Output.prototype.COMPLETE = 3; + + Output.prototype.setup = function(properties) { + if (this.phase > this.INITIAL) { + return; + } + + //If output is disabled in testharnessreport.js the test shouldn't be + //able to override that + this.enabled = this.enabled && (properties.hasOwnProperty("output") ? + properties.output : settings.output); + }; + + Output.prototype.init = function(properties) { + if (this.phase >= this.STARTED) { + return; + } + if (properties.output_document) { + this.output_document = properties.output_document; + } else { + this.output_document = document; + } + this.phase = this.STARTED; + }; + + Output.prototype.resolve_log = function() { + var output_document; + if (typeof this.output_document === "function") { + output_document = this.output_document.apply(undefined); + } else { + output_document = this.output_document; + } + if (!output_document) { + return; + } + var node = output_document.getElementById("log"); + if (!node) { + if (!document.body || document.readyState == "loading") { + return; + } + node = output_document.createElement("div"); + node.id = "log"; + output_document.body.appendChild(node); + } + this.output_document = output_document; + this.output_node = node; + }; + + Output.prototype.show_status = function() { + if (this.phase < this.STARTED) { + this.init(); + } + if (!this.enabled) { + return; + } + if (this.phase < this.HAVE_RESULTS) { + this.resolve_log(); + this.phase = this.HAVE_RESULTS; + } + var done_count = tests.tests.length - tests.num_pending; + if (this.output_node) { + if (done_count < 100 || + (done_count < 1000 && done_count % 100 === 0) || + done_count % 1000 === 0) { + this.output_node.textContent = "Running, " + + done_count + " complete, " + + tests.num_pending + " remain"; + } + } + }; + + Output.prototype.show_results = function (tests, harness_status) { + if (this.phase >= this.COMPLETE) { + return; + } + if (!this.enabled) { + return; + } + if (!this.output_node) { + this.resolve_log(); + } + this.phase = this.COMPLETE; + + var log = this.output_node; + if (!log) { + return; + } + var output_document = this.output_document; + + while (log.lastChild) { + log.removeChild(log.lastChild); + } + + var script_prefix = null; + var scripts = document.getElementsByTagName("script"); + for (var i = 0; i < scripts.length; i++) { + var src; + if (scripts[i].src) { + src = scripts[i].src; + } else if (scripts[i].href) { + //SVG case + src = scripts[i].href.baseVal; + } + + var matches = src && src.match(/^(.*\/|)testharness\.js$/); + if (matches) { + script_prefix = matches[1]; + break; + } + } + + if (script_prefix !== null) { + var stylesheet = output_document.createElementNS(xhtml_ns, "link"); + stylesheet.setAttribute("rel", "stylesheet"); + stylesheet.setAttribute("href", script_prefix + "testharness.css"); + var heads = output_document.getElementsByTagName("head"); + if (heads.length) { + heads[0].appendChild(stylesheet); + } + } + + var status_text_harness = {}; + status_text_harness[harness_status.OK] = "OK"; + status_text_harness[harness_status.ERROR] = "Error"; + status_text_harness[harness_status.TIMEOUT] = "Timeout"; + + var status_text = {}; + status_text[Test.prototype.PASS] = "Pass"; + status_text[Test.prototype.FAIL] = "Fail"; + status_text[Test.prototype.TIMEOUT] = "Timeout"; + status_text[Test.prototype.NOTRUN] = "Not Run"; + + var status_number = {}; + forEach(tests, + function(test) { + var status = status_text[test.status]; + if (status_number.hasOwnProperty(status)) { + status_number[status] += 1; + } else { + status_number[status] = 1; + } + }); + + function status_class(status) + { + return status.replace(/\s/g, '').toLowerCase(); + } + + var summary_template = ["section", {"id":"summary"}, + ["h2", {}, "Summary"], + function() + { + + var status = status_text_harness[harness_status.status]; + var rv = [["section", {}, + ["p", {}, + "Harness status: ", + ["span", {"class":status_class(status)}, + status + ], + ] + ]]; + + if (harness_status.status === harness_status.ERROR) { + rv[0].push(["pre", {}, harness_status.message]); + } + return rv; + }, + ["p", {}, "Found ${num_tests} tests"], + function() { + var rv = [["div", {}]]; + var i = 0; + while (status_text.hasOwnProperty(i)) { + if (status_number.hasOwnProperty(status_text[i])) { + var status = status_text[i]; + rv[0].push(["div", {"class":status_class(status)}, + ["label", {}, + ["input", {type:"checkbox", checked:"checked"}], + status_number[status] + " " + status]]); + } + i++; + } + return rv; + }, + ]; + + log.appendChild(render(summary_template, {num_tests:tests.length}, output_document)); + + forEach(output_document.querySelectorAll("section#summary label"), + function(element) + { + on_event(element, "click", + function(e) + { + if (output_document.getElementById("results") === null) { + e.preventDefault(); + return; + } + var result_class = element.parentNode.getAttribute("class"); + var style_element = output_document.querySelector("style#hide-" + result_class); + var input_element = element.querySelector("input"); + if (!style_element && !input_element.checked) { + style_element = output_document.createElementNS(xhtml_ns, "style"); + style_element.id = "hide-" + result_class; + style_element.textContent = "table#results > tbody > tr."+result_class+"{display:none}"; + output_document.body.appendChild(style_element); + } else if (style_element && input_element.checked) { + style_element.parentNode.removeChild(style_element); + } + }); + }); + + // This use of innerHTML plus manual escaping is not recommended in + // general, but is necessary here for performance. Using textContent + // on each individual adds tens of seconds of execution time for + // large test suites (tens of thousands of tests). + function escape_html(s) + { + return s.replace(/\&/g, "&") + .replace(/" + + "ResultTest Name" + + (assertions ? "Assertion" : "") + + "Message" + + ""; + for (var i = 0; i < tests.length; i++) { + html += '' + + escape_html(status_text[tests[i].status]) + + "" + + escape_html(tests[i].name) + + "" + + (assertions ? escape_html(get_assertion(tests[i])) + "" : "") + + escape_html(tests[i].message ? tests[i].message : " ") + + ""; + } + html += ""; + try { + log.lastChild.innerHTML = html; + } catch (e) { + log.appendChild(document.createElementNS(xhtml_ns, "p")) + .textContent = "Setting innerHTML for the log threw an exception."; + log.appendChild(document.createElementNS(xhtml_ns, "pre")) + .textContent = html; + } + }; + + /* + * Template code + * + * A template is just a javascript structure. An element is represented as: + * + * [tag_name, {attr_name:attr_value}, child1, child2] + * + * the children can either be strings (which act like text nodes), other templates or + * functions (see below) + * + * A text node is represented as + * + * ["{text}", value] + * + * String values have a simple substitution syntax; ${foo} represents a variable foo. + * + * It is possible to embed logic in templates by using a function in a place where a + * node would usually go. The function must either return part of a template or null. + * + * In cases where a set of nodes are required as output rather than a single node + * with children it is possible to just use a list + * [node1, node2, node3] + * + * Usage: + * + * render(template, substitutions) - take a template and an object mapping + * variable names to parameters and return either a DOM node or a list of DOM nodes + * + * substitute(template, substitutions) - take a template and variable mapping object, + * make the variable substitutions and return the substituted template + * + */ + + function is_single_node(template) + { + return typeof template[0] === "string"; + } + + function substitute(template, substitutions) + { + if (typeof template === "function") { + var replacement = template(substitutions); + if (!replacement) { + return null; + } + + return substitute(replacement, substitutions); + } + + if (is_single_node(template)) { + return substitute_single(template, substitutions); + } + + return filter(map(template, function(x) { + return substitute(x, substitutions); + }), function(x) {return x !== null;}); + } + + function substitute_single(template, substitutions) + { + var substitution_re = /\$\{([^ }]*)\}/g; + + function do_substitution(input) { + var components = input.split(substitution_re); + var rv = []; + for (var i = 0; i < components.length; i += 2) { + rv.push(components[i]); + if (components[i + 1]) { + rv.push(String(substitutions[components[i + 1]])); + } + } + return rv; + } + + function substitute_attrs(attrs, rv) + { + rv[1] = {}; + for (var name in template[1]) { + if (attrs.hasOwnProperty(name)) { + var new_name = do_substitution(name).join(""); + var new_value = do_substitution(attrs[name]).join(""); + rv[1][new_name] = new_value; + } + } + } + + function substitute_children(children, rv) + { + for (var i = 0; i < children.length; i++) { + if (children[i] instanceof Object) { + var replacement = substitute(children[i], substitutions); + if (replacement !== null) { + if (is_single_node(replacement)) { + rv.push(replacement); + } else { + extend(rv, replacement); + } + } + } else { + extend(rv, do_substitution(String(children[i]))); + } + } + return rv; + } + + var rv = []; + rv.push(do_substitution(String(template[0])).join("")); + + if (template[0] === "{text}") { + substitute_children(template.slice(1), rv); + } else { + substitute_attrs(template[1], rv); + substitute_children(template.slice(2), rv); + } + + return rv; + } + + function make_dom_single(template, doc) + { + var output_document = doc || document; + var element; + if (template[0] === "{text}") { + element = output_document.createTextNode(""); + for (var i = 1; i < template.length; i++) { + element.data += template[i]; + } + } else { + element = output_document.createElementNS(xhtml_ns, template[0]); + for (var name in template[1]) { + if (template[1].hasOwnProperty(name)) { + element.setAttribute(name, template[1][name]); + } + } + for (var i = 2; i < template.length; i++) { + if (template[i] instanceof Object) { + var sub_element = make_dom(template[i]); + element.appendChild(sub_element); + } else { + var text_node = output_document.createTextNode(template[i]); + element.appendChild(text_node); + } + } + } + + return element; + } + + function make_dom(template, substitutions, output_document) + { + if (is_single_node(template)) { + return make_dom_single(template, output_document); + } + + return map(template, function(x) { + return make_dom_single(x, output_document); + }); + } + + function render(template, substitutions, output_document) + { + return make_dom(substitute(template, substitutions), output_document); + } + + /* + * Utility funcions + */ + function assert(expected_true, function_name, description, error, substitutions) + { + if (tests.tests.length === 0) { + tests.set_file_is_test(); + } + if (expected_true !== true) { + var msg = make_message(function_name, description, + error, substitutions); + throw new AssertionError(msg); + } + } + + function AssertionError(message) + { + this.message = message; + } + + AssertionError.prototype.toString = function() { + return this.message; + }; + + function make_message(function_name, description, error, substitutions) + { + for (var p in substitutions) { + if (substitutions.hasOwnProperty(p)) { + substitutions[p] = format_value(substitutions[p]); + } + } + var node_form = substitute(["{text}", "${function_name}: ${description}" + error], + merge({function_name:function_name, + description:(description?description + " ":"")}, + substitutions)); + return node_form.slice(1).join(""); + } + + function filter(array, callable, thisObj) { + var rv = []; + for (var i = 0; i < array.length; i++) { + if (array.hasOwnProperty(i)) { + var pass = callable.call(thisObj, array[i], i, array); + if (pass) { + rv.push(array[i]); + } + } + } + return rv; + } + + function map(array, callable, thisObj) + { + var rv = []; + rv.length = array.length; + for (var i = 0; i < array.length; i++) { + if (array.hasOwnProperty(i)) { + rv[i] = callable.call(thisObj, array[i], i, array); + } + } + return rv; + } + + function extend(array, items) + { + Array.prototype.push.apply(array, items); + } + + function forEach (array, callback, thisObj) + { + for (var i = 0; i < array.length; i++) { + if (array.hasOwnProperty(i)) { + callback.call(thisObj, array[i], i, array); + } + } + } + + function merge(a,b) + { + var rv = {}; + var p; + for (p in a) { + rv[p] = a[p]; + } + for (p in b) { + rv[p] = b[p]; + } + return rv; + } + + function expose(object, name) + { + var components = name.split("."); + var target = test_environment.global_scope(); + for (var i = 0; i < components.length - 1; i++) { + if (!(components[i] in target)) { + target[components[i]] = {}; + } + target = target[components[i]]; + } + target[components[components.length - 1]] = object; + } + + function is_same_origin(w) { + try { + 'random_prop' in w; + return true; + } catch (e) { + return false; + } + } + + function supports_post_message(w) + { + var supports; + var type; + // Given IE implements postMessage across nested iframes but not across + // windows or tabs, you can't infer cross-origin communication from the presence + // of postMessage on the current window object only. + // + // Touching the postMessage prop on a window can throw if the window is + // not from the same origin AND post message is not supported in that + // browser. So just doing an existence test here won't do, you also need + // to wrap it in a try..cacth block. + try { + type = typeof w.postMessage; + if (type === "function") { + supports = true; + } + + // IE8 supports postMessage, but implements it as a host object which + // returns "object" as its `typeof`. + else if (type === "object") { + supports = true; + } + + // This is the case where postMessage isn't supported AND accessing a + // window property across origins does NOT throw (e.g. old Safari browser). + else { + supports = false; + } + } catch (e) { + // This is the case where postMessage isn't supported AND accessing a + // window property across origins throws (e.g. old Firefox browser). + supports = false; + } + return supports; + } + + /** + * Setup globals + */ + + var tests = new Tests(); + + addEventListener("error", function(e) { + if (tests.file_is_test) { + var test = tests.tests[0]; + if (test.phase >= test.phases.HAS_RESULT) { + return; + } + var message = e.message; + test.set_status(test.FAIL, message); + test.phase = test.phases.HAS_RESULT; + test.done(); + done(); + } else if (!tests.allow_uncaught_exception) { + tests.status.status = tests.status.ERROR; + tests.status.message = e.message; + } + }); + + test_environment.on_tests_ready(); + +})(); +// vim: set expandtab shiftwidth=4 tabstop=4: diff --git a/mobile/tct-contact-tizen-tests/resources/testharnessreport.js b/mobile/tct-contact-tizen-tests/resources/testharnessreport.js new file mode 100644 index 000000000..d7df7e2fb --- /dev/null +++ b/mobile/tct-contact-tizen-tests/resources/testharnessreport.js @@ -0,0 +1,397 @@ +/*global add_completion_callback, setup */ +/* + * This file is intended for vendors to implement + * code needed to integrate testharness.js tests with their own test systems. + * + * The default implementation extracts metadata from the tests and validates + * it against the cached version that should be present in the test source + * file. If the cache is not found or is out of sync, source code suitable for + * caching the metadata is optionally generated. + * + * The cached metadata is present for extraction by test processing tools that + * are unable to execute javascript. + * + * Metadata is attached to tests via the properties parameter in the test + * constructor. See testharness.js for details. + * + * Typically test system integration will attach callbacks when each test has + * run, using add_result_callback(callback(test)), or when the whole test file + * has completed, using + * add_completion_callback(callback(tests, harness_status)). + * + * For more documentation about the callback functions and the + * parameters they are called with see testharness.js + */ + + + +var metadata_generator = { + + currentMetadata: {}, + cachedMetadata: false, + metadataProperties: ['help', 'assert', 'author'], + + error: function(message) { + var messageElement = document.createElement('p'); + messageElement.setAttribute('class', 'error'); + this.appendText(messageElement, message); + + var summary = document.getElementById('summary'); + if (summary) { + summary.parentNode.insertBefore(messageElement, summary); + } + else { + document.body.appendChild(messageElement); + } + }, + + /** + * Ensure property value has contact information + */ + validateContact: function(test, propertyName) { + var result = true; + var value = test.properties[propertyName]; + var values = Array.isArray(value) ? value : [value]; + for (var index = 0; index < values.length; index++) { + value = values[index]; + var re = /(\S+)(\s*)<(.*)>(.*)/; + if (! re.test(value)) { + re = /(\S+)(\s+)(http[s]?:\/\/)(.*)/; + if (! re.test(value)) { + this.error('Metadata property "' + propertyName + + '" for test: "' + test.name + + '" must have name and contact information ' + + '("name " or "name http(s)://")'); + result = false; + } + } + } + return result; + }, + + /** + * Extract metadata from test object + */ + extractFromTest: function(test) { + var testMetadata = {}; + // filter out metadata from other properties in test + for (var metaIndex = 0; metaIndex < this.metadataProperties.length; + metaIndex++) { + var meta = this.metadataProperties[metaIndex]; + if (test.properties.hasOwnProperty(meta)) { + if ('author' == meta) { + this.validateContact(test, meta); + } + testMetadata[meta] = test.properties[meta]; + } + } + return testMetadata; + }, + + /** + * Compare cached metadata to extracted metadata + */ + validateCache: function() { + for (var testName in this.currentMetadata) { + if (! this.cachedMetadata.hasOwnProperty(testName)) { + return false; + } + var testMetadata = this.currentMetadata[testName]; + var cachedTestMetadata = this.cachedMetadata[testName]; + delete this.cachedMetadata[testName]; + + for (var metaIndex = 0; metaIndex < this.metadataProperties.length; + metaIndex++) { + var meta = this.metadataProperties[metaIndex]; + if (cachedTestMetadata.hasOwnProperty(meta) && + testMetadata.hasOwnProperty(meta)) { + if (Array.isArray(cachedTestMetadata[meta])) { + if (! Array.isArray(testMetadata[meta])) { + return false; + } + if (cachedTestMetadata[meta].length == + testMetadata[meta].length) { + for (var index = 0; + index < cachedTestMetadata[meta].length; + index++) { + if (cachedTestMetadata[meta][index] != + testMetadata[meta][index]) { + return false; + } + } + } + else { + return false; + } + } + else { + if (Array.isArray(testMetadata[meta])) { + return false; + } + if (cachedTestMetadata[meta] != testMetadata[meta]) { + return false; + } + } + } + else if (cachedTestMetadata.hasOwnProperty(meta) || + testMetadata.hasOwnProperty(meta)) { + return false; + } + } + } + for (var testName in this.cachedMetadata) { + return false; + } + return true; + }, + + appendText: function(elemement, text) { + elemement.appendChild(document.createTextNode(text)); + }, + + jsonifyArray: function(arrayValue, indent) { + var output = '['; + + if (1 == arrayValue.length) { + output += JSON.stringify(arrayValue[0]); + } + else { + for (var index = 0; index < arrayValue.length; index++) { + if (0 < index) { + output += ',\n ' + indent; + } + output += JSON.stringify(arrayValue[index]); + } + } + output += ']'; + return output; + }, + + jsonifyObject: function(objectValue, indent) { + var output = '{'; + var value; + + var count = 0; + for (var property in objectValue) { + ++count; + if (Array.isArray(objectValue[property]) || + ('object' == typeof(value))) { + ++count; + } + } + if (1 == count) { + for (var property in objectValue) { + output += ' "' + property + '": ' + + JSON.stringify(objectValue[property]) + + ' '; + } + } + else { + var first = true; + for (var property in objectValue) { + if (! first) { + output += ','; + } + first = false; + output += '\n ' + indent + '"' + property + '": '; + value = objectValue[property]; + if (Array.isArray(value)) { + output += this.jsonifyArray(value, indent + + ' '.substr(0, 5 + property.length)); + } + else if ('object' == typeof(value)) { + output += this.jsonifyObject(value, indent + ' '); + } + else { + output += JSON.stringify(value); + } + } + if (1 < output.length) { + output += '\n' + indent; + } + } + output += '}'; + return output; + }, + + /** + * Generate javascript source code for captured metadata + * Metadata is in pretty-printed JSON format + */ + generateSource: function() { + var source = + '\n'; + return source; + }, + + /** + * Add element containing metadata source code + */ + addSourceElement: function(event) { + var sourceWrapper = document.createElement('div'); + sourceWrapper.setAttribute('id', 'metadata_source'); + + var instructions = document.createElement('p'); + if (this.cachedMetadata) { + this.appendText(instructions, + 'Replace the existing + + + + diff --git a/mobile/tct-contact-tizen-tests/testresult.xsl b/mobile/tct-contact-tizen-tests/testresult.xsl new file mode 100644 index 000000000..c5199c077 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/testresult.xsl @@ -0,0 +1,491 @@ + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+
+
diff --git a/mobile/tct-contact-tizen-tests/tests.bak.xml b/mobile/tct-contact-tizen-tests/tests.bak.xml new file mode 100644 index 000000000..893752c52 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/tests.bak.xml @@ -0,0 +1,875 @@ + + + + + + + + /opt/tct-application-tizen-tests/application/ApplicationCertificate_extend.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationCertificate_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationCertificate_type_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationCertificate_value_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationContextArraySuccessCallback_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationContextArraySuccessCallback_onsuccess.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationContext_appId_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationContext_extend.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationContext_id_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationContext_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlDataArrayReplyCallback_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlDataArrayReplyCallback_onfailure.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlDataArrayReplyCallback_onsuccess.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlData_constructor.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlData_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlData_extend.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlData_key_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControlData_value_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_category_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_constructor.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_constructor_minargs.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_data_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_extend.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_mime_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_operation_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationControl_uri_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformationArraySuccessCallback_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformationArraySuccessCallback_onsuccess.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformationEventCallback_notexist.html + + + + + Make sure that TCTAppInfoEventTest1 application is not installed (uninstall it) + + + Click run and install TCTAppInfoEventTest1.wgt application from My files app (Phone/Others directory). + Pass + + + /opt/tct-application-tizen-tests/application/ApplicationInformationEventCallback_oninstalled.html + + + + + Make sure that TCTAppInfoEventTest1 application is installed (you can install it from My files app (Phone/Others directory)). + + + Click run and uninstall TCTAppInfoEventTest1 application. + Pass + + + /opt/tct-application-tizen-tests/application/ApplicationInformationEventCallback_onuninstalled.html + + + + + Make sure that TCTAppInfoEventTest1 application is installed (you can install it from My files app (Phone/Others directory)). + + + Click run and install TCTAppInfoEventTest2.wgt application from My files app (Phone/Others directory). + Pass + + + /opt/tct-application-tizen-tests/application/ApplicationInformationEventCallback_onupdated.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_categories_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_extend.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_iconPath_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_id_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_installDate_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_name_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_packageId_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_show_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_size_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationInformation_version_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManagerObject_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_addAppInfoEventListener_eventCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_addAppInfoEventListener_eventCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_addAppInfoEventListener_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_addAppInfoEventListener_missarg.html + + + + + Make sure that TCTAppInfoEventTest1 application is not installed (uninstall it) + + + Click run and install TCTAppInfoEventTest1.wgt application from My files app (Phone/Others directory). + Pass + + + /opt/tct-application-tizen-tests/application/ApplicationManager_addAppInfoEventListener_oninstalled.html + + + + + Make sure that TCTAppInfoEventTest1 application is installed (you can install it from My files app (Phone/Others directory)). + + + Click run and uninstall TCTAppInfoEventTest1 application. + Pass + + + /opt/tct-application-tizen-tests/application/ApplicationManager_addAppInfoEventListener_onuninstalled.html + + + + + Make sure that TCTAppInfoEventTest1 application is installed (you can install it from My files app (Phone/Others directory)). + + + Click run and install TCTAppInfoEventTest2.wgt application from My files app (Phone/Others directory). + Pass + + + /opt/tct-application-tizen-tests/application/ApplicationManager_addAppInfoEventListener_onupdated.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_extend.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_appControl_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_appControl_invalid_obj.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_errorCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_errorCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_missarg.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_successCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_successCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_successCallback_missarg.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_findAppControl_with_errorCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppCerts.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppCerts_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppCerts_with_id.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppContext.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppContext_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppContext_with_contextId.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppInfo.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppInfo_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppInfo_with_id.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppMetaData.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppMetaData_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppMetaData_with_id.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppSharedURI.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppSharedURI_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppSharedURI_with_id.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext_errorCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext_errorCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext_missarg.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext_successCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext_successCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsContext_with_errorCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo_errorCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo_errorCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo_missarg.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo_successCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo_successCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getAppsInfo_with_errorCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getCurrentApplication.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getCurrentApplication_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_getCurrentApplication_extra_argument.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_in_tizen.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill_errorCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill_errorCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill_successCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill_successCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill_with_errorCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_kill_with_successCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_appControl_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_appControl_invalid_obj.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_errorCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_errorCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_missarg.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_replyCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_replyCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_successCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_successCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_appControl_operation.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_appControl_operation_mime.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_appControl_operation_uri.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_appControl_operation_uri_mime.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_errorCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_id.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_replyCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launchAppControl_with_successCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch_errorCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch_errorCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch_successCallback_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch_successCallback_invalid_cb.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch_with_errorCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_launch_with_successCallback.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_removeAppInfoEventListener.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationManager_removeAppInfoEventListener_exist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationMetaData_extend.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationMetaData_key_attribute.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationMetaData_notexist.html + + + + + /opt/tct-application-tizen-tests/application/ApplicationMetaData_value_attribute.html + + + + + /opt/tct-application-tizen-tests/application/Application_ContextId_attribute.html + + + + + /opt/tct-application-tizen-tests/application/Application_appInfo_attribute.html + + + + + /opt/tct-application-tizen-tests/application/Application_exit.html + + + + + /opt/tct-application-tizen-tests/application/Application_exit_exist.html + + + + + /opt/tct-application-tizen-tests/application/Application_extend.html + + + + + /opt/tct-application-tizen-tests/application/Application_getRequestedAppControl.html + + + + + /opt/tct-application-tizen-tests/application/Application_getRequestedAppControl_exist.html + + + + + /opt/tct-application-tizen-tests/application/Application_getRequestedAppControl_extra_argument.html + + + + + /opt/tct-application-tizen-tests/application/Application_hide.html + + + + + /opt/tct-application-tizen-tests/application/Application_hide_exist.html + + + + + /opt/tct-application-tizen-tests/application/Application_hide_extra_argument.html + + + + + /opt/tct-application-tizen-tests/application/Application_notexist.html + + + + + /opt/tct-application-tizen-tests/application/FindAppControlSuccessCallback_notexist.html + + + + + /opt/tct-application-tizen-tests/application/FindAppControlSuccessCallback_onsuccess.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_appControl_attribute.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_callerAppId_attribute.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_extend.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_notexist.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_replyFailure.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_replyFailure_exist.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_replyFailure_extra_argument.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_replyResult.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_replyResult_data_TypeMismatch.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_replyResult_exist.html + + + + + /opt/tct-application-tizen-tests/application/RequestedApplicationControl_replyResult_with_data.html + + + + + \ No newline at end of file diff --git a/mobile/tct-contact-tizen-tests/tests.css b/mobile/tct-contact-tizen-tests/tests.css new file mode 100644 index 000000000..c2ba69b3d --- /dev/null +++ b/mobile/tct-contact-tizen-tests/tests.css @@ -0,0 +1,132 @@ +@charset "UTF-8"; +/* CSS Document */ +#testcasepage div, +#testcasepage h1, +#testcasepage p, +#testcasepage table, +#testcasepage tr, +#testcasepage th, +#testcasepage td { + margin: 0; + padding: 0; + border: 0; + font-weight: inherit; + font-style: inherit; + font-size: 0.96em; + font-family: arial; + vertical-align: baseline; +} + +#testcasepage p { + text-align: left; +} + +#suite_title { + text-align: left; +} + +#btc { + text-align: right; +} + +#testcasepage table { + border-collapse: separate; + border-spacing: 0; + margin-bottom: 1.4em; + vertical-align: middle; +} + +#testcasepage th, +#testcasepage td { + text-align: left; + font-weight: normal; + padding: 4px 10px 4px 5px; + vertical-align: middle; +} + +#cases table { + width: 101%; +} + +#fail_cases table { + width: 101%; +} + +#title table { + width: 101%; +} + +#device table { + width: 50%; +} + +#summary table { + width: 50%; +} + +#testcasepage th { + border-bottom: 1px solid #000; + background-color: #AAAAAA; + border-left: 1px solid #000; + border-top: 1px solid #000; + color: #000; + font-weight: bold; + vertical-align: bottom; +} + +#testcasepage th:last-child, +#testcasepage td:last-child { + border-right: 1px solid #000; +} + +#testcasepage td { + border-left: 1px solid; + font-weight: normal; + border-bottom: 1px solid; +} + +#testcasepage td.yellow_rate { + background-color: #ffcc00; +} + +#testcasepage td.green_rate { + background-color: #33cc33; +} + +#testcasepage td.dgreen_rate { + background-color: #339933; +} + +#testcasepage td.red_rate { + background-color: #FF3333; +} + +#title table, +#title tr, +#title td { + border-left: none; + border-bottom: none; + text-align: center; +} + +#title td:last-child { + border-right: none; +} + +#testcasepage h1 { + font-size: 2em; + font-family: Arial, sans-serif; + font-weight: bold; + line-height: 1; + color: #000; + margin-bottom: 0.75em; + padding-top: 0.25em; + font-weight: bold; +} + +#goTopBtn { + right: 0px; + bottom: 0px; + position: fixed; +position: absolute; + top: expression(parseInt(document.body.scrollTop) + document.body.clientHeight - 40); +} diff --git a/mobile/tct-contact-tizen-tests/tests.full.xml b/mobile/tct-contact-tizen-tests/tests.full.xml new file mode 100644 index 000000000..4420ca3ed --- /dev/null +++ b/mobile/tct-contact-tizen-tests/tests.full.xml @@ -0,0 +1,5771 @@ + + + + + + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_oneIsNull.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_one_missNull.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_bothNull.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_fullSet.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_multiple_type.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_partSet.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_anniversaries_multiple.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_emailsField_multiple.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_nameField_fullSet.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_nameField_partSet.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_notes_multiple.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_null.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_phoneNumbersField_multiple.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactArraySuccessCallback_onsuccess.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManagerObject_attri_contact.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getDefaultAddressBook.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_NULL.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactTextFormat_enum_VCARD_30.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactTextFormat_enum_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_remove_get.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_get_remove.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactEmailAddress_emails_types.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactPhoneNumber_attri_number_types.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_addressBookId_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_id_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsupdated.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsadded.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsremoved.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_successCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_contact_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_contact_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_check_fields.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_without_successCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_without_successCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_ringtoneURI.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_constructor_ContactInit.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_constructor_VCARD.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_check_types.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback_null.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_without_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_with_one.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_constructor_minargs.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_date_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_label_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_addressBookId_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_contactId_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_displayName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_firstName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_lastName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_middleName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_phoneticFirstName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_phoneticLastName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_prefix_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_suffix_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor_minargs.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_isDefault_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_number_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_connstructor_minarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_name_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_ringtoneURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_photoURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_readOnly_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_constructor_minarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_department_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_logoURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_name_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_role_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_title_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroups_extra_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_extra_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_extra_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_clone_extra_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_id_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_name_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_readOnly_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_email_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_isDefault_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_additionalInformation_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_city_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_country_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_isDefault_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_postalCode_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_region_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_streetAddress_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_types_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_type_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_url_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_addressBookId_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_addresses_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_anniversaries_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_birthday_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_emails_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_groupIds_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_id_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_isFavorite_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_lastUpdated_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_name_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_notes_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_organizations_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_personId_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_phoneNumbers_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_photoURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ringtoneURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_urls_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_contactCount_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_displayContactId_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_displayName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_hasEmail_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_hasPhoneNumber_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_id_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_isFavorite_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_photoURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_ringtoneURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroups.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_clone.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_link.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_ArraySuccessCallback_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManagerObject_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroups_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_clone_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_contacts_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_contact_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_ids_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_contacts_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_filter_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_contact_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_successCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_successCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_with_sortMode.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_with_filter.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_onsuccess.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_in_tizen.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_missarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_person_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_successCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_persons_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_successCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_personIds_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_with_sortMode.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_with_filter.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_with_errorCallback.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_filter_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_format_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_with_format.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsadded.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsremoved.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsupdated.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_onsuccess.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_onsuccess.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_personId_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_personId_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_filter_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_personId_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_personId_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_id_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_id_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_id_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_filter_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_id_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_personId_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_contactId_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactInit_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddressInit_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_constructor_minarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute_multi.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_attribute_byDefault.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor_minargs.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_constructor_minargs.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_constructor_ContactOrganizationInit.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganizationInit_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_constructor_contactNameInit.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactNameInit_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_attribute_byDefault.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_constructor_ContactAddressInit.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_isFavorite_not_nullable.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_attribute_byDefault.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_attribute_byDefault.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_readOnly_not_nullable.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_constructor_minarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_nicknames_not_nullable.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_attribute_byDefault.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_attributeType_check.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_with_null.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_label_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_CUSTOM.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_OTHER.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_phoneticMiddleName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_label_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_ASSISTANT.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_CUSTOM.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_OTHER.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_label_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_CUSTOM.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_OTHER.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_imAddress_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_label_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_type_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_argument.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_invalid.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_constructor.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_AccountId_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_messengers_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_relationships_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_messageAlertURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Contact_vibrationURI_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_label_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_relativeName_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_type_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_extend.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_data_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_with_dictionary.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_without_dictionary.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data1_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data2_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data3_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data4_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data5_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data6_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data7_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data8_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data9_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data10_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data11_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data12_attribute.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_notexist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_sortModeOrder_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_misarg.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_invalid_cb.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount_type_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount_type_TypeMismatch.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount_with_type.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount_with_type.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount_exist.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invoked.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_with_offset.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_invalid_obj.html + + + + + https://developer.tizen.org/help/topic/org.tizen.web.device.apireference/tizen/contact.html + TBD + + + + + + diff --git a/mobile/tct-contact-tizen-tests/tests.xml b/mobile/tct-contact-tizen-tests/tests.xml new file mode 100644 index 000000000..9157e0b08 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/tests.xml @@ -0,0 +1,2411 @@ + + + + + + + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_oneIsNull.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_one_missNull.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_two_bothNull.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_fullSet.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_multiple_type.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_addressesField_partSet.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_anniversaries_multiple.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_emailsField_multiple.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_nameField_fullSet.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_nameField_partSet.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_notes_multiple.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_null.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_phoneNumbersField_multiple.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactArraySuccessCallback_onsuccess.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManagerObject_attri_contact.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getDefaultAddressBook.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBooks_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_NULL.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactManager_getAddressBook_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactTextFormat_enum_VCARD_30.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactTextFormat_enum_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_remove_get.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_get_remove.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactEmailAddress_emails_types.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ContactPhoneNumber_attri_number_types.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_addressBookId_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_id_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsupdated.html + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsadded.html + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_onpersonsremoved.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_successCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_contact_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_contact_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_check_fields.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_without_successCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_without_successCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_ringtoneURI.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_constructor_ContactInit.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_constructor_VCARD.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_check_types.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback_null.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_without_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_with_one.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_constructor_minargs.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_date_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_label_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_addressBookId_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_contactId_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAnniversary_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_displayName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_firstName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_lastName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_middleName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_phoneticFirstName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_phoneticLastName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_prefix_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_suffix_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_constructor_minargs.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_isDefault_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_number_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_connstructor_minarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_name_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_ringtoneURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_photoURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_readOnly_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_constructor_minarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_department_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_logoURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_name_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_role_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_title_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroups_extra_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_extra_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_extra_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_clone_extra_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_id_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_name_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_readOnly_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_email_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_isDefault_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_additionalInformation_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_city_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_country_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_isDefault_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_postalCode_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_region_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_streetAddress_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_types_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_type_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_url_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_addressBookId_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_addresses_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_anniversaries_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_birthday_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_emails_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_groupIds_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_id_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_isFavorite_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_lastUpdated_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_name_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_notes_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_organizations_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_personId_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_phoneNumbers_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_photoURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_ringtoneURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_urls_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_contactCount_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_displayContactId_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_displayName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_hasEmail_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_hasPhoneNumber_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_id_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_isFavorite_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_photoURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_ringtoneURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroups.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_clone.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_link.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_ArraySuccessCallback_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManagerObject_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/PersonsChangeCallback_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_add_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroups_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getDefaultAddressBook_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getUnifiedAddressBook_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_clone_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_contacts_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_contact_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_ids_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_contacts_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_filter_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_contact_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_successCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_with_successCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_with_sortMode.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_with_filter.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_sortMode_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addChangeListener_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addGroup_group_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_group_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactArraySuccessCallback_onsuccess.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_in_tizen.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_missarg.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBooks_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_person_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_with_successCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_persons_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_with_successCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_personIds_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_with_sortMode.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_with_filter.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_with_errorCallback.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_filter_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_sortMode_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addChangeListener_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_format_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_with_format.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsadded.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsremoved.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_oncontactsupdated.html + + + + + /opt/tct-contact-tizen-tests/contact/PersonArraySuccessCallback_onsuccess.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_onsuccess.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeBatch_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeBatch_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookChangeCallback_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_personId_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_get_personId_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_addressBookId_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_getAddressBook_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_find_filter_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_personId_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_remove_personId_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_update_invalid_argument.html + + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_updateBatch_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_addBatch_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_id_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_id_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_get_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_id_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_update_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateBatch_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeChangeListener_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_find_filter_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_groupId_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_getGroup_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_id_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_remove_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeChangeListener_watchId_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_groupId_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_removeGroup_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_updateGroup_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_personId_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_link_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_contactId_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_unlink_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactInit_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddressInit_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_constructor_minarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_nicknames_attribute_multi.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_attribute_byDefault.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_constructor_minargs.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_constructor_minargs.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_constructor_ContactOrganizationInit.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganizationInit_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_constructor_contactNameInit.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactNameInit_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_attribute_byDefault.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_constructor_ContactAddressInit.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_isFavorite_not_nullable.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_attribute_byDefault.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_attribute_byDefault.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactGroup_readOnly_not_nullable.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_constructor_minarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_nicknames_not_nullable.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactOrganization_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_attribute_byDefault.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRef_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactWebSite_attributeType_check.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_convertToString_with_null.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_label_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_CUSTOM.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactAddress_types_attribute_OTHER.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactName_phoneticMiddleName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_label_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_ASSISTANT.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_CUSTOM.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactPhoneNumber_types_attribute_OTHER.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_label_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_CUSTOM.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactEmailAddress_types_attribute_OTHER.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_imAddress_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_label_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactInstantMessenger_type_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_obj.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_invalid_argument.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_removeAddressBook.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_addAddressBook_invalid.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_constructor.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBook_AccountId_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_messengers_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_relationships_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_messageAlertURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/Contact_vibrationURI_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_label_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_relativeName_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactRelationship_type_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_extend.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_data_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_with_dictionary.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_constructor_without_dictionary.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data1_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data2_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data3_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data4_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data5_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data6_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data7_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data8_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data9_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data10_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data11_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactExtension_data12_attribute.html + + + + + /opt/tct-contact-tizen-tests/contact/AddressBookArraySuccessCallback_notexist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_sortModeOrder_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_misarg.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_invalid_cb.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_successCallback_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount_type_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount_type_TypeMismatch.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount_with_type.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount_with_type.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_getUsageCount_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/Person_resetUsageCount_exist.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_errorCallback_invoked.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_with_offset.html + + + + + /opt/tct-contact-tizen-tests/contact/ContactManager_findByUsageCount_filter_invalid_obj.html + + + + + diff --git a/mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_image1.png b/mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_image1.png new file mode 100644 index 0000000000000000000000000000000000000000..59bb774f09e85b1bdf207cebe0d0ccab997c11c7 GIT binary patch literal 785 zcmeAS@N?(olHy`uVBq!ia0y~yU~~Xs4kn<8(twcz8fqLc+iRgcA}#_`rdN#)Cl22vUGe(SZZxE0T~vwhm?zBXcvdbtEZ*IU3?7 zxJfXdL98Q55zPBgH^EI>!-y@A&{UBWl9U8D_CP|5IP8kxfdq+NxS|_Wk62QiV=kJ& ZU}oSTa9dka9+<`%JYD@<);T3K0RXO7#QXpN literal 0 HcmV?d00001 diff --git a/mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_image2.png b/mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_image2.png new file mode 100644 index 0000000000000000000000000000000000000000..4eba09af685086cf5d134d319a409dd980ecf983 GIT binary patch literal 787 zcmeAS@N?(olHy`uVBq!ia0y~yU~~Xs4kn<8(f2Erf(*c34`HApzMsxJf)b$kvgh2xVL)?VjBpixJ3P?&q8%G$S#v2YrurPu|EXMbN`polhD94M2KS*(zjnUksj zq)UraQxr<_71TpAt5Wk6oI`@u6-t0wi=m1~snHM^4FTGP!2ib*M;Le_f&v&0wz0D7 zZm{S(VkyDEz{GTNvYO9Kqs$Hmpxp)^fB@tM7=tD8;lsxV?Ehz3Z*&%B@=@(M2Qr6~ z`$L)o!z~}iSs$cW8Wla31TiwSOjL3KqD~d@-6YM)L*z@`b(5u>?am_y2}X z&b9_!2k#oF9R!V&!23Hq2EGjk43rz{3|JX#85xd=Gx&Hgs<62-etu;9h{1`&@q5R; z#gpg%JOAbX|C|5L|Nm8gQ=Yxks!y?VB8oYJoJy-1r`$XJ?D?awQruCs3*-NPQ=R&D z|3*ok?Eimewh7oCQkVAD?BF+%I={nf?ELxBtu8wmU1_U@;Q?|DRzZSA)l@o?ELvXmCv8VbSK2;6O1a zu$57mnN=tw@W8={rYBr5I!FDO^u-ufGvUXqCE={0h*nD|0)Wi s3uMk08Llo5#@QB>nzN6mqtu1*FasmWu0UuAadZa_4AKtZpDp+g0P<&IRR910 literal 0 HcmV?d00001 diff --git a/mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_ring2.mp3 b/mobile/tct-contact-tizen-tests/webapi-tizen-contact-test_ring2.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..d4d1659dc093a4d4629c90169e4c1f9165f49f01 GIT binary patch literal 42052 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%0A{AF^EY9y~4wX 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 + + + + + + + + + + +
+
+ +
+
+ + + + + +
+ + + + diff --git a/mobile/tct-contact-tizen-tests/webrunner/jquery-1.10.2.min.js b/mobile/tct-contact-tizen-tests/webrunner/jquery-1.10.2.min.js new file mode 100644 index 000000000..da4170647 --- /dev/null +++ b/mobile/tct-contact-tizen-tests/webrunner/jquery-1.10.2.min.js @@ -0,0 +1,6 @@ +/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license +//@ sourceMappingURL=jquery-1.10.2.min.map +*/ +(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=null==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date).getTime()},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),x.ready.promise=function(t){if(!n)if(n=x.Deferred(),"complete"===a.readyState)setTimeout(x.ready);else if(a.addEventListener)a.addEventListener("DOMContentLoaded",q,!1),e.addEventListener("load",q,!1);else{a.attachEvent("onreadystatechange",q),e.attachEvent("onload",q);var r=!1;try{r=null==e.frameElement&&a.documentElement}catch(i){}r&&r.doScroll&&function o(){if(!x.isReady){try{r.doScroll("left")}catch(e){return setTimeout(o,50)}_(),x.ready()}}()}return n.promise(t)},x.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){c["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=x.type(e);return x.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=x(a),function(e,t){var n,r,i,o,a,s,l,u,c,p,f,d,h,g,m,y,v,b="sizzle"+-new Date,w=e.document,T=0,C=0,N=st(),k=st(),E=st(),S=!1,A=function(e,t){return e===t?(S=!0,0):0},j=typeof t,D=1<<31,L={}.hasOwnProperty,H=[],q=H.pop,_=H.push,M=H.push,O=H.slice,F=H.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},B="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",P="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",W=R.replace("w","w#"),$="\\["+P+"*("+R+")"+P+"*(?:([*^$|!~]?=)"+P+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+P+"*\\]",I=":("+R+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",z=RegExp("^"+P+"+|((?:^|[^\\\\])(?:\\\\.)*)"+P+"+$","g"),X=RegExp("^"+P+"*,"+P+"*"),U=RegExp("^"+P+"*([>+~]|"+P+")"+P+"*"),V=RegExp(P+"*[+~]"),Y=RegExp("="+P+"*([^\\]'\"]*)"+P+"*\\]","g"),J=RegExp(I),G=RegExp("^"+W+"$"),Q={ID:RegExp("^#("+R+")"),CLASS:RegExp("^\\.("+R+")"),TAG:RegExp("^("+R.replace("w","w*")+")"),ATTR:RegExp("^"+$),PSEUDO:RegExp("^"+I),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:RegExp("^(?:"+B+")$","i"),needsContext:RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,et=/^(?:input|select|textarea|button)$/i,tt=/^h\d$/i,nt=/'|\\/g,rt=RegExp("\\\\([\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),it=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,56320|1023&r)};try{M.apply(H=O.call(w.childNodes),w.childNodes),H[w.childNodes.length].nodeType}catch(ot){M={apply:H.length?function(e,t){_.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function at(e,t,n,i){var o,a,s,l,u,c,d,m,y,x;if((t?t.ownerDocument||t:w)!==f&&p(t),t=t||f,n=n||[],!e||"string"!=typeof e)return n;if(1!==(l=t.nodeType)&&9!==l)return[];if(h&&!i){if(o=Z.exec(e))if(s=o[1]){if(9===l){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&v(t,a)&&a.id===s)return n.push(a),n}else{if(o[2])return M.apply(n,t.getElementsByTagName(e)),n;if((s=o[3])&&r.getElementsByClassName&&t.getElementsByClassName)return M.apply(n,t.getElementsByClassName(s)),n}if(r.qsa&&(!g||!g.test(e))){if(m=d=b,y=t,x=9===l&&e,1===l&&"object"!==t.nodeName.toLowerCase()){c=mt(e),(d=t.getAttribute("id"))?m=d.replace(nt,"\\$&"):t.setAttribute("id",m),m="[id='"+m+"'] ",u=c.length;while(u--)c[u]=m+yt(c[u]);y=V.test(e)&&t.parentNode||t,x=c.join(",")}if(x)try{return M.apply(n,y.querySelectorAll(x)),n}catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(z,"$1"),t,n,i)}function st(){var e=[];function t(n,r){return e.push(n+=" ")>o.cacheLength&&delete t[e.shift()],t[n]=r}return t}function lt(e){return e[b]=!0,e}function ut(e){var t=f.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ct(e,t){var n=e.split("|"),r=e.length;while(r--)o.attrHandle[n[r]]=t}function pt(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||D)-(~e.sourceIndex||D);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function ft(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function dt(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ht(e){return lt(function(t){return t=+t,lt(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}s=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},r=at.support={},p=at.setDocument=function(e){var n=e?e.ownerDocument||e:w,i=n.defaultView;return n!==f&&9===n.nodeType&&n.documentElement?(f=n,d=n.documentElement,h=!s(n),i&&i.attachEvent&&i!==i.top&&i.attachEvent("onbeforeunload",function(){p()}),r.attributes=ut(function(e){return e.className="i",!e.getAttribute("className")}),r.getElementsByTagName=ut(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),r.getElementsByClassName=ut(function(e){return e.innerHTML="
",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),r.getById=ut(function(e){return d.appendChild(e).id=b,!n.getElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.getElementsByClassName(e):t},m=[],g=[],(r.qsa=K.test(n.querySelectorAll))&&(ut(function(e){e.innerHTML="",e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||g.push(":checked")}),ut(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(r.matchesSelector=K.test(y=d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ut(function(e){r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=K.test(d.contains)||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=d.compareDocumentPosition?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return pt(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?pt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCase()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attributes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sortStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i--)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:50,createPseudo:lt,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.test(r)&&(n=mt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]===T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLowerCase())?lt(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:lt(function(e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?lt(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:lt(function(e){return function(t){return at(e,t).length>0}}),contains:lt(function(e){return function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:lt(function(e){return G.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),function(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:ht(function(){return[0]}),last:ht(function(e,t){return[t-1]}),eq:ht(function(e,t,n){return[0>n?n+t:n]}),even:ht(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:ht(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:ht(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:ht(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}},o.pseudos.nth=o.pseudos.eq;for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseudos[n]=ft(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=dt(n);function gt(){}gt.prototype=o.filters=o.pseudos,o.setFilters=new gt;function mt(e,t){var n,r,i,a,s,l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));for(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.error(e):k(e,l).slice(0)}function yt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function vt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e(t,n,s)||i,u[1]===!0)return!0}}function bt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xt(e,t,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function wt(e,t,n,r,i,o){return r&&!r[b]&&(r=wt(r)),i&&!i[b]&&(i=wt(i,o)),lt(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.length,g=o||Nt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:xt(g,f,e,s,l),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=xt(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=xt(y===a?y.splice(h,y.length):y),i?i(null,a,y,l):M.apply(a,y)})}function Tt(e){var t,n,r,i=e.length,a=o.relative[e[0].type],s=a||o.relative[" "],l=a?1:0,c=vt(function(e){return e===t},s,!0),p=vt(function(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[vt(bt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l;i>r;r++)if(o.relative[e[r].type])break;return wt(l>1&&bt(f),l>1&&yt(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&Tt(e.slice(l,r)),i>r&&Tt(e=e.slice(r)),i>r&&yt(e))}f.push(n)}return bt(f)}function Ct(e,t){var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=q.call(p));y=xt(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?lt(s):s}l=at.compile=function(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=mt(e)),n=t.length;while(n--)o=Tt(t[n]),o[b]?r.push(o):i.push(o);o=E(e,Ct(i,r))}return o};function Nt(e,t,n){var r=0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function kt(e,t,n,i){var a,s,u,c,p,f=mt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.parentNode||t))){if(s.splice(a,1),e=i.length&&yt(s),!e)return M.apply(n,i),n;break}}}return l(e,f)(i,t,!h,n,V.test(e)),n}r.sortStable=b.split("").sort(A).join("")===b,r.detectDuplicates=S,p(),r.sortDetached=ut(function(e){return 1&e.compareDocumentPosition(f.createElement("div"))}),ut(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||ct("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),r.attributes&&ut(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ct("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),ut(function(e){return null==e.getAttribute("disabled")})||ct(B,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.uniqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);var n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),this},locked:function(){return!u},fireWith:function(e,t){return!l||i&&!u||(t=t||[],t=[e,t.slice?t.slice():t],n?u.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Deferred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","t"),d.innerHTML="
a",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="
t
",o=d.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHiddenOffsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="
",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null)}),n=s=l=u=r=o=null,t +}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=x(this),a=e.match(T)||[];while(t=a[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this.className),this.className=this.className||e===!1?"":x._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.nodeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerCase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&null!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCase("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeName)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:function(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHandle.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.value?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:function(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}})),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encoding"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.guid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.event.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Event(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.push(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._data(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.acceptData(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:function(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.delegateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.length;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.trigger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:function(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"button")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.support.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change",this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.focusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===--n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});var st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e).filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"string"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.pushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.pushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:function(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSibling")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.firstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=function(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/\s*$/g,At={option:[1,""],legend:[1,"
","
"],area:[1,"",""],param:[1,"",""],thead:[1,"","
"],tr:[2,"","
"],col:[2,"","
"],td:[3,"","
"],_default:x.support.htmlSerialize?[0,"",""]:[1,"X
","
"]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanData(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerialize&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);var r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(function(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.childNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.type||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.globalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}return this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.find.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.event.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.removeAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.innerHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.pushStack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}function Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:function(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?""!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.grep(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contains(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle); +u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(e,t),"none"!==n&&n||(Pt=(Pt||x("