[TC Fixed] Change the logical operator of the if statement
[platform/core/dotnet/launcher.git] / tests / TCs / 4_TAC / TAC.py
index 7b60030..ef165d2 100755 (executable)
@@ -25,8 +25,7 @@ def TC_01():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = cmd(f"shell find {root_path}/bin/.tac_symlink/ -name *.dll -not -name *.ni.dll")
@@ -40,8 +39,7 @@ def TC_01():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
     pid = launch_and_get_pid(f"-e", f"{pkg_id}")
@@ -49,8 +47,8 @@ def TC_01():
         return f"FAIL : Get the pid for {pkg_id}"
 
     raw = cmd(f"shell cat /proc/{pid}/smaps | grep Xamarin.Forms.*.dll")
-    if (f"{DOTNET_DIR}Xamarin.Forms/4.6.0.967/Xamarin.Forms.Platform.Tizen.dll" not in raw) and \
-       (f"{DOTNET_DIR}Xamarin.Forms/4.6.0.967/Xamarin.Forms.Core.dll" not in raw) and \
+    if (f"{DOTNET_DIR}Xamarin.Forms/4.6.0.967/Xamarin.Forms.Platform.Tizen.dll" not in raw) or \
+       (f"{DOTNET_DIR}Xamarin.Forms/4.6.0.967/Xamarin.Forms.Core.dll" not in raw) or \
        (f"{DOTNET_DIR}Xamarin.Forms/4.6.0.967/Xamarin.Forms.Platform.dll" not in raw):
         return "FAIL : The Xamarin.Forms in the TAC should be loaded when running the application"
 
@@ -75,8 +73,7 @@ def TC_02():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = cmd(f"shell find {root_path}/bin/.tac_symlink/ -name *.dll -not -name *.ni.dll")
@@ -92,8 +89,7 @@ def TC_02():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
     pid = launch_and_get_pid(f"-e", f"{pkg_id}")
@@ -101,8 +97,8 @@ def TC_02():
         return f"FAIL : Get the pid for {pkg_id}"
 
     raw = cmd(f"shell cat /proc/{pid}/smaps | grep Xamarin.Forms.*.dll")
