Add the option to check Internet privilege in dotnettool for the FOTA
[platform/core/dotnet/launcher.git] / tests / TCs / 2_PLUGIN / README.md
1 # Test Case for dotnet-launcher - INSTALLER-PLUGIN
2
3 This script(PLUGIN.py) is a test that verifies the behavior of **install plugin**.
4 check the delete_unused_library_plugin, prefer_dotnet_aot_plugin and prefer_nuget_cache_plugin.
5 ```
6 <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
7 <metadata key="http://tizen.org/metadata/prefer_nuget_cache" value="true" />
8 ```
9
10 ### Usage
11
12 * Build tpk
13
14   Must be run(./BuildTPK.py) at least once.
15 ```
16 launcher/tests/Apps$ ./BuildTPK.py
17 ```
18
19 * Run **INSTALLER-PLUGIN** test
20 ```
21 launcher/tests/TCs$ ./2_PLUGIN/PLUGIN.py
22 launcher/tests/TCs/2_PLUGIN$ ./PLUGIN.py
23 ```
24
25 * Run individual test
26 ```
27 launcher/tests/TCs/2_PLUGIN$ ./PLUGIN.py TC_01
28 ```
29
30 ### Description
31 * TC_01
32 ```
33   PASS : The Launcher_TC_PLUGIN_01 application should not have a library of other OS.
34 ```
35   1. Nuget without `Tizen(tizen-armel, tizen-x86, ...)` related library is used.
36   2. The library does not exist in the application.
37 * TC_02
38 ```
39   PASS : The Launcher_TC_PLUGIN_02 application must have a library of Tizen OS.
40 ```
41   1. Nuget with `Tizen(tizen-armel, tizen-x86, ...)` related library is used.
42   2. The library exists in the application.
43 * TC_03
44 ```
45   PASS : The Launcher_TC_PLUGIN_03 application does not generate native image.
46 ```
47   1. The `System.Private.CoreLib.ni.dll`(SPC.dll.Backup) file exists.
48   2. The `prefer_dotnet_aot` metadata value is `false` in the manifest.
49   3. The `.native_image` folder and `.ni.dll` files do not exist.
50 * TC_04
51 ```
52   PASS : The Launcher_TC_PLUGIN_04 application generates native image.
53 ```
54   1. The `System.Private.CoreLib.ni.dll`(SPC.dll.Backup) file exists.
55   2. The `prefer_dotnet_aot` metadata value is `true` in the manifest.
56   3. The `.native_image` folder and `.ni.dll` files exist.
57   4. The number of `.dll` and `.ni.dll` in the application is the same.
58   5. The file name of `.dll` and `.ni.dll` must match in the application
59 * TC_05
60 ```
61   PASS : The Launcher_TC_PLUGIN_05 application must not have TAC applied.
62 ```
63   1. The `prefer_nuget_cache` metadata value is `false` in the manifest.
64   2. The `.tac_symlink` folder should not exist.
65 * TC_06
66 ```
67   PASS : The Launcher_TC_PLUGIN_06 application must have TAC applied.
68 ```
69   1. The `prefer_nuget_cache` metadata value is `true` in the manifest.
70   2. The `.tac_symlink` folder and `symbolic link` files exist.
71   3. The number of `.dll` in the `.tac_symlink` folder and `.dll` in the `TAC` must match.
72   4. The original file of the `symbolic link` must exist in the `TAC`.
73 * TC_07
74 ```
75   PASS : The Launcher_TC_PLUGIN_07 application must not have TLC applied.
76 ```
77   1. The `prefer_nuget_cache` metadata value is `false` in the manifest.
78   2. The nuget used has a TFM folder related to Tizen.
79   3. The `library(.so)` should exist only in the application.
80   4. The `library(.so)` should not be a symbolic link.
81   5. The arch of the target and the arch of the library must match.
82 * TC_08
83 ```
84   PASS : The Launcher_TC_PLUGIN_08 application must have TLC applied.
85 ```
86   1. The `prefer_nuget_cache` metadata value is `true` in the manifest.
87   2. The nuget used has a TFM folder related to Tizen.
88   3. The `library(.so)` with `same SHA` value must exist in the application and TLC.
89   4. The `library(.so)` should be a symbolic link.
90   5. The arch of the target and the arch of the library must match.
91 * TC_09
92 ```
93   PASS : The Launcher_TC_PLUGIN_09 application must have a ._TIZEN_DOTNET_SYSTEM_NET_DISABLEIPV6 file exist.
94 ```
95   1. Applications without Internet privilege must have a ._TIZEN_DOTNET_SYSTEM_NET_DISABLEIPV6 file.
96 * TC_10
97 ```
98   PASS : The Launcher_TC_PLUGIN_10 application must not have a ._TIZEN_DOTNET_SYSTEM_NET_DISABLEIPV6 file.
99 ```
100   1. Applications with Internet privilege must not have a ._TIZEN_DOTNET_SYSTEM_NET_DISABLEIPV6 file.
101 ----
102
103 ### Note
104
105 * Precondition
106   - Clone the **dotnet-launcher** repository.
107   - The prerequisites are **sdb** and **python3.6+**.
108   - The script must be run on the **host PC**.
109
110 * SDBs
111
112     sdb with a smart device selector.
113 ```
114 [1] 192.168.250.250 - 0
115 [2] 002c02f56c7d6c66 - TW3
116 Select a device [1-2]: 2
117 ```