shepherd-core 2023.11.1__py3-none-any.whl → 2023.12.1__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.
Files changed (42) hide show
  1. shepherd_core/__init__.py +1 -1
  2. shepherd_core/data_models/base/content.py +3 -8
  3. shepherd_core/data_models/base/shepherd.py +2 -6
  4. shepherd_core/data_models/content/virtual_source.py +13 -40
  5. shepherd_core/data_models/experiment/experiment.py +3 -8
  6. shepherd_core/data_models/experiment/observer_features.py +4 -9
  7. shepherd_core/data_models/experiment/target_config.py +4 -11
  8. shepherd_core/data_models/task/__init__.py +2 -6
  9. shepherd_core/data_models/task/emulation.py +7 -14
  10. shepherd_core/data_models/task/firmware_mod.py +1 -3
  11. shepherd_core/data_models/task/harvest.py +1 -3
  12. shepherd_core/data_models/testbed/observer.py +6 -22
  13. shepherd_core/data_models/testbed/testbed.py +1 -3
  14. shepherd_core/decoder_waveform/uart.py +8 -26
  15. shepherd_core/fw_tools/__init__.py +1 -3
  16. shepherd_core/fw_tools/converter.py +4 -12
  17. shepherd_core/fw_tools/patcher.py +4 -12
  18. shepherd_core/inventory/__init__.py +3 -9
  19. shepherd_core/inventory/system.py +2 -5
  20. shepherd_core/logger.py +1 -3
  21. shepherd_core/reader.py +26 -41
  22. shepherd_core/testbed_client/client.py +5 -16
  23. shepherd_core/testbed_client/fixtures.py +4 -14
  24. shepherd_core/testbed_client/user_model.py +1 -3
  25. shepherd_core/vsource/virtual_converter_model.py +4 -14
  26. shepherd_core/vsource/virtual_harvester_model.py +1 -3
  27. shepherd_core/vsource/virtual_source_model.py +2 -6
  28. shepherd_core/writer.py +11 -22
  29. {shepherd_core-2023.11.1.dist-info → shepherd_core-2023.12.1.dist-info}/METADATA +2 -5
  30. {shepherd_core-2023.11.1.dist-info → shepherd_core-2023.12.1.dist-info}/RECORD +42 -42
  31. {shepherd_core-2023.11.1.dist-info → shepherd_core-2023.12.1.dist-info}/WHEEL +1 -1
  32. tests/data_models/test_content_models.py +3 -9
  33. tests/data_models/test_experiment_models.py +2 -4
  34. tests/data_models/test_task_generation.py +1 -1
  35. tests/inventory/test_inventory.py +1 -3
  36. tests/test_cal_hw.py +2 -6
  37. tests/test_writer.py +2 -2
  38. tests/vsource/conftest.py +1 -3
  39. tests/vsource/test_converter.py +2 -6
  40. tests/vsource/test_harvester.py +3 -9
  41. {shepherd_core-2023.11.1.dist-info → shepherd_core-2023.12.1.dist-info}/top_level.txt +0 -0
  42. {shepherd_core-2023.11.1.dist-info → shepherd_core-2023.12.1.dist-info}/zip-safe +0 -0
@@ -1,16 +1,16 @@
1
- shepherd_core/__init__.py,sha256=M2d_8JNZTRWgq1b2KjaK68BFcunlhG44Z7shbhGD2Hg,1347
1
+ shepherd_core/__init__.py,sha256=M5Zl1foAX-m7EVEVTgv9PtIY00FwE0CopdFfmhLEBeE,1347
2
2
  shepherd_core/calibration_hw_def.py,sha256=VBPgekKtoA6xc5pLOADGdAIuJUNz5kdDf3pm3A13F0U,2158
3
3
  shepherd_core/commons.py,sha256=8HLrOq30Zrgh0AcrtakJYyu3hwMgQks7mF7JyaBMcdw,170
4
- shepherd_core/logger.py,sha256=xKdRmdy9_V7f5suYTHD3CzLKoM0E3-seXj7bOAaHMJ0,1662
5
- shepherd_core/reader.py,sha256=kWWtpp-H7D63YiO6m9fmAj046SyKgjkkSrQ-jHKJC0U,26095
6
- shepherd_core/writer.py,sha256=otDVKz8gFJZXQE1kljnCSL-6WJSXr9KrVfCwsVSMX8c,14487
4
+ shepherd_core/logger.py,sha256=mIJQ5eCpamsCnc_R7qoceYVXe8JM4-YZriqfzvTt9Yk,1656
5
+ shepherd_core/reader.py,sha256=mjBNWnDfsbTxlzhfPJYfcZdySCPO4K1Ub098T8RI0rI,26064
6
+ shepherd_core/writer.py,sha256=hnaC7Jy82lQDln-3ZXWLdmXUO1mgD8s16K89lBbKCew,14352
7
7
  shepherd_core/data_models/__init__.py,sha256=mem0m4nZY3EgG1ctBdGGGt128lhmglF9a4e5w9OGJu0,1651