-    if (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1364/Xamarin.Forms.Platform.Tizen.dll" not in raw) and \
-       (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1364/Xamarin.Forms.Core.dll" not in raw) and \
+    if (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1364/Xamarin.Forms.Platform.Tizen.dll" not in raw) or \
+       (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1364/Xamarin.Forms.Core.dll" not in raw) or \
        (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1364/Xamarin.Forms.Platform.dll" not in raw):
         return "FAIL : The Xamarin.Forms in the TAC should be loaded when running the application"
 
@@ -131,8 +127,7 @@ def TC_03():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = cmd(f"shell find {root_path}/bin/.tac_symlink/ -name *.dll -not -name *.ni.dll")
@@ -150,16 +145,13 @@ def TC_03():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
-    raw = cmd(f"shell find {DOTNET_DIR}Xamarin.Forms/4.8.0.1364/ -name *.dll")
-    if "No such file or directory" not in raw:
+    if exist(f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1364/ -name *.dll"):
         return f"FAIL : The Xamarin.Forms/4.8.0.1364 nuget should not exist in {DOTNET_DIR}"
-    
-    raw = cmd(f"shell find {DOTNET_DIR}Newtonsoft.Json/12.0.1/ -name *.dll")
-    if "No such file or directory" not in raw:
+
+    if exist(f"{DOTNET_DIR}Newtonsoft.Json/12.0.1/ -name *.dll"):
         return f"FAIL : The Newtonsoft.Json/12.0.1 nuget should not exist in {DOTNET_DIR}"
 
     pid = launch_and_get_pid(f"-e", f"{pkg_id}")
@@ -167,8 +159,8 @@ def TC_03():
         return f"FAIL : Get the pid for {pkg_id}"
 
     raw = cmd(f"shell cat /proc/{pid}/smaps | grep Xamarin.Forms.*.dll")
-    if (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1687/Xamarin.Forms.Platform.Tizen.dll" not in raw) and \
-       (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1687/Xamarin.Forms.Core.dll" not in raw) and \
+    if (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1687/Xamarin.Forms.Platform.Tizen.dll" not in raw) or \
+       (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1687/Xamarin.Forms.Core.dll" not in raw) or \
        (f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1687/Xamarin.Forms.Platform.dll" not in raw):
         return "FAIL : The Xamarin.Forms in the TAC should be loaded when running the application"
 
@@ -201,24 +193,19 @@ def TC_04():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" in raw:
+    if exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should not exist"
 
-    raw = cmd(f"shell find {DOTNET_DIR}Xamarin.Forms/4.8.0.1364/ -name *.dll")
-    if "No such file or directory" not in raw:
+    if exist(f"{DOTNET_DIR}Xamarin.Forms/4.8.0.1364/ -name *.dll"):
         return f"FAIL : The Xamarin.Forms/4.8.0.1364 nuget should not exist in {DOTNET_DIR}"
-    
-    raw = cmd(f"shell find {DOTNET_DIR}Newtonsoft.Json/12.0.1/ -name *.dll")
-    if "No such file or directory" not in raw:
+
+    if exist(f"{DOTNET_DIR}Newtonsoft.Json/12.0.1/ -name *.dll"):
         return f"FAIL : The Newtonsoft.Json/12.0.1 nuget should not exist in {DOTNET_DIR}"
 
-    raw = cmd(f"shell find {DOTNET_DIR}sqlite-net-base/1.7.335/ -name *.dll")
-    if "No such file or directory" not in raw:
+    if exist(f"{DOTNET_DIR}sqlite-net-base/1.7.335/ -name *.dll"):
         return f"FAIL : The sqlite-net-base/1.7.335 nuget should not exist in {DOTNET_DIR}"
-    
-    raw = cmd(f"shell find {DOTNET_DIR}SQLitePCLRaw.core/2.0.3/ -name *.dll")
-    if "No such file or directory" not in raw:
+
+    if exist(f"{DOTNET_DIR}SQLitePCLRaw.core/2.0.3/ -name *.dll"):
         return f"FAIL : The SQLitePCLRaw.core/2.0.3 nuget should not exist in {DOTNET_DIR}"
 
     pid = launch_and_get_pid(f"-e", f"{pkg_id}")
@@ -226,8 +213,8 @@ def TC_04():
         return f"FAIL : Get the pid for {pkg_id}"
 
     raw = cmd(f"shell cat /proc/{pid}/smaps | grep Xamarin.Forms.*.dll")
-    if (f"{root_path}/bin/Xamarin.Forms.Platform.Tizen.dll" not in raw) and \
-       (f"{root_path}/bin/Xamarin.Forms.Core.dll" not in raw) and \
+    if (f"{root_path}/bin/Xamarin.Forms.Platform.Tizen.dll" not in raw) or \
+       (f"{root_path}/bin/Xamarin.Forms.Core.dll" not in raw) or \
        (f"{root_path}/bin/Xamarin.Forms.Platform.dll" not in raw):
         return "FAIL : The Xamarin.Forms in the application should be loaded when running the application"
 
@@ -252,8 +239,7 @@ def TC_05():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id1}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = cmd(f"shell find {root_path}/bin/.tac_symlink/ -name *.dll -not -name *.ni.dll")
@@ -267,8 +253,7 @@ def TC_05():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
     sln_name = "Launcher_TC_TAC_06.Tizen"
@@ -286,8 +271,7 @@ def TC_05():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id2}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = cmd(f"shell find {root_path}/bin/.tac_symlink/ -name *.dll -not -name *.ni.dll")
@@ -301,8 +285,7 @@ def TC_05():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
     raw = cmd(f"uninstall {pkg_id1}")
@@ -320,8 +303,7 @@ def TC_05():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
     pid = launch_and_get_pid(f"-e", f"{pkg_id2}")
@@ -329,8 +311,8 @@ def TC_05():
         return f"FAIL : Get the pid for {pkg_id2}"
 
     raw = cmd(f"shell cat /proc/{pid}/smaps | grep Xamarin.Forms.*.dll")
-    if (f"{DOTNET_DIR}Xamarin.Forms/5.0.0.1558-pre3/Xamarin.Forms.Platform.Tizen.dll" not in raw) and \
-       (f"{DOTNET_DIR}Xamarin.Forms/5.0.0.1558-pre3/Xamarin.Forms.Core.dll" not in raw) and \
+    if (f"{DOTNET_DIR}Xamarin.Forms/5.0.0.1558-pre3/Xamarin.Forms.Platform.Tizen.dll" not in raw) or \
+       (f"{DOTNET_DIR}Xamarin.Forms/5.0.0.1558-pre3/Xamarin.Forms.Core.dll" not in raw) or \
        (f"{DOTNET_DIR}Xamarin.Forms/5.0.0.1558-pre3/Xamarin.Forms.Platform.dll" not in raw):
         return "FAIL : The Xamarin.Forms in the TAC should be loaded when running the application"
 
@@ -355,8 +337,7 @@ def TC_06():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = cmd(f"shell find {root_path}/bin/.tac_symlink/ -name *.dll -not -name *.ni.dll")
@@ -370,16 +351,14 @@ def TC_06():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
     raw = cmd(f"uninstall {pkg_id}")
     if "key[end] val[ok]" not in raw:
         return f"FAIL : Uninstall the application for {pkg_id}"
 
-    raw = cmd(f"shell find {DOTNET_DIR}Xamarin.Forms/4.4.0.991864/ -name *.dll")
-    if "No such file or directory" not in raw:
+    if exist(f"{DOTNET_DIR}Xamarin.Forms/4.4.0.991864/ -name *.dll"):
         return f"FAIL : The Xamarin.Forms/4.4.0.991864 nuget should not exist in {DOTNET_DIR}"
 
     return "PASS"
@@ -407,8 +386,7 @@ def TC_07():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = cmd(f"shell find {root_path}/bin/.tac_symlink/ -name *.dll -not -name *.ni.dll")
@@ -422,8 +400,7 @@ def TC_07():
     lines = [l for l in raw.splitlines() if ".ni.dll" not in l]
     for dll in lines:
         origin_path = dll.split("->")[1].strip()
-        raw = cmd(f"shell ls -alZ {origin_path}")
-        if "No such file or directory" in raw:
+        if not exist(f"{origin_path}"):
             return "FAIL : The original file of the symbolic link must exist"
 
     sln_name = "Launcher_TC_TAC_09.Tizen"
@@ -475,17 +452,20 @@ def TC_08():
     if root_path == "None":
         return f"FAIL : Get the root path for {pkg_id}"
 
-    raw = cmd(f"shell find {root_path}/bin/ -name .tac_symlink")
-    if ".tac_symlink" not in raw:
+    if not exist(f"{root_path}/bin/.tac_symlink"):
         return "FAIL : The .tac_symlink folder should exist"
 
     raw = subprocess.run((f"sdb -s {serial} shell sqlite3 {DOTNET_DIR}.TAC.App.list.db").split(), stdout=subprocess.PIPE, input=f"select * from TAC;\n.q\n", encoding="utf-8").stdout
     lines = [l for l in raw.splitlines() if f"{pkg_id}" in l]
     for rcd in lines:
-        if ("Xamarin.Forms/4.8.0.1560" not in rcd) and \
-           ("Google.Apis.Core/1.49.0" not in rcd) and \
-           ("Google.Apis/1.49.0" not in rcd) and \
-           ("Newtonsoft.Json/12.0.3" not in rcd):
+        is_exist = False
+        if ("Xamarin.Forms/4.8.0.1560" in rcd) or \
+           ("Google.Apis.Core/1.49.0" in rcd) or \
+           ("Google.Apis/1.49.0" in rcd) or \
+           ("Newtonsoft.Json/12.0.3" in rcd):
+            is_exist = True
+            continue
+        if not is_exist:
             return "FAIL : TAC database must have a valid value"
 
     return "PASS"
@@ -552,7 +532,7 @@ def main():
     args = parser.parse_args()
 
     global tc_array
-    if "TC_" in args.TC_NUMBER[0]:
+    if args.TC_NUMBER and "TC_" in args.TC_NUMBER[0]:
         tc_array = []
         for tc_num in args.TC_NUMBER:
             if tc_num not in funcMap: