[privacyprivilege][TWDAPI-195, add 12 testcases for new interface] 60/192760/3
authorzhongyuan <zy123.yuan@samsung.com>
Mon, 8 Oct 2018 03:27:03 +0000 (11:27 +0800)
committerzhongyuan yuan <zy123.yuan@samsung.com>
Fri, 9 Nov 2018 06:26:43 +0000 (06:26 +0000)
Change-Id: I729f68a135b9878679cd3705a1eb844d8aa3c793

15 files changed:
common/tct-privacyprivilege-tizen-tests/config.xml
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_notexist.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_onsuccess.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions_exist.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_exist.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_missarg.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_with_errorCallback.html [new file with mode: 0755]
common/tct-privacyprivilege-tizen-tests/tests.full.xml
common/tct-privacyprivilege-tizen-tests/tests.xml

index 8f0039adc899db155d948bc28f2b87a656fca1d4..880ba30a0ca2587a74058c6812817a53bf971c14 100755 (executable)
@@ -2,8 +2,9 @@
   <access origin="*"/>
   <name>tct-privacyprivilege-tizen-tests</name>
   <icon src="icon.png" height="117" width="117"/>
+  <tizen:privilege name="http://tizen.org/privilege/internet"/>
   <tizen:application id="apippm0000.WebAPITizenPrivacyPrivilegeTests" package="apippm0000" required_version="5.0"/>