8
8
  shepherd_core/data_models/doc_virtual_source.py,sha256=KizMcfGKj7BnHIbaJHT7KeTF01SV__UXv01qV_DGHSs,6057
9
9
  shepherd_core/data_models/base/__init__.py,sha256=ugVEWXfYRCmK4o94RG4N_GKR7AbBQLfn5PCbEKVpZMU,44
10
10
  shepherd_core/data_models/base/cal_measurement.py,sha256=ZlSnHXOiY--AzQ1-g0BnU7I4g9sMDqF3g52jsl5IHDY,2873
11
11
  shepherd_core/data_models/base/calibration.py,sha256=5Xn5p9uNaOw9mdO1ZsulpMP0rwDIMcJPf5-Cp5CnRq0,9709
12
- shepherd_core/data_models/base/content.py,sha256=IsNiwTtR0UFOMmYKOCMNoTJuzX5lPNfRaTMjFb2XQPo,1964
13
- shepherd_core/data_models/base/shepherd.py,sha256=rsR55-SGGSnrr-K0GyTuU_TjG2G0lBqe9toneHj7-fk,5784
12
+ shepherd_core/data_models/base/content.py,sha256=4k3D14m6h681QQjJFsG7Xgr4R64d21JEWKJWOnVVVck,1925
13
+ shepherd_core/data_models/base/shepherd.py,sha256=5kQNZdhF53u9S4wLadbm_73mB9VTzgHyrm6LG_KheWc,5748
14
14
  shepherd_core/data_models/base/timezone.py,sha256=OBzPPfrD__z1aTO7qlVWD1uD8eZFJ6CoDLac_mTrYCg,443
15
15
  shepherd_core/data_models/base/wrapper.py,sha256=mzAMdX9-BeSAeTzlWKFnjj3v2wV6NJgaSHULFHEiWes,600
16
16
  shepherd_core/data_models/content/__init__.py,sha256=JLj2zzjDeyqLrz9KiWDMW1shCeJjj676zjcXj8ly10Y,545
@@ -21,16 +21,16 @@ shepherd_core/data_models/content/firmware.py,sha256=cuh8tURI39ZzTF-wuh4ofsNfRC1
21
21
  shepherd_core/data_models/content/firmware_datatype.py,sha256=WHVJu-LIP_snjeITIKkuZo7aIapoTIZeFXkUNqyEqy8,154
22
22
  shepherd_core/data_models/content/virtual_harvester.py,sha256=5obXW17uBkQdfyPnpJHoSZmlIBUefoDGmFLYrxUSmOA,9268
23
23
  shepherd_core/data_models/content/virtual_harvester_fixture.yaml,sha256=UWlXq-7lsyhHAkrKkyEHWdJ0fIlyy_jwSV9O_hVE2nY,4294
24
- shepherd_core/data_models/content/virtual_source.py,sha256=3M3SdE-DxvtDsDX1aFwvwqb_tgaEKmFDVLzI9fWeZWs,14360
24
+ shepherd_core/data_models/content/virtual_source.py,sha256=0CucbyBh-r5I4UJNJayW9fKNwb6dI97iaE5MLYxrZMc,13960
25
25
  shepherd_core/data_models/content/virtual_source_fixture.yaml,sha256=2PsWP3-xad5TycZ-OQn23WsJdYwq7_9_foC4wBFYmK0,10443
26
26
  shepherd_core/data_models/experiment/__init__.py,sha256=DX9kylCe8zFm4PpVT8YS4csip7-MDoSrdah3nhBdiJE,651
