ciocore 8.3.0b1__py2.py3-none-any.whl → 8.3.2__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ciocore might be problematic. Click here for more details.
- ciocore/VERSION +1 -1
- ciocore/docsite/404.html +1 -1
- ciocore/docsite/apidoc/api_client/index.html +1 -1
- ciocore/docsite/apidoc/apidoc/index.html +1 -1
- ciocore/docsite/apidoc/config/index.html +1 -1
- ciocore/docsite/apidoc/data/index.html +1 -1
- ciocore/docsite/apidoc/hardware_set/index.html +1 -1
- ciocore/docsite/apidoc/package_environment/index.html +1 -1
- ciocore/docsite/apidoc/package_tree/index.html +1 -1
- ciocore/docsite/cmdline/docs/index.html +1 -1
- ciocore/docsite/cmdline/downloader/index.html +1 -1
- ciocore/docsite/cmdline/packages/index.html +1 -1
- ciocore/docsite/cmdline/uploader/index.html +1 -1
- ciocore/docsite/how-to-guides/index.html +1 -1
- ciocore/docsite/index.html +1 -1
- ciocore/docsite/sitemap.xml.gz +0 -0
- ciocore/loggeria.py +1 -1
- ciocore/package_query.py +14 -3
- {ciocore-8.3.0b1.dist-info → ciocore-8.3.2.dist-info}/METADATA +18 -11
- {ciocore-8.3.0b1.dist-info → ciocore-8.3.2.dist-info}/RECORD +26 -25
- {ciocore-8.3.0b1.dist-info → ciocore-8.3.2.dist-info}/WHEEL +1 -1
- tests/package_fixtures.py +18 -5
- tests/test_package_query.py +38 -0
- tests/test_package_tree.py +1 -1
- {ciocore-8.3.0b1.dist-info → ciocore-8.3.2.dist-info}/entry_points.txt +0 -0
- {ciocore-8.3.0b1.dist-info → ciocore-8.3.2.dist-info}/top_level.txt +0 -0
ciocore/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
8.3.
|
|
1
|
+
8.3.2
|
ciocore/docsite/404.html
CHANGED
ciocore/docsite/index.html
CHANGED
ciocore/docsite/sitemap.xml.gz
CHANGED
|
Binary file
|
ciocore/loggeria.py
CHANGED
|
@@ -422,7 +422,7 @@ def get_system_log_dir(platform=None):
|
|
|
422
422
|
platform = platform or sys.platform
|
|
423
423
|
|
|
424
424
|
if platform.startswith('win'):
|
|
425
|
-
return os.path.
|
|
425
|
+
return os.path.expandvars(os.path.join("%programdata%", "conductor", "logs"))
|
|
426
426
|
|
|
427
427
|
else:
|
|
428
428
|
return "/var/log/conductor"
|
ciocore/package_query.py
CHANGED
|
@@ -120,14 +120,25 @@ def write_text(hostnames, tree_data, platform, color_func, stream):
|
|
|
120
120
|
),
|
|
121
121
|
stream,
|
|
122
122
|
)
|
|
123
|
-
|
|
123
|
+
|
|
124
|
+
def sort_hostnames_by_version(hostnames):
|
|
125
|
+
def sort_version(pkg):
|
|
126
|
+
hostname, product, version, platform = pkg
|
|
127
|
+
return f"{version} {product} {platform}"
|
|
128
|
+
def sort_product(pkg):
|
|
129
|
+
hostname, product, version, platform = pkg
|
|
130
|
+
return f"{product} {platform}"
|
|
131
|
+
pkg_sortable = [(hostname, hostname.split()[0], hostname.split()[1], hostname.split()[2]) for hostname in hostnames]
|
|
132
|
+
_psorted = sorted(pkg_sortable, key=sort_version, reverse=True)
|
|
133
|
+
_sorted = sorted(_psorted, key=sort_product)
|
|
134
|
+
return [pkg[0] for pkg in _sorted]
|
|
124
135
|
|
|
125
136
|
def pq(format="text"):
|
|
126
137
|
packages = api_client.request_software_packages()
|
|
127
138
|
|
|
128
139
|
tree_data = PackageTree(packages)
|
|
129
140
|
|
|
130
|
-
hostnames = tree_data.supported_host_names()
|
|
141
|
+
hostnames = sort_hostnames_by_version(tree_data.supported_host_names())
|
|
131
142
|
linux_hostnames = [h for h in hostnames if h.endswith("linux")]
|
|
132
143
|
windows_hostnames = [h for h in hostnames if h.endswith("windows")]
|
|
133
144
|
|
|
@@ -168,4 +179,4 @@ def pq(format="text"):
|
|
|
168
179
|
def decorate(html):
|
|
169
180
|
html = html.replace("<table>", '<table class="pure-table pure-table-bordered">')
|
|
170
181
|
html = '<html><head>{}</head><body style="margin: 2em;">{}</body></html>'.format(PURE, html)
|
|
171
|
-
return html
|
|
182
|
+
return html
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ciocore
|
|
3
|
-
Version: 8.3.
|
|
3
|
+
Version: 8.3.2
|
|
4
4
|
Summary: Core functionality for Conductor's client tools
|
|
5
5
|
Home-page: https://github.com/ConductorTechnologies/ciocore
|
|
6
6
|
Author: conductor
|
|
@@ -9,13 +9,13 @@ Classifier: Operating System :: OS Independent
|
|
|
9
9
|
Classifier: Programming Language :: Python
|
|
10
10
|
Classifier: Topic :: Multimedia :: Graphics :: 3D Rendering
|
|
11
11
|
Description-Content-Type: text/markdown
|
|
12
|
-
Requires-Dist: requests[use_chardet_on_py3]
|
|
13
|
-
Requires-Dist: pyjwt
|
|
14
|
-
Requires-Dist: future
|
|
15
|
-
Requires-Dist: cioseq
|
|
16
|
-
Requires-Dist: Click
|
|
17
|
-
Requires-Dist: markdown
|
|
18
|
-
Requires-Dist: colorlog
|
|
12
|
+
Requires-Dist: requests[use_chardet_on_py3]==2.28.1
|
|
13
|
+
Requires-Dist: pyjwt==1.7.1
|
|
14
|
+
Requires-Dist: future>=0.18.2
|
|
15
|
+
Requires-Dist: cioseq<1.0.0,>=0.4.1
|
|
16
|
+
Requires-Dist: Click<9.0.0,>=8.1.3
|
|
17
|
+
Requires-Dist: markdown<4.0.0,>=3.5.2
|
|
18
|
+
Requires-Dist: colorlog<7.0.0,>=6.8.2
|
|
19
19
|
|
|
20
20
|
## Introduction
|
|
21
21
|
|
|
@@ -51,10 +51,17 @@ See [CONTRIBUTING](CONTRIBUTING.md)
|
|
|
51
51
|
|
|
52
52
|
## Changelog
|
|
53
53
|
|
|
54
|
-
##
|
|
54
|
+
## Version:8.3.2 -- 01 Oct 2024
|
|
55
55
|
|
|
56
|
-
*
|
|
57
|
-
|
|
56
|
+
* Tweak to package order behavior for markdown package query
|
|
57
|
+
|
|
58
|
+
## Version:8.3.1 -- 05 Sep 2024
|
|
59
|
+
|
|
60
|
+
* Fixes a bug of the Conductor log going to the wrong path on Windows
|
|
61
|
+
|
|
62
|
+
## Version:8.3.0 -- 13 Aug 2024
|
|
63
|
+
|
|
64
|
+
* Fixes a bug where the uploader would hang if there were no uploads.
|
|
58
65
|
|
|
59
66
|
## Version:8.1.0 -- 10 Jun 2024
|
|
60
67
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
ciocore/VERSION,sha256=
|
|
1
|
+
ciocore/VERSION,sha256=yMqzsb3D4LmOawN9712vzGxhLlrQgxoUp1YYCGk_0ng,5
|
|
2
2
|
ciocore/__init__.py,sha256=aTP7LeeosQA8BZE67gDV4jgfTK5zxmwZRjiTRu_ZWj0,646
|
|
3
3
|
ciocore/api_client.py,sha256=SBxEwAiwn2XtH7T_ipefUbWhczXjoNdNbQBur1RV-Bw,32810
|
|
4
4
|
ciocore/cli.py,sha256=jZ1lOKQiUcrMhsVmD9SVmPMFwHtgDF4SaoAf2-PBS54,15449
|
|
@@ -11,9 +11,9 @@ ciocore/data.py,sha256=Ji0qUk8nJXBNakoHSqBiVx8O58SbZXyt273SHlEDn3U,7027
|
|
|
11
11
|
ciocore/exceptions.py,sha256=4Oq-WX-qiN6kPUdBCHvvd6mtSQ0nCkDbJxWt2CNtpv8,1504
|
|
12
12
|
ciocore/file_utils.py,sha256=swA7th9WhDEloW69YViRTKB-oeC9UmNdEGegfH1r-Gw,17176
|
|
13
13
|
ciocore/hardware_set.py,sha256=FlRQiGCLRcSW7Oko_gzgVK8ZqJ_J92eT8e_AleAbS2E,17047
|
|
14
|
-
ciocore/loggeria.py,sha256=
|
|
14
|
+
ciocore/loggeria.py,sha256=dk8n899TYFiMTD2gjjj8oiumJkPtCus0a_IY2GORAvU,15251
|
|
15
15
|
ciocore/package_environment.py,sha256=MEHV7jfs3NJIEYCIaW8JfJdBmelvPHZMmBzPlXETiRo,7808
|
|
16
|
-
ciocore/package_query.py,sha256=
|
|
16
|
+
ciocore/package_query.py,sha256=hWi_JmRieZ8f2Ji5JR7tQnHnm29Ktb88scbIXNsDu-8,6181
|
|
17
17
|
ciocore/package_tree.py,sha256=vkORKXxQ7dO8l0_96eFwm-5AUVL0rP9bhgWYhW_v3lo,15649
|
|
18
18
|
ciocore/post_install.py,sha256=zu5Ctz2ANbKD-f5G2ODLIhKkWENBi4F3UKKu50OEWrg,1000
|
|
19
19
|
ciocore/retry.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -21,19 +21,19 @@ ciocore/validator.py,sha256=f_K7gxz122W_i5AxVx6dKhckOygl8TnmQiVj7tyX5zw,2344
|
|
|
21
21
|
ciocore/worker.py,sha256=YnE0mGqkky9uxPMyDRmvdt1p1ER_GN39AeZPIGw6f4U,21832
|
|
22
22
|
ciocore/auth/__init__.py,sha256=cdS-xZzMq41yXM5cz8sUlcYgo8CJYh8HcCCWmhbDgf0,606
|
|
23
23
|
ciocore/auth/server.py,sha256=8btX9-EokUl6q55V8muDmEV2tvvbTBD0BHeWFbwkzUc,3892
|
|
24
|
-
ciocore/docsite/404.html,sha256=
|
|
25
|
-
ciocore/docsite/index.html,sha256=
|
|
24
|
+
ciocore/docsite/404.html,sha256=xP-mZwn-87pnlkD-paIYzdXDLQr7DS551KflVdFfrCk,17207
|
|
25
|
+
ciocore/docsite/index.html,sha256=NEK4HaX2yaetTajVtQuTmS9C5cPnkAtxgeKEj7wQ9t0,20945
|
|
26
26
|
ciocore/docsite/logo.png,sha256=gArgFFWdw8w985-0TkuGIgU_pW9sziEMZdqytXb5WLo,2825
|
|
27
27
|
ciocore/docsite/objects.inv,sha256=XwmLactPEWWC4fAWqHNPBXGsluRxLLTrwDLQqq51ONY,775
|
|
28
28
|
ciocore/docsite/sitemap.xml,sha256=M_V85zl0y2adRvzJAnoCxlZH_Hl7TLnIb1A-6l_xGmI,109
|
|
29
|
-
ciocore/docsite/sitemap.xml.gz,sha256=
|
|
30
|
-
ciocore/docsite/apidoc/api_client/index.html,sha256=
|
|
31
|
-
ciocore/docsite/apidoc/apidoc/index.html,sha256=
|
|
32
|
-
ciocore/docsite/apidoc/config/index.html,sha256=
|
|
33
|
-
ciocore/docsite/apidoc/data/index.html,sha256=
|
|
34
|
-
ciocore/docsite/apidoc/hardware_set/index.html,sha256=
|
|
35
|
-
ciocore/docsite/apidoc/package_environment/index.html,sha256=
|
|
36
|
-
ciocore/docsite/apidoc/package_tree/index.html,sha256=
|
|
29
|
+
ciocore/docsite/sitemap.xml.gz,sha256=nmc2lveKFlofHpVpP6or7MslVmJqs4Y4nz-7cB32EoU,127
|
|
30
|
+
ciocore/docsite/apidoc/api_client/index.html,sha256=TvoSl4iqdXhBVfesDxe_sBPA6G-Jt1-gpWA40xXspa0,188372
|
|
31
|
+
ciocore/docsite/apidoc/apidoc/index.html,sha256=GOSvv6KZPOtgekgshRE4j7aDvJkkaiBQLwA_By9J94g,26171
|
|
32
|
+
ciocore/docsite/apidoc/config/index.html,sha256=WDqy4MLR3EMp9T_2-Z9Op61rTFkvb0aTWmtjiR8sbjA,72559
|
|
33
|
+
ciocore/docsite/apidoc/data/index.html,sha256=vjC5u7wcm2ryOW28GctA9ZG6dXgBTkMJLLomJ9Kqxo0,50850
|
|
34
|
+
ciocore/docsite/apidoc/hardware_set/index.html,sha256=SpYg-lwuCvfLPbNIIM7aQL2jGt-NA5wlVMlIKixGwBo,123042
|
|
35
|
+
ciocore/docsite/apidoc/package_environment/index.html,sha256=V6_ah3V1_4_aOwJbEcITCdwuHxe1vGtfn0maRrbflUs,69248
|
|
36
|
+
ciocore/docsite/apidoc/package_tree/index.html,sha256=60Ir6X1Q9k17bQCqozXzuMAcSVuu6DuC5zGfBk4LLnw,109393
|
|
37
37
|
ciocore/docsite/assets/_mkdocstrings.css,sha256=K3bqYEmxlOHQ3-M11JNbBWHCBDBLarkFRm8HuEYrAG4,341
|
|
38
38
|
ciocore/docsite/assets/images/favicon.png,sha256=AjhUxD_Eslt5XuSVHIAZ494Fk__rb5GLXR8qm0elfP4,1870
|
|
39
39
|
ciocore/docsite/assets/javascripts/bundle.4e31edb1.min.js,sha256=vMxCR_BtNIcbmbPV6j8Z-YDLQ9ckt4RzvGuzCTg034s,97250
|
|
@@ -76,11 +76,11 @@ ciocore/docsite/assets/stylesheets/main.83068744.min.css,sha256=gwaHRErdgDoSsYab
|
|
|
76
76
|
ciocore/docsite/assets/stylesheets/main.83068744.min.css.map,sha256=q8dWQkgGSfCcYT2Le1J0Tmxpcqxol5kZKaokp9d8Af0,42278
|
|
77
77
|
ciocore/docsite/assets/stylesheets/palette.ecc896b0.min.css,sha256=7MiWsGpIt19TLduugHr1OQv1TJ9rEsndnkc2V8D9VjM,12245
|
|
78
78
|
ciocore/docsite/assets/stylesheets/palette.ecc896b0.min.css.map,sha256=T8ZT8Mw8ws4vxyx_b1QAwyC9_pnv7r0KVaUdu2ST7ug,3639
|
|
79
|
-
ciocore/docsite/cmdline/docs/index.html,sha256
|
|
80
|
-
ciocore/docsite/cmdline/downloader/index.html,sha256=
|
|
81
|
-
ciocore/docsite/cmdline/packages/index.html,sha256=
|
|
82
|
-
ciocore/docsite/cmdline/uploader/index.html,sha256=
|
|
83
|
-
ciocore/docsite/how-to-guides/index.html,sha256=
|
|
79
|
+
ciocore/docsite/cmdline/docs/index.html,sha256=-TMLZX8gnXwRcWoaylF8zHRwWAo4BHk6ggwe_ty5F38,20051
|
|
80
|
+
ciocore/docsite/cmdline/downloader/index.html,sha256=nygj-0GQmpD79B5AxHjwzQxOFv8vxHiu6LP_T2dN_kg,23171
|
|
81
|
+
ciocore/docsite/cmdline/packages/index.html,sha256=_kXB85PBAgrqW09OerYpxnJuyERHMbcLn6qBGRdyHwk,20923
|
|
82
|
+
ciocore/docsite/cmdline/uploader/index.html,sha256=vuQ06Gys9Eoxs87PXlqnM5AgB6Ag00BlDIy6oaprjis,25123
|
|
83
|
+
ciocore/docsite/how-to-guides/index.html,sha256=KifCHl2S3RfPBZhP1UXwUNWuhcXPlPPqM4Gk6rVGhjQ,20100
|
|
84
84
|
ciocore/docsite/search/search_index.json,sha256=vBLU-rkC0pxOPX0O3MNKXRKGfgsaS1-91KsV17Gf9SY,189092
|
|
85
85
|
ciocore/docsite/stylesheets/extra.css,sha256=_Cxe9Dhg1BBi6Kqaz_iZD9z9VyqxA9vtONRjP4PVic0,354
|
|
86
86
|
ciocore/docsite/stylesheets/tables.css,sha256=LE_zwGRxGcdPIy-9QiVPecOzlEBSqZb_WP5vDkFE0ZM,3235
|
|
@@ -101,7 +101,7 @@ ciocore/uploader/upload_stats/stats_formats.py,sha256=giNirtObU66VALWghPFSRhg3q_
|
|
|
101
101
|
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
102
102
|
tests/extra_env_fixtures.py,sha256=8qvU4d8SXGKzRVNR5whVqKCQOwOVMiFVfbKBAjxa2gE,1119
|
|
103
103
|
tests/instance_type_fixtures.py,sha256=uIzQduqKQVgjllMuyXaYnRC-pwqk5lnTx3NY2M5Nujo,4320
|
|
104
|
-
tests/package_fixtures.py,sha256=
|
|
104
|
+
tests/package_fixtures.py,sha256=od7ZHofG8ubpQ3PqlUsrcHBcbmD3qVWih9eiIg1WtSQ,5361
|
|
105
105
|
tests/project_fixtures.py,sha256=iBm_th_JtAw76vlNu7Jjhh9tLH4oOaNi-MgtPzCV7yQ,138
|
|
106
106
|
tests/test_api_client.py,sha256=4jhj-YrBPcLj7XZn3ngguau2DPxpCYGMSuqPJ3hW0GQ,14497
|
|
107
107
|
tests/test_base_downloader.py,sha256=SS7tWKv2ZZhpUDk4UCg1TkrNrpntjSewgzLl1mEubSE,3603
|
|
@@ -114,14 +114,15 @@ tests/test_hardware_set.py,sha256=hW7A_suyYdU7WkB7qoHSBPLxaAP2CKqI0i_ULfO5GeY,44
|
|
|
114
114
|
tests/test_imports_2and3.py,sha256=ehqpRYPVY7djBcb8OT_cnh86iCJJ9wuMWnfSR9RHxmY,507
|
|
115
115
|
tests/test_job_downloader.py,sha256=_dZqyLZhc2Bq2n7-skERfodHx1JgFyHw8TamHp6ID9I,7025
|
|
116
116
|
tests/test_package_environment.py,sha256=CdiC2PDVSnbcwTb4fsDTWqGYSzs1n5ca2KMoyISckGA,5893
|
|
117
|
-
tests/
|
|
117
|
+
tests/test_package_query.py,sha256=LZqvCrGkWs0lMtIMumjDatX0ypeYYvabh_k1R0A6sS0,1451
|
|
118
|
+
tests/test_package_tree.py,sha256=K2kzJwRHCr6ojc4MZHjdH7VtmvG5O97OoH6vzwAE9GQ,6780
|
|
118
119
|
tests/test_submit.py,sha256=ppijBcpLXeHUZh7UXyClxLalSV6cTfKb6Ygw5zXQPKo,5836
|
|
119
120
|
tests/test_uploader.py,sha256=B1llTJt_fqR6e_V_Jxfw9z73QgkFlEPU87xLYGzt-TQ,2914
|
|
120
121
|
tests/test_validator.py,sha256=2fY66ayNc08PGyj2vTI-V_1yeCWJDngkj2zkUM5TTCI,1526
|
|
121
122
|
tests/mocks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
122
123
|
tests/mocks/glob.py,sha256=J2MH7nqi6NJOHuGdVWxhfeBd700_Ckj6cLh_8jSNkfg,215
|
|
123
|
-
ciocore-8.3.
|
|
124
|
-
ciocore-8.3.
|
|
125
|
-
ciocore-8.3.
|
|
126
|
-
ciocore-8.3.
|
|
127
|
-
ciocore-8.3.
|
|
124
|
+
ciocore-8.3.2.dist-info/METADATA,sha256=cKdUXW010yUKTuzdmz3u8iCoDekFby8TJRxpVdG31Dk,18860
|
|
125
|
+
ciocore-8.3.2.dist-info/WHEEL,sha256=qUzzGenXXuJTzyjFah76kDVqDvnk-YDzY00svnrl84w,109
|
|
126
|
+
ciocore-8.3.2.dist-info/entry_points.txt,sha256=cCqcALMYbC4d8545V9w0Zysfg9MVuKWhzDQ2er4UfGE,47
|
|
127
|
+
ciocore-8.3.2.dist-info/top_level.txt,sha256=SvlM5JlqULzAz00JZWfiUhfjhqDzYzSWssA87zdJl0o,14
|
|
128
|
+
ciocore-8.3.2.dist-info/RECORD,,
|
tests/package_fixtures.py
CHANGED
|
@@ -139,12 +139,25 @@ C4D_DATA = [
|
|
|
139
139
|
"minor_version": "0",
|
|
140
140
|
"package_id": "id_9",
|
|
141
141
|
},
|
|
142
|
+
{
|
|
143
|
+
"product": "c4d",
|
|
144
|
+
"major_version": "1",
|
|
145
|
+
"minor_version": "1",
|
|
146
|
+
"package_id": "id_10",
|
|
147
|
+
},
|
|
142
148
|
{
|
|
143
149
|
"product": "c4d",
|
|
144
150
|
"platform": "windows",
|
|
145
151
|
"major_version": "1",
|
|
146
152
|
"minor_version": "0",
|
|
147
|
-
"package_id": "
|
|
153
|
+
"package_id": "id_11",
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"product": "c4d",
|
|
157
|
+
"platform": "windows",
|
|
158
|
+
"major_version": "1",
|
|
159
|
+
"minor_version": "1",
|
|
160
|
+
"package_id": "id_12",
|
|
148
161
|
},
|
|
149
162
|
]
|
|
150
163
|
|
|
@@ -152,20 +165,20 @@ BLENDER_DATA = [
|
|
|
152
165
|
{
|
|
153
166
|
"product": "blender",
|
|
154
167
|
"major_version": "1",
|
|
155
|
-
"package_id": "
|
|
168
|
+
"package_id": "id_13",
|
|
156
169
|
},
|
|
157
170
|
{
|
|
158
171
|
"product": "blender",
|
|
159
172
|
"major_version": "1",
|
|
160
173
|
"minor_version": "0",
|
|
161
|
-
"package_id": "
|
|
174
|
+
"package_id": "id_14",
|
|
162
175
|
},
|
|
163
176
|
{
|
|
164
177
|
"product": "blender",
|
|
165
178
|
"major_version": "1",
|
|
166
179
|
"minor_version": "0",
|
|
167
180
|
"release_version": "2",
|
|
168
|
-
"package_id": "
|
|
181
|
+
"package_id": "id_15",
|
|
169
182
|
},
|
|
170
183
|
{
|
|
171
184
|
"product": "blender",
|
|
@@ -173,7 +186,7 @@ BLENDER_DATA = [
|
|
|
173
186
|
"minor_version": "0",
|
|
174
187
|
"release_version": "2",
|
|
175
188
|
"build_version": "3",
|
|
176
|
-
"package_id": "
|
|
189
|
+
"package_id": "id_16",
|
|
177
190
|
},
|
|
178
191
|
]
|
|
179
192
|
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
""" test package_query
|
|
2
|
+
"""
|
|
3
|
+
import unittest
|
|
4
|
+
import os
|
|
5
|
+
import sys
|
|
6
|
+
import copy
|
|
7
|
+
from ciocore import package_tree
|
|
8
|
+
from ciocore import package_query
|
|
9
|
+
from package_fixtures import *
|
|
10
|
+
|
|
11
|
+
class HostnameSortByVersionTest(unittest.TestCase):
|
|
12
|
+
def setUp(self):
|
|
13
|
+
self.packages = copy.deepcopy(SOFTWARE_DATA)
|
|
14
|
+
self.pt = package_tree.PackageTree(self.packages)
|
|
15
|
+
self.hostname_list = self.pt.supported_host_names()
|
|
16
|
+
|
|
17
|
+
def test_sort_hostnames_by_version(self):
|
|
18
|
+
sorted_hostnames = package_query.sort_hostnames_by_version(self.hostname_list)
|
|
19
|
+
sorted_data = {}
|
|
20
|
+
for item in sorted_hostnames:
|
|
21
|
+
product, version, platform = item.split()
|
|
22
|
+
data = {
|
|
23
|
+
'version': version,
|
|
24
|
+
'platform': platform
|
|
25
|
+
}
|
|
26
|
+
if product in sorted_data.keys():
|
|
27
|
+
sorted_data[product].append(data)
|
|
28
|
+
else:
|
|
29
|
+
sorted_data[product] = [data]
|
|
30
|
+
self.assertTrue(sorted(list(sorted_data.keys())) == list(sorted_data.keys()))
|
|
31
|
+
for product in sorted_data.keys():
|
|
32
|
+
platform_list = [pkg['platform'] for pkg in sorted_data[product]]
|
|
33
|
+
self.assertTrue(sorted(platform_list) == platform_list)
|
|
34
|
+
version_list = [pkg['version'] for pkg in sorted_data[product] if pkg['platform'] == 'linux']
|
|
35
|
+
self.assertTrue(sorted(version_list, reverse=True) == version_list)
|
|
36
|
+
|
|
37
|
+
if __name__ == "__main__":
|
|
38
|
+
unittest.main()
|
tests/test_package_tree.py
CHANGED
|
@@ -163,7 +163,7 @@ class SupportedHostNamesTest(unittest.TestCase):
|
|
|
163
163
|
def test_supported_host_names_windows(self):
|
|
164
164
|
self.pt = package_tree.PackageTree(self.packages, product="c4d", platforms=["windows"])
|
|
165
165
|
host_names = self.pt.supported_host_names()
|
|
166
|
-
self.assertEqual(len(host_names),
|
|
166
|
+
self.assertEqual(len(host_names), 2)
|
|
167
167
|
self.assertIn('c4d 1.0 windows', host_names)
|
|
168
168
|
|
|
169
169
|
|
|
File without changes
|
|
File without changes
|