-  <tizen:setting screen-orientation="landscape" />
+  <tizen:setting screen-orientation="landscape"/>
   <tizen:setting background-support="enable"/>
 </widget>
 
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_notexist.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_notexist.html
new file mode 100755 (executable)
index 0000000..0440745
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PermissionRequestSuccessCallback_notexist</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PermissionRequestSuccessCallback_notexist
+//==== LABEL Check if interface PermissionRequestSuccessCallback exists, it should not.
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PermissionRequestSuccessCallback:PermissionRequestSuccessCallback U
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA CBNIO
+//==== PRIORITY P3
+
+test(function () {
+    check_no_interface_object("PermissionRequestSuccessCallback");
+}, document.title);
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_onsuccess.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_onsuccess.html
new file mode 100755 (executable)
index 0000000..05b4903
--- /dev/null
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PermissionRequestSuccessCallback_onsuccess</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PermissionRequestSuccessCallback_onsuccess
+//==== LABEL Check PermissionRequestSuccessCallback onsuccess method
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PermissionRequestSuccessCallback:onsuccess M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA CBOA CBT
+//==== PRIORITY P1
+
+var t = async_test(document.title), permissionRequestSuccess, privileges = ["http://tizen.org/privilege/contact.read", "http://tizen.org/privilege/contact.write"];
+
+t.step(function (){
+    permissionRequestSuccess = t.step_func(function (result) {
+        for (v in result)
+        {
+            assert_equals(result[v].privilege, privileges[v], "Incorect returned value from requestPermissions()");
+            assert_equals(result[v].result, "PPM_DENY_FOREVER", "Incorect returned value from requestPermissions()");
+        }
+        t.done();
+    });
+    tizen.ppm.requestPermissions(privileges, permissionRequestSuccess);
+});
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions.html
new file mode 100755 (executable)
index 0000000..6d33694
--- /dev/null
@@ -0,0 +1,52 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_checkPermissions</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_checkPermissions
+//==== LABEL Check if PrivacyPrivilegeManager checkPermissions method works properly
+//==== SPEC Tizen Web API:Security:Privacy Privilege:checkPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MR MAST
+//==== PRIORITY P1
+
+test(function () {
+    var ret = null, privileges = ["http://tizen.org/privilege/contact.read", "http://tizen.org/privilege/contact.write"];
+    ret = tizen.ppm.checkPermissions(privileges);
+    for (v in ret)
+    {
+        assert_equals(ret[v].privilege, privileges[v], "returned by checkPermissions");
+        assert_equals(ret[v].type, "PPM_DENY", "returned by checkPermissions");
+    }
+}, document.title);
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions_exist.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions_exist.html
new file mode 100755 (executable)
index 0000000..d0ece22
--- /dev/null
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_checkPermissions_exist</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_checkPermissions_exist
+//==== LABEL Check if method checkPermissions of PrivacyPrivilegeManager exists
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:checkPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA ME
+//==== PRIORITY P0
+
+test(function () {
+    assert_true("checkPermissions" in tizen.ppm, "No checkPermissions method in tizen.PrivacyPrivilegeManager");
+    check_method_exists(tizen.ppm, "checkPermissions");
+}, document.title);
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions.html
new file mode 100755 (executable)
index 0000000..9165a15
--- /dev/null
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions
+//==== LABEL Check if PrivacyPrivilegeManager requestPermissions method works properly
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MR MAST MMINA
+//==== PRIORITY P1
+
+var t = async_test(document.title), permissionSuccess, returnedValue = null,
+    privileges = ["http://tizen.org/privilege/contact.read", "http://tizen.org/privilege/internet"];
+
+t.step(function (){
+    permissionSuccess = t.step_func(function (result) {
+        assert_equals(returnedValue, undefined, "Incorect returned value from requestPermissions()");
+        assert_equals(result[0].privilege, "http://tizen.org/privilege/contact.read", "Incorect returned value from requestPermissions()");
+        assert_equals(result[0].result, "PPM_DENY_FOREVER", "Incorect returned value from requestPermissions()");
+        assert_equals(result[1].privilege, "http://tizen.org/privilege/internet", "Incorect returned value from requestPermissions()");
+        assert_equals(result[1].result, "PPM_ALLOW_FOREVER", "Incorect returned value from requestPermissions()");
+        t.done();
+    });
+    returnedValue = tizen.ppm.requestPermissions(privileges, permissionSuccess);
+});
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch.html
new file mode 100755 (executable)
index 0000000..840150d
--- /dev/null
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch
+//==== LABEL Check argument errorCallback conversions exception in requestPermissions method
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MC
+//==== PRIORITY P2
+
+test(function () {
+    var conversionTable, i, exceptionName = "TypeMismatchError", errorCallback,
+
+    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.ppm.requestPermissions(["http://tizen.org/privilege/contact.read"], function(){}, errorCallback);
+            }, exceptionName + " should be thrown - given incorrect errorCallback.");
+    }
+}, document.title);
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb.html
new file mode 100755 (executable)
index 0000000..2b58932
--- /dev/null
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb
+//==== LABEL Test if putting a user errorCallback object which was not created through the constructor but has all the properties failes.
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MTCB
+//==== PRIORITY P2
+
+var t = async_test(document.title), successCallback, errorCallback;
+
+t.step(function (){
+    successCallback = t.step_func(function () {
+        assert_unreached("Success callback invoked");
+    });
+
+    errorCallback = {
+        onerror: t.step_func(function (e) {
+            assert_unreached("Invalid error callback invoked");
+        })
+    };
+    assert_throws(TYPE_MISMATCH_EXCEPTION, function () {
+        tizen.ppm.requestPermissions(["http://tizen.org/privilege/contact.read"], successCallback, errorCallback);
+    }, "Given incorrect errorCallback.");
+
+    t.done();
+});
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_exist.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_exist.html
new file mode 100755 (executable)
index 0000000..cf2bba6
--- /dev/null
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions_exist</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions_exist
+//==== LABEL Check if method requestPermissons of PrivacyPrivilegeManager exists
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA ME
+//==== PRIORITY P0
+
+test(function () {
+    assert_true("requestPermissions" in tizen.ppm, "No requestPermissions method in tizen.PrivacyPrivilegeManager");
+    check_method_exists(tizen.ppm, "requestPermissions");
+}, document.title);
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_missarg.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_missarg.html
new file mode 100755 (executable)
index 0000000..4a8c873
--- /dev/null
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions_missarg</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions_missarg
+//==== LABEL Check if requestPermissions method with missing non-optional argument works
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MMA
+//==== PRIORITY P2
+
+test(function () {
+    assert_throws(TYPE_MISMATCH_EXCEPTION, function () {
+        tizen.ppm.requestPermissions();
+    }, "TypeMismatchError should be thrown");
+}, document.title);
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch.html
new file mode 100755 (executable)
index 0000000..e6e5cb9
--- /dev/null
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch
+//==== LABEL Check argument successCallback conversions exception in requestPermissions method
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MC
+//==== PRIORITY P2
+
+test(function () {
+    var conversionTable, i, exceptionName = "TypeMismatchError", successCallback,
+
+    conversionTable = getTypeConversionExceptions("functionObject", true);
+    for (i = 0; i < conversionTable.length; i++) {
+        successCallback = conversionTable[i][0];
+        exceptionName = conversionTable[i][1];
+        assert_throws({name: exceptionName},
+            function () {
+                tizen.ppm.requestPermissions(["http://tizen.org/privilege/contact.read"], successCallback);
+            }, exceptionName + " should be thrown - given incorrect errorCallback.");
+    }
+}, document.title);
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb.html
new file mode 100755 (executable)
index 0000000..f5025fc
--- /dev/null
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb
+//==== LABEL Test if putting a user successCallback object which was not created through the constructor but has all the properties failes.
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissons M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MTCB
+//==== PRIORITY P2
+
+var t = async_test(document.title), successCallback;
+
+t.step(function (){
+    successCallback = {
+        onsuccess: t.step_func(function () {
+            assert_unreached("Invalid error callback invoked");
+        })
+    };
+    assert_throws(TYPE_MISMATCH_EXCEPTION, function () {
+        tizen.ppm.requestPermissions(["http://tizen.org/privilege/contact.read"], successCallback);
+    }, "Given incorrect successCallback.");
+
+    t.done();
+});
+
+</script>
+</body>
+</html>
diff --git a/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_with_errorCallback.html b/common/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_with_errorCallback.html
new file mode 100755 (executable)
index 0000000..da401fb
--- /dev/null
@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<!--
+Copyright (c) 2018 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:
+        Zhongyuan Yuan <zy123.yuan@samsung.com>
+
+-->
+
+<html>
+<head>
+<title>PrivacyPrivilegeManager_requestPermissions_with_errorCallback</title>
+<meta charset="utf-8"/>
+<script type="text/javascript" src="support/unitcommon.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+
+//==== TEST: PrivacyPrivilegeManager_requestPermissions_with_errorCallback
+//==== LABEL Check if PrivacyPrivilegeManager requestPermissions method works properly with errorCallback
+//==== SPEC Tizen Web API:Security:Privacy Privilege:PrivacyPrivilegeManager:requestPermissions M
+//==== SPEC_URL TBD
+//==== TEST_CRITERIA MOA MR
+//==== PRIORITY P1
+
+var t = async_test(document.title), errorCallback, permissionSuccess, returnedValue = null;
+
+t.step(function (){
+    errorCallback = t.step_func(function () {
+        assert_unreached("Error callback invoked");
+    });
+    permissionSuccess = t.step_func(function (result) {
+        assert_equals(returnedValue, undefined, "Incorect returned value from requestPermissions()");
+        for (v in result){
+            assert_equals(result[v].result, "PPM_DENY_FOREVER", "Incorect returned value from requestPermissions()");
+        }
+        t.done();
+    });
+    returnedValue = tizen.ppm.requestPermissions(["http://tizen.org/privilege/contact.read", "http://tizen.org/privilege/contact.write"], permissionSuccess, errorCallback);
+});
+
+</script>
+</body>
+</html>
index ad7bea227c6061f6e99b2975c1a948f0dccadfff..81ea65727fc58c2f486d83b588eaaca4c28c5df4 100755 (executable)
           </spec>
         </specs>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions_exist" priority="P0" purpose="Check if method checkPermissions of PrivacyPrivilegeManager exists" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions_exist.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="checkPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager checkPermissions method works properly" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="checkPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermission_exist" priority="P0" purpose="Check if method requestPermission of PrivacyPrivilegeManager exists" status="approved" type="compliance">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermission_exist.html</test_script_entry>
           </spec>
         </specs>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_exist" priority="P0" purpose="Check if method requestPermissions of PrivacyPrivilegeManager exists" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_exist.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_with_errorCallback" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly with errorCallback" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_with_errorCallback.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_missarg" priority="P2" purpose="Check if requestPermissions method with missing non-optional argument works" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_missarg.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb" priority="P2" purpose="Test if putting a user successCallback object which was not created through the constructor but has all the properties failes." status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch" priority="P2" purpose="Check argument successCallback conversions exception in requestPermissions method" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb" priority="P2" purpose="Test if putting a user errorCallback object which was not created through the constructor but has all the properties failes." status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch" priority="P2" purpose="Check argument errorCallback conversions exception in requestPermissions method" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_notexist" priority="P3" purpose="Check if interface PermissionRequestSuccessCallback exists, it should not" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_notexist.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="PermissionRequestSuccessCallback" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_onsuccess" priority="P1" purpose="Check PermissionRequestSuccessCallback onsuccess method" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_onsuccess.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="PermissionRequestSuccessCallback" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionSuccessCallback_onsuccess" priority="P1" purpose="Check PermissionSuccessCallback onsuccess method" status="approved" type="compliance">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionSuccessCallback_onsuccess.html</test_script_entry>
           </spec>
         </specs>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions_exist" priority="P0" purpose="Check if method checkPermissions of PrivacyPrivilegeManager exists" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions_exist.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="checkPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager checkPermissions method works properly" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="checkPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermission_exist" priority="P0" purpose="Check if method requestPermission of PrivacyPrivilegeManager exists" status="approved" type="compliance">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermission_exist.html</test_script_entry>
           </spec>
         </specs>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_exist" priority="P0" purpose="Check if method requestPermissions of PrivacyPrivilegeManager exists" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_exist.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_with_errorCallback" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly with errorCallback" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_with_errorCallback.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_missarg" priority="P2" purpose="Check if requestPermissions method with missing non-optional argument works" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_missarg.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb" priority="P2" purpose="Test if putting a user successCallback object which was not created through the constructor but has all the properties failes." status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch" priority="P2" purpose="Check argument successCallback conversions exception in requestPermissions method" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb" priority="P2" purpose="Test if putting a user errorCallback object which was not created through the constructor but has all the properties failes." status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch" priority="P2" purpose="Check argument errorCallback conversions exception in requestPermissions method" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="requestPermissions" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_notexist" priority="P3" purpose="Check if interface PermissionRequestSuccessCallback exists, it should not" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_notexist.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="PermissionRequestSuccessCallback" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_onsuccess" priority="P1" purpose="Check PermissionRequestSuccessCallback onsuccess method" status="approved" type="compliance">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_onsuccess.html</test_script_entry>