27
- shepherd_core/data_models/experiment/experiment.py,sha256=PoEImOQF1J6jSydWPIk_wXZbO3Z3MNyPfeNSqBVf-P4,4042
28
- shepherd_core/data_models/experiment/observer_features.py,sha256=tFzL-EcWf1z_RT7tx-IpkEiRRbKsEcRJKibG-kk9mmw,5020
29
- shepherd_core/data_models/experiment/target_config.py,sha256=1CTT9ovR6ifASWKsIZQwPcs84Vj1LdPCxKa4crReyX4,3618
30
- shepherd_core/data_models/task/__init__.py,sha256=oBhMSrQmRFQEsCT-U5ojS0igsf54kAqRBGPoRVhULU8,3216
31
- shepherd_core/data_models/task/emulation.py,sha256=M4GdvsnwbzWLxiqq7H_PwkgNYzfdjJVpcSEZa8Pnhks,6242
32
- shepherd_core/data_models/task/firmware_mod.py,sha256=f2KV0LRId4_lmVtV6aV6ezx4WbF_YyZnngFgGEBVLVA,2760
33
- shepherd_core/data_models/task/harvest.py,sha256=EttmTINix80whPghalCo7zVJ9vonuez8N8qhuSRFBoo,3284
27
+ shepherd_core/data_models/experiment/experiment.py,sha256=LY0uIaFGAzPta0fbCy-gSxlUe90ztZdc4CqVwzc_mIU,3971
28
+ shepherd_core/data_models/experiment/observer_features.py,sha256=chK9PJ3KCS_jfd28GAfM73V-EI2c1WJM1cAAS20nIj0,4984
29
+ shepherd_core/data_models/experiment/target_config.py,sha256=IBWxf3yVF5dUBi7mS5mJXfN1rL2S7QYhu_4IL6u6Yig,3532
30
+ shepherd_core/data_models/task/__init__.py,sha256=g0l4dtIgTPKhfFvnClJrCm3zLFiZpBVbbQ2f4gzdwK0,3180
31
+ shepherd_core/data_models/task/emulation.py,sha256=HE7L3GWKdsAkUPgvdDHxYJG92GNodP9CUEtKgQJghjA,6221
32
+ shepherd_core/data_models/task/firmware_mod.py,sha256=8uXMFVk3Z96gUW0gVY95VeUx-YtZnMc2yw3paC5S5Mw,2730
33
+ shepherd_core/data_models/task/harvest.py,sha256=QcNJjgixiq70NogdcYXwpj91_6Jl7s7CaAnEw_xEWck,3254
34
34
  shepherd_core/data_models/task/observer_tasks.py,sha256=cwFBdoUESE5zcOuky35lmd6uKFaQkGiW8kNFHir1z1g,3380
35
35
  shepherd_core/data_models/task/programming.py,sha256=uO6IZR8wb0N3791QgAZE7AF0CB7XoyOkFBiDH395IvE,2244
36
36
  shepherd_core/data_models/task/testbed_tasks.py,sha256=W8ElhxOjNrTFG9A1WKGrjhNnyLxmvJgM06DwLyBbayQ,1771
@@ -41,38 +41,38 @@ shepherd_core/data_models/testbed/gpio.py,sha256=pzgRpo9QXL2lyqeov_o1Sr3_5r4T8NS
41
41
  shepherd_core/data_models/testbed/gpio_fixture.yaml,sha256=yXvoXAau2hancKi2yg1xIkErPWQa6gIxNUG3y8JuF9Y,3076
42
42
  shepherd_core/data_models/testbed/mcu.py,sha256=JHVVOYkhvhwYG5z5nUXdiVVXVcRNrAfqefaS56E4RWM,1301
43
43
  shepherd_core/data_models/testbed/mcu_fixture.yaml,sha256=lRZMLs27cTeERSFGkbMt5xgxbn11Gh9G1mQqOZK136I,522
44
- shepherd_core/data_models/testbed/observer.py,sha256=UHF8vuWtG0KiGAEPEszzUDhWP41ijWvkxaXx7prlRe8,3298
44
+ shepherd_core/data_models/testbed/observer.py,sha256=hivbfME16o-M7LwBto4hvNA9X_prGgs0FdH39cve4Mo,3110
45
45
  shepherd_core/data_models/testbed/observer_fixture.yaml,sha256=f6UjGFCsMlqtgfsThd_BfwcgpjI3LB4oPt_GNwBHWRI,4806
46
46
  shepherd_core/data_models/testbed/target.py,sha256=wIjeqXlYkDv24S1iSswyLrpSWsI_J78MnmNVk2KGpT0,1776
47
47
  shepherd_core/data_models/testbed/target_fixture.yaml,sha256=rgWCwCpPXzaEoUzMDxkb7dgH-4gW2qffUuAC78JkNQk,3667
48
- shepherd_core/data_models/testbed/testbed.py,sha256=LQ-hvYQKTjX-xKp5g1Re741NEGZD8iu5tDbl-TjbjFU,3296
48
+ shepherd_core/data_models/testbed/testbed.py,sha256=RY_YHwWuZdMWzZB5mYwgborycvnCrNdMyFB5Ou2Zrek,3274
49
49
  shepherd_core/data_models/testbed/testbed_fixture.yaml,sha256=9i2cmYRrHOHTJG9zp40h8h0LgO9DdrCJz8tyGdiQCzc,714
50
50
  shepherd_core/decoder_waveform/__init__.py,sha256=HEdjRcm3m4ySEXpJ_D3lZqnxiuobJqC8axZAaAHBwDk,43
51
- shepherd_core/decoder_waveform/uart.py,sha256=qUUBnjtRPZyjinP-qlnLURZvuH5Fxe138c-E-p_SiwA,10904
52
- shepherd_core/fw_tools/__init__.py,sha256=nXGS1wVPYbzAN6xCF0FAqUYw0EZvOe4DZ7wD-NDqUY4,2085
53
- shepherd_core/fw_tools/converter.py,sha256=cWeotgNsRaTlGPwQdyQ7f4r1pH10GDnUnwqXsAvUiuM,3345
51
+ shepherd_core/decoder_waveform/uart.py,sha256=EumQv4wTWDvz4-0vhFx9vCI0PLDsOFmSU9473TxmH_M,10671
52
+ shepherd_core/fw_tools/__init__.py,sha256=9W-MXU5j3iJ8AgRzoGUaljD0bN29jh8LtY-pyj5HWbY,2071
53
+ shepherd_core/fw_tools/converter.py,sha256=2g0CZBZLn-CfUTpJljghf8AEpjIt4X7Q1FoCTsmx3A0,3273
54
54
  shepherd_core/fw_tools/converter_elf.py,sha256=SEkrPuYUsr1VICDlZiZzr0B1njWcl9mW3J_oZk32Sb4,1008
55
- shepherd_core/fw_tools/patcher.py,sha256=o76As0SuxEz9NKg1R8qRWEiFBTwUK7kQmv_ayu6_4D4,3830
55
+ shepherd_core/fw_tools/patcher.py,sha256=nXgYKGQjcEE4IYd8yNl4-t5kjlB43iFdp24oYlEaras,3774
56
56
  shepherd_core/fw_tools/validation.py,sha256=aVfMiv8gX6rWOtj9IIAEiqh6APH2_DNWwueSyPJztro,4262
57
- shepherd_core/inventory/__init__.py,sha256=IyErH3iyVl39inLWaoTzpN9CZrbejF1dcKwF8KJT5Ig,1922
57
+ shepherd_core/inventory/__init__.py,sha256=0qkTGMMuHUOg5sn4gNOB8XcKhF75fTC7DzRh9aN4soQ,1856
58
58
  shepherd_core/inventory/python.py,sha256=Ar_M4cmmQgViY4caU5XH9Iye5X3jNFDnJiWGaZwNpo4,1168
59
- shepherd_core/inventory/system.py,sha256=GijkDgmhlQhsPgAqI-sM6ZNGXN56JufTdwi3MWcmz2g,1952
59
+ shepherd_core/inventory/system.py,sha256=Mmd5TieS3mnPSF2L_HSpjdA7mbTe8Wquduz28OJjD1Q,1930
60
60
  shepherd_core/inventory/target.py,sha256=XywiKmDpYKIBQt1Jo_k3bJeCOKxnzy5ob_9PYdFrjGE,421
61
61
  shepherd_core/testbed_client/__init__.py,sha256=V38uxXOhwB8tlAjR0jH1MPSWB1LltwC0g8ipwaIyC9o,103
62
- shepherd_core/testbed_client/client.py,sha256=4mg1_p9eGiKGfvR-haLnNC4r9-7ifSRZljhQZje3lHg,5933
63
- shepherd_core/testbed_client/fixtures.py,sha256=dcq3c-e80Z222IC7b7CSWUQ1odC31Cl1-p8ZWWIURB8,9184
64
- shepherd_core/testbed_client/user_model.py,sha256=HL-NP6YBhYLv_b-B6xeiA9q7A1zHsPT3YE5rqvc-S0g,1984
62
+ shepherd_core/testbed_client/client.py,sha256=geqj1brDvzsAtriDFSyLCAHZfMPKwch8TSpLHw5sLXM,5785
63
+ shepherd_core/testbed_client/fixtures.py,sha256=W-lTy5y4wPYfOBVGotRVxLAt72jCNTWqC_kePe06xys,9078
64
+ shepherd_core/testbed_client/user_model.py,sha256=MU_k6j_c_Y6JILDcu9iN2kNERoxS4UwaGuj5dlnlUqo,1978
65
65
  shepherd_core/vsource/__init__.py,sha256=x84_0M8Dg8R7DLKE5zyNAAGFiuOHPehDOWPt2KeBhKw,344