+        </description>
+        <specs>
+          <spec>
+            <spec_assertion category="Tizen Device API Specifications" element_name="PermissionRequestSuccessCallback" element_type="method" interface="PrivacyPrivilegeManager" section="Security" specification="PrivacyPrivilege"/>
+            <spec_url>https://developer.tizen.org/dev-guide/4.0.0/org.tizen.web.apireference/html/device_api/mobile/tizen/ppm.html</spec_url>
+            <spec_statement>TBD</spec_statement>
+          </spec>
+        </specs>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionSuccessCallback_onsuccess" priority="P1" purpose="Check PermissionSuccessCallback onsuccess method" status="approved" type="compliance">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionSuccessCallback_onsuccess.html</test_script_entry>
index dc0c1f59faa812c6fea81cee6ac6bb4965675004..1e2b88a643e22c0f1300a1917feb8898fc3f3504 100755 (executable)
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermission.html</test_script_entry>
         </description>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions_exist" priority="P0" purpose="Check if method checkPermissions of PrivacyPrivilegeManager exists">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions_exist.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager checkPermissions method works properly">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions.html</test_script_entry>
+        </description>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermission_exist" priority="P0" purpose="Check if method requestPermission of PrivacyPrivilegeManager exists">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermission_exist.html</test_script_entry>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermission_errorCallback_TypeMismatch.html</test_script_entry>
         </description>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_exist" priority="P0" purpose="Check if method requestPermissions of PrivacyPrivilegeManager exists">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_exist.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_with_errorCallback" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly with errorCallback">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_with_errorCallback.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_missarg" priority="P2" purpose="Check if requestPermissions method with missing non-optional argument works">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_missarg.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb" priority="P2" purpose="Test if putting a user successCallback object which was not created through the constructor but has all the properties failes.">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch" priority="P2" purpose="Check argument successCallback conversions exception in requestPermissions method">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb" priority="P2" purpose="Test if putting a user errorCallback object which was not created through the constructor but has all the properties failes.">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch" priority="P2" purpose="Check argument errorCallback conversions exception in requestPermissions method">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch.html</test_script_entry>