66
- shepherd_core/vsource/virtual_converter_model.py,sha256=FfctW3xgD-LnPYGrr_J6m6F4yLVS8TWWAHs31OJCQDs,10451
67
- shepherd_core/vsource/virtual_harvester_model.py,sha256=jAx4lq1tT30Ec53W46xG6aEvJ0di_fQ8LTnFdmVQVyI,7795
68
- shepherd_core/vsource/virtual_source_model.py,sha256=rrdY7Rsn7BHNYWQRld6TLBBzZ31G1OheCWRWHDizIYM,2759
66
+ shepherd_core/vsource/virtual_converter_model.py,sha256=gT-eKQCcroc2EIzSa2O9HGArsM_JKhx2CKJjuKUyiak,10331
67
+ shepherd_core/vsource/virtual_harvester_model.py,sha256=tlt_Emi7bGbqeo0Cb7f2rt2K07whEB7r1RXdTJncGyI,7763
68
+ shepherd_core/vsource/virtual_source_model.py,sha256=LiprQZmcfRBfliiDedr_RxEtrPYxcGWrUrqBM76zqCQ,2723
69
69
  tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
70
  tests/conftest.py,sha256=6S4xE1rsqMjZlZ7ItzipGcuggUQk04DZBCta2vEOdGI,1856
71
- tests/test_cal_hw.py,sha256=UsjLvRsarYaLQJl_jcUSEuxkmwp1Vd5OSjbNNpYBiQY,1255
71
+ tests/test_cal_hw.py,sha256=fECEm1QAtpxjLIqboljEr0UVG6neGS_-uJ-rgZrMkFg,1243
72
72
  tests/test_examples.py,sha256=RPuIOzhuMmWk8GPggiv12sGGHZ0TzjVfUDU7GERzOeM,888
73
73
  tests/test_logger.py,sha256=aW9Et1juBSyQmpEBhn1sdN4k18XOkzGxdByhgTGZGZk,432
74
74
  tests/test_reader.py,sha256=6Q5Yfpsnlonm3nT8PWc6dY41Vn7APCLateeO5InZBXI,9560
75
- tests/test_writer.py,sha256=9ETcTQd9qwOv2OrDc1mE97PMOza0DdtslnRLSJzufms,5317
75
+ tests/test_writer.py,sha256=MvKlX5ANUI-0XlAnPn39VbBRQy_vGE3ggc4OJj7stO0,5323
76
76
  tests/data_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
77
77
  tests/data_models/conftest.py,sha256=thBKAL1LsphEC5g4yQG-3U1jNr_HGFe0F0rDLAJZJ54,368
78
78
  tests/data_models/example_cal_data.yaml,sha256=61QrTWjvvI3phIoZsKKiw02thYPjZeY51a302Bl-wk4,785
@@ -88,10 +88,10 @@ tests/data_models/example_config_testbed.yaml,sha256=ubN9dfvrMPxHQuWpqw_JkNHTxc4
88
88
  tests/data_models/example_config_virtsource.yaml,sha256=zB9nGys728SzUrR4tO-e8ebr1vP8-Bgg7TsKISDnGrk,4415
89
89
  tests/data_models/test_base_models.py,sha256=QysiTWlxiD3vvHZNuQVm-Fpu1QyfnnqRHysh0FKOrcw,6755
90
90
  tests/data_models/test_content_fixtures.py,sha256=rfYIEYzxWGBD6YYQQoJyCk2qbj_BAPnFZhOoL86SgYk,1701
91
- tests/data_models/test_content_models.py,sha256=6Hc9yu0-zb2MZT4m84cz5OtDUfZEaOJR19OrnQDmZB8,8092
91
+ tests/data_models/test_content_models.py,sha256=NZMg1VqGEfs_V0_4LcQTlARfBbUOGflvp_SGyh8Urv0,8058
92
92
  tests/data_models/test_examples.py,sha256=yiiPZCjFQ4oBZCiIGmR3XOyU9qEAiFqncmO33LbbPNU,1420
93
- tests/data_models/test_experiment_models.py,sha256=sCcnoJa39g06yV2TDwNMdmaiVsd9xHmiRj6CPW_uVtY,9225
94
- tests/data_models/test_task_generation.py,sha256=EM3aLOGjl2mZrVpD01nEtOA1-4QHiSN1H3C5_88UWCM,1908
93
+ tests/data_models/test_experiment_models.py,sha256=1imFOh7_zFCYlihsj6VP_9tlKYXGelSKmsZAqwAh0LA,9184
94
+ tests/data_models/test_task_generation.py,sha256=xsGMb_KjhqFTogr5IkAax4CPBz4VfvgxjYgUtLMM-1E,1905
95
95
  tests/data_models/test_task_models.py,sha256=Ii673kTZjqpj8ly1fJ_qp43XWL3KEHzKBwKO_oAYvn4,3575
96
96
  tests/data_models/test_testbed_fixtures.py,sha256=k5hxz5vgx-LkKDxJptOUdrCZFwpEp8h2cK1HyY_5reA,1419
97
97
  tests/data_models/test_testbed_models.py,sha256=WSVZQIEvA7nOUx8w9v-gxqEjt9Sh_0zG6J0yr2Bts9k,4573
@@ -103,15 +103,15 @@ tests/fw_tools/test_converter.py,sha256=-jbAOjoad1KC6Za5S8AMs2CGJgmLSSijAV7dlraq
103
103
  tests/fw_tools/test_patcher.py,sha256=LmMG5XKoV9vjjFbgo2SSnckz6WfuO6HtJEXdu545Zv4,2109
104
104
  tests/fw_tools/test_validation.py,sha256=769IIbnzljWnjZuZYb3HaVDTlXziSZDORLZVxnrzK2E,1893
105
105
  tests/inventory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
106
- tests/inventory/test_inventory.py,sha256=q7i0Pw7rlYEPOBzsfVhcOE7WUP39dNtyjhNE7CbLA20,618
106
+ tests/inventory/test_inventory.py,sha256=rw7NNHEJIT9W3G-N1SgqtwUO_o3EvHfSrbf9e3bRJLs,612
107
107
  tests/testbed_client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
108
108
  tests/vsource/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
- tests/vsource/conftest.py,sha256=jxSi5a6iuuCGtMY9rmnC_OS8Lqa7vkEGoXno7tKfS9k,1403
110
- tests/vsource/test_converter.py,sha256=zyhzgg95yi_AUWnGcWwuDf2-_RHfsUxvUDngptXn_sE,5151
111
- tests/vsource/test_harvester.py,sha256=-8OT1n7J7GnXD5aTngKq4L6WNTYKEmylDyFasqh7Nrw,2524
109
+ tests/vsource/conftest.py,sha256=57KUTh9NtZ_1OZ1YWY8JzwPDMH3KcdHSFaIYzvL7HyY,1387
110
+ tests/vsource/test_converter.py,sha256=vDbhLuMbN6oAv9DRhFIl-SUQC9BlghMTHCR5KhP6sgY,5075
111
+ tests/vsource/test_harvester.py,sha256=hx8Nfd4SIJ7-bcrd2tpT_nb7O7-ZUSuqYMA7Eo69j3s,2442
112
112
  tests/vsource/test_z.py,sha256=H9LlNsAq3nV5PPaoM8yP4FLnPhdJJSoLSmUOD5rtobM,90