+        </description>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionSuccessCallback_notexist" priority="P3" purpose="Check if interface PermissionSuccessCallback exists, it should not">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionSuccessCallback_notexist.html</test_script_entry>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionSuccessCallback_onsuccess.html</test_script_entry>
         </description>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_notexist" priority="P3" purpose="Check if interface PermissionRequestSuccessCallback exists, it should not">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_notexist.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_onsuccess" priority="P1" purpose="Check PermissionRequestSuccessCallback onsuccess method">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_onsuccess.html</test_script_entry>
+        </description>
+      </testcase>
     </set>
     <set name="privacyprivilege_wearable" type="js">
       <capabilities>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermission.html</test_script_entry>
         </description>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions_exist" priority="P0" purpose="Check if method checkPermissions of PrivacyPrivilegeManager exists">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions_exist.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_checkPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager checkPermissions method works properly">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_checkPermissions.html</test_script_entry>
+        </description>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermission_exist" priority="P0" purpose="Check if method requestPermission of PrivacyPrivilegeManager exists">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermission_exist.html</test_script_entry>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermission_errorCallback_TypeMismatch.html</test_script_entry>
         </description>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_exist" priority="P0" purpose="Check if method requestPermissions of PrivacyPrivilegeManager exists">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_exist.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_with_errorCallback" priority="P1" purpose="Check if PrivacyPrivilegeManager requestPermissions method works properly with errorCallback">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_with_errorCallback.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_missarg" priority="P2" purpose="Check if requestPermissions method with missing non-optional argument works">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_missarg.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb" priority="P2" purpose="Test if putting a user successCallback object which was not created through the constructor but has all the properties failes.">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_invalid_cb.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch" priority="P2" purpose="Check argument successCallback conversions exception in requestPermissions method">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_successCallback_TypeMismatch.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb" priority="P2" purpose="Test if putting a user errorCallback object which was not created through the constructor but has all the properties failes.">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_invalid_cb.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch" priority="P2" purpose="Check argument errorCallback conversions exception in requestPermissions method">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PrivacyPrivilegeManager_requestPermissions_errorCallback_TypeMismatch.html</test_script_entry>
+        </description>
+      </testcase>
       <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionSuccessCallback_notexist" priority="P3" purpose="Check if interface PermissionSuccessCallback exists, it should not">
         <description>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionSuccessCallback_notexist.html</test_script_entry>
           <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionSuccessCallback_onsuccess.html</test_script_entry>
         </description>
       </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_notexist" priority="P3" purpose="Check if interface PermissionRequestSuccessCallback exists, it should not">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_notexist.html</test_script_entry>
+        </description>
+      </testcase>
+      <testcase component="Tizen Device APIs/Security/PrivacyPrivilege" execution_type="auto" id="PermissionRequestSuccessCallback_onsuccess" priority="P1" purpose="Check PermissionRequestSuccessCallback onsuccess method">
+        <description>
+          <test_script_entry>/opt/tct-privacyprivilege-tizen-tests/privacyprivilege/PermissionRequestSuccessCallback_onsuccess.html</test_script_entry>
+        </description>
+      </testcase>
     </set>
   </suite>
 </test_definition>