113
- shepherd_core-2023.11.1.dist-info/METADATA,sha256=i5YBntsNWilFi2lLAM-ZcGzTTm2VHkoOK02Vk4lQWf8,7088
114
- shepherd_core-2023.11.1.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
115
- shepherd_core-2023.11.1.dist-info/top_level.txt,sha256=6H9zsX2PNWwILI7EJu8fNam1KfG2Sqvkez-jlwrD9SE,20
116
- shepherd_core-2023.11.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
117
- shepherd_core-2023.11.1.dist-info/RECORD,,
113
+ shepherd_core-2023.12.1.dist-info/METADATA,sha256=zX8uiU5P39bWwiau2V_7AD1dqs7B6N8Pbsy4qvedCn4,7029
114
+ shepherd_core-2023.12.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
115
+ shepherd_core-2023.12.1.dist-info/top_level.txt,sha256=6H9zsX2PNWwILI7EJu8fNam1KfG2Sqvkez-jlwrD9SE,20
116
+ shepherd_core-2023.12.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
117
+ shepherd_core-2023.12.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.41.3)
2
+ Generator: bdist_wheel (0.42.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -144,9 +144,7 @@ def test_content_model_fw_extract_hex_to_dir(path_elf: Path, tmp_path: Path) ->
144
144
 
145
145
 
146
146
  @pytest.mark.parametrize("path_elf", files_elf)
147
- def test_content_model_fw_extract_path_elf_to_dir(
148
- path_elf: Path, tmp_path: Path
149
- ) -> None:
147
+ def test_content_model_fw_extract_path_elf_to_dir(path_elf: Path, tmp_path: Path) -> None:
150
148
  assert path_elf.exists()
151
149
  fw = Firmware(
152
150
  data=path_elf,
@@ -164,9 +162,7 @@ def test_content_model_fw_extract_path_elf_to_dir(
164
162
  @pytest.mark.elf
165
163
  @pytest.mark.converter
166
164
  @pytest.mark.parametrize("path_elf", files_elf)
167
- def test_content_model_fw_extract_path_hex_to_dir(
168
- path_elf: Path, tmp_path: Path
169
- ) -> None:
165
+ def test_content_model_fw_extract_path_hex_to_dir(path_elf: Path, tmp_path: Path) -> None:
170
166
  path_hex = (tmp_path / (path_elf.stem + ".hex")).resolve()
171
167
  path_hex = fw_tools.elf_to_hex(path_elf, path_hex)
172
168
  assert path_hex.exists()
@@ -225,9 +221,7 @@ def test_content_model_hrv_faulty_voltage0() -> None:
225
221
 
226
222
  def test_content_model_hrv_faulty_voltage1() -> None:
227
223
  with pytest.raises(ValueError):
228
- _ = VirtualHarvesterConfig(
229
- name="iv110", voltage_min_mV=4001, voltage_max_mV=4000
230
- )
224
+ _ = VirtualHarvesterConfig(name="iv110", voltage_min_mV=4001, voltage_max_mV=4000)
231
225
 
232
226
 
233
227
  def test_content_model_hrv_faulty_voltage2() -> None:
@@ -46,7 +46,7 @@ def test_experiment_model_exp_yaml_comparison() -> None:
46
46
 
47
47
  target_cfgs = TargetConfig(
48
48
  target_IDs=list(range(1, 5)),
49
- custom_IDs=list(range(0, 4)),
49
+ custom_IDs=list(range(4)),
50
50
  energy_env={"name": "SolarSunny"},
51
51
  virtual_source={"name": "diode+capacitor"},
52
52
  firmware1={"name": "nrf52_demo_rf"},
@@ -148,9 +148,7 @@ def test_experiment_model_exp_missing_target() -> None:
148
148
  target_IDs=[1234567], # <- not existent
149
149
  custom_IDs=list(range(7, 18)),
150
150
  energy_env=EnergyEnvironment(name="ThermoelectricWashingMachine"),
151
- virtual_source=VirtualSourceConfig(
152
- name="BQ25570-Schmitt", harvester=hrv
153
- ),
151
+ virtual_source=VirtualSourceConfig(name="BQ25570-Schmitt", harvester=hrv),
154
152
  firmware1=Firmware(name="nrf52_demo_rf"),
155
153
  firmware2=Firmware(name="msp430_deep_sleep"),
156
154
  ),
@@ -25,7 +25,7 @@ def test_task_generation_script(tmp_path: Path) -> None:
25
25
  # first init similar to yaml
26
26
  TargetConfig(
27
27
  target_IDs=list(range(1, 4)),
28
- custom_IDs=list(range(0, 3)),
28
+ custom_IDs=list(range(3)),
29
29
  energy_env={"name": "SolarSunny"},
30
30
  virtual_source={"name": "diode+capacitor"},
31
31
  firmware1={"name": "nrf52_demo_rf"},
@@ -9,9 +9,7 @@ from shepherd_core.inventory import SystemInventory
9
9
  from shepherd_core.inventory import TargetInventory
10
10
 
11
11
 
12
- @pytest.mark.parametrize(
13
- "inv", [PythonInventory, SystemInventory, TargetInventory, Inventory]
14
- )
12
+ @pytest.mark.parametrize("inv", [PythonInventory, SystemInventory, TargetInventory, Inventory])
15
13
  def test_collect_data(inv: Inventory) -> None:
16
14
  inv.collect()
17
15
 
tests/test_cal_hw.py CHANGED
@@ -10,9 +10,7 @@ from shepherd_core.calibration_hw_def import dac_raw_to_voltage
10
10
  from shepherd_core.calibration_hw_def import dac_voltage_to_raw
11
11
 
12
12
 
13
- @pytest.mark.parametrize(
14
- "fn", [adc_current_to_raw, adc_voltage_to_raw, dac_voltage_to_raw]
15
- )
13
+ @pytest.mark.parametrize("fn", [adc_current_to_raw, adc_voltage_to_raw, dac_voltage_to_raw])
16
14
  def test_convert_to_raw(fn: Callable) -> None:
17
15
  values = [-1, -1e-6, 1e-6, 1e-5, 1e-4, 1e-3, 1e-2, 1e-1, 1e-0]
18
16
  value_prev = -1
@@ -24,9 +22,7 @@ def test_convert_to_raw(fn: Callable) -> None:
24
22
  value_prev = value_raw
25
23
 
26
24
 
27
- @pytest.mark.parametrize(
28
- "fn", [adc_raw_to_current, adc_raw_to_voltage, dac_raw_to_voltage]
29
- )
25
+ @pytest.mark.parametrize("fn", [adc_raw_to_current, adc_raw_to_voltage, dac_raw_to_voltage])
30
26
  def test_convert_to_si(fn: Callable) -> None:
31
27
  values = [-100, -1, 0, 1, 2**6, 2**12, 2**18, 2**24]
32
28
  value_prev = -1
tests/test_writer.py CHANGED
@@ -140,7 +140,7 @@ def test_writer_align(h5_path: Path) -> None:
140
140
  data_nd = np.zeros((int(length),))
141
141
  sfw.append_iv_data_raw(time_nd, data_nd, data_nd)
142
142
  with Reader(h5_path) as sfr:
143
- assert sfr.ds_time.size < length
143
+ assert sfr.ds_voltage.size < length
144
144
 
145
145
 
146
146
  def test_writer_not_align(h5_path: Path) -> None:
@@ -151,7 +151,7 @@ def test_writer_not_align(h5_path: Path) -> None:
151
151
  data_nd = np.zeros((int(length),))
152
152
  sfw.append_iv_data_raw(time_nd, data_nd, data_nd)
153
153
  with Reader(h5_path) as sfr:
154
- assert sfr.ds_time.size == length
154
+ assert sfr.ds_voltage.size == length
155
155
 
156
156
 
157
157
  def test_writer_setter(h5_path: Path) -> None:
tests/vsource/conftest.py CHANGED
@@ -9,9 +9,7 @@ from shepherd_data import mppt
9
9
 
10
10
  @pytest.fixture
11
11
  def file_ivonne() -> Path:
12
- path = (
13
- Path(__file__).resolve().parent.parent.parent.parent / "shepherd_data/examples"
14
- )
12
+ path = Path(__file__).resolve().parent.parent.parent.parent / "shepherd_data/examples"
15
13
  os.chdir(path)
16
14
  return path / "./jogging_10m.iv"
17
15
 
@@ -146,9 +146,7 @@ def test_vsource_vsrc_sim_curve(src_name: str, file_ivcurve: Path) -> None:
146
146
  for _t, _v, _i in file.read_buffers():
147
147
  length = max(_v.size, _i.size)
148
148
  for _n in range(length):
149
- src.iterate_sampling(
150
- V_inp_uV=_v[_n] * 10**6, I_inp_nA=_i[_n] * 10**9
151
- )
149
+ src.iterate_sampling(V_inp_uV=_v[_n] * 10**6, I_inp_nA=_i[_n] * 10**9)
152
150
 
153
151
 
154
152
  @pytest.mark.parametrize("src_name", src_list)
@@ -160,6 +158,4 @@ def test_vsource_vsrc_sim_sample(src_name: str, file_ivsample: Path) -> None:
160
158
  for _t, _v, _i in file.read_buffers():
161
159
  length = max(_v.size, _i.size)
162
160
  for _n in range(length):
163
- src.iterate_sampling(
164
- V_inp_uV=_v[_n] * 10**6, I_inp_nA=_i[_n] * 10**9
165
- )
161
+ src.iterate_sampling(V_inp_uV=_v[_n] * 10**6, I_inp_nA=_i[_n] * 10**9)
@@ -39,9 +39,7 @@ def test_vsource_hrv_fail_ivcurve(hrv_name: str) -> None:
39
39
  # the first algos are not usable for ivcurve
40
40
  with pytest.raises(ValueError):
41
41
  hrv_config = VirtualHarvesterConfig(name=hrv_name)
42
- _ = HarvesterPRUConfig.from_vhrv(
43
- hrv_config, for_emu=True, dtype_in=EnergyDType.ivcurve
44
- )
42
+ _ = HarvesterPRUConfig.from_vhrv(hrv_config, for_emu=True, dtype_in=EnergyDType.ivcurve)
45
43
 
46
44
 
47
45
  @pytest.mark.parametrize("hrv_name", hrv_list[3:])
@@ -58,9 +56,7 @@ def test_vsource_hrv_sim(hrv_name: str, file_ivcurve: Path) -> None:
58
56
  for _t, _v, _i in file.read_buffers():
59
57
  length = max(_v.size, _i.size)
60
58
  for _n in range(length):
61
- hrv.ivcurve_sample(
62
- _voltage_uV=_v[_n] * 10**6, _current_nA=_i[_n] * 10**9
63
- )
59
+ hrv.ivcurve_sample(_voltage_uV=_v[_n] * 10**6, _current_nA=_i[_n] * 10**9)
64
60
 
65
61
 
66
62
  @pytest.mark.parametrize("hrv_name", hrv_list[3:])
@@ -68,9 +64,7 @@ def test_vsource_hrv_fail_isc_voc(hrv_name: str) -> None:
68
64
  # not implemented ATM
69
65
  with pytest.raises(ValueError):
70
66
  hrv_config = VirtualHarvesterConfig(name=hrv_name)
71
- _ = HarvesterPRUConfig.from_vhrv(
72
- hrv_config, for_emu=True, dtype_in=EnergyDType.isc_voc
73
- )
67
+ _ = HarvesterPRUConfig.from_vhrv(hrv_config, for_emu=True, dtype_in=EnergyDType.isc_voc)
74
68
 
75
69
 
76
70
  def test_vsource_hrv_fail_unknown_type() -> None: