OK-DMR / ok-dmrlib

DMR PDUs, elements, FEC and CRC library, including proprietary DMR protocols of Hytera and Motorola
GNU Affero General Public License v3.0
31 stars 7 forks source link

Make Test Commands Gives an Error #5

Closed alwinhb closed 10 months ago

alwinhb commented 10 months ago

I am getting the below error :-

'PYTHONPATH' is not recognized as an internal or external command, operable program or batch file. make: *** [Makefile:4: test] Error 1

Can you please GUIDE

smarek commented 10 months ago

Windows or linux?

Dne čt 24. 8. 2023 13:17 uživatel alwinhb @.***> napsal:

I am getting the below error :-

'PYTHONPATH' is not recognized as an internal or external command, operable program or batch file. make: *** [Makefile:4: test] Error 1

Can you please GUIDE

— Reply to this email directly, view it on GitHub https://github.com/OK-DMR/ok-dmrlib/issues/5, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAC56OAAKPOODXFEPOKGDFDXW4Z6HANCNFSM6AAAAAA343M27A . You are receiving this because you are subscribed to this thread.Message ID: @.***>

alwinhb commented 10 months ago

@smarek Windows 10.

smarek commented 10 months ago

Hey @alwinhb so here's the deal

Running tests, is just invocation of "pytest", extra arguments to pytest in Makefile are just for convenience and listing all the details of failed tests, which is handy for debugging/discussion

You can just use pytest without any arguments, or launch it through IDE

smarek commented 10 months ago

also i wrote the Makefile mainly for linux development, you can really just ignore it and use the ok-dmrlib in your favorite IDE as standard Python project

smarek commented 10 months ago

So I just tested on Windows machine, just run pytest is working fine

> pip install -e .[test]
> pytest
============================================================================ test session starts ============================================================================
platform win32 -- Python 3.10.11, pytest-7.4.0, pluggy-1.2.0
rootdir: C:\Users\marek\Downloads\ok-dmrlib
plugins: asyncio-0.21.1, cov-4.1.0
asyncio: mode=strict
collected 196 items

okdmr\tests\dmrlib\etsi\crc\test_crc.py ...                                                                                                                            [  1%]
okdmr\tests\dmrlib\etsi\crc\test_crc16.py .                                                                                                                            [  2%]
okdmr\tests\dmrlib\etsi\crc\test_crc32.py .                                                                                                                            [  2%]
okdmr\tests\dmrlib\etsi\crc\test_crc8.py .                                                                                                                             [  3%]
okdmr\tests\dmrlib\etsi\crc\test_crc9.py ..                                                                                                                            [  4%]
okdmr\tests\dmrlib\etsi\fec\test_bptc_196_96.py ....                                                                                                                   [  6%]
okdmr\tests\dmrlib\etsi\fec\test_five_bit_checksum.py .                                                                                                                [  6%]
okdmr\tests\dmrlib\etsi\fec\test_golay_20_8_7.py ..                                                                                                                    [  7%]
okdmr\tests\dmrlib\etsi\fec\test_hamming_13_9_3.py ....                                                                                                                [  9%]
okdmr\tests\dmrlib\etsi\fec\test_hamming_15_11_3.py ...                                                                                                                [ 11%]
okdmr\tests\dmrlib\etsi\fec\test_hamming_16_11_4.py ...                                                                                                                [ 12%]
okdmr\tests\dmrlib\etsi\fec\test_hamming_17_12_3.py ...                                                                                                                [ 14%]
okdmr\tests\dmrlib\etsi\fec\test_hamming_7_4_3.py ...                                                                                                                  [ 15%]
okdmr\tests\dmrlib\etsi\fec\test_quadratic_residue_16_7_6.py ..                                                                                                        [ 16%]
okdmr\tests\dmrlib\etsi\fec\test_reed_solomon_12_9_4.py ..                                                                                                             [ 17%]
okdmr\tests\dmrlib\etsi\fec\test_trellis.py .........                                                                                                                  [ 22%]
okdmr\tests\dmrlib\etsi\fec\test_vbptc_128_72.py ...                                                                                                                   [ 23%]
okdmr\tests\dmrlib\etsi\fec\test_vbptc_32_11.py ..                                                                                                                     [ 25%]
okdmr\tests\dmrlib\etsi\fec\test_vbptc_68_36.py ..                                                                                                                     [ 26%]
okdmr\tests\dmrlib\etsi\layer2\test_burst.py .....                                                                                                                     [ 28%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_data_packet_formats.py .                                                                                                  [ 29%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_data_types.py .                                                                                                           [ 29%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_defined_data_formats.py .                                                                                                 [ 30%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_feature_set_ids.py ..                                                                                                     [ 31%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_fragment_sequence_number.py .                                                                                             [ 31%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_sap_identifier.py .                                                                                                       [ 32%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_slcos.py .                                                                                                                [ 32%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_sync_patterns.py ..                                                                                                       [ 33%]
okdmr\tests\dmrlib\etsi\layer2\elements\test_udt_format.py .                                                                                                           [ 34%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_csbk.py .....                                                                                                                  [ 36%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_data_header.py ...                                                                                                             [ 38%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_embedded_signalling.py .                                                                                                       [ 38%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_full_link_control.py ...                                                                                                       [ 40%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_pi_header.py .                                                                                                                 [ 40%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_rate12_data.py ..                                                                                                              [ 41%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_rate1_data.py ..                                                                                                               [ 42%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_rate34_data.py ...                                                                                                             [ 44%]
okdmr\tests\dmrlib\etsi\layer2\pdu\test_slot_type.py .                                                                                                                 [ 44%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_access_types.py .                                                                                                         [ 45%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_activity_id.py .                                                                                                          [ 45%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_announcement_type.py .                                                                                                    [ 46%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_answer_response.py .                                                                                                      [ 46%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_bits_enums.py .                                                                                                           [ 47%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_channel_timing_opcode.py .                                                                                                [ 47%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_ip_address_identifier.py .                                                                                                [ 48%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_position_error.py ..                                                                                                      [ 49%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_reason_code.py ..                                                                                                         [ 50%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_service_options.py ..                                                                                                     [ 51%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_strict_elements_enums.py ..                                                                                               [ 52%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_talker_alias_data_format.py .                                                                                             [ 53%]
okdmr\tests\dmrlib\etsi\layer3\elements\test_udp_port_identifier.py .                                                                                                  [ 53%]
okdmr\tests\dmrlib\etsi\layer3\pdu\test_udp_ipv4_compressed_header.py ..                                                                                               [ 54%]
okdmr\tests\dmrlib\hytera\test_hytera_ipsc.py ..                                                                                                                       [ 55%]
okdmr\tests\dmrlib\hytera\pdu\test_hdap.py .                                                                                                                           [ 56%]
okdmr\tests\dmrlib\hytera\pdu\test_hrnp.py .......                                                                                                                     [ 59%]
okdmr\tests\dmrlib\hytera\pdu\test_hstrp.py ..                                                                                                                         [ 60%]
okdmr\tests\dmrlib\hytera\pdu\test_lp.py ...                                                                                                                           [ 62%]
okdmr\tests\dmrlib\hytera\pdu\test_radio_ip.py .                                                                                                                       [ 62%]
okdmr\tests\dmrlib\hytera\pdu\test_rcp.py ...                                                                                                                          [ 64%]
okdmr\tests\dmrlib\hytera\pdu\test_rrs.py ....                                                                                                                         [ 66%]
okdmr\tests\dmrlib\hytera\pdu\test_tmp.py ....                                                                                                                         [ 68%]
okdmr\tests\dmrlib\motorola\test_arrp.py .                                                                                                                             [ 68%]
okdmr\tests\dmrlib\motorola\test_ars.py .........                                                                                                                      [ 73%]
okdmr\tests\dmrlib\motorola\test_lrrp.py ..........                                                                                                                    [ 78%]
okdmr\tests\dmrlib\motorola\test_mbxml.py ............                                                                                                                 [ 84%]
okdmr\tests\dmrlib\motorola\test_tms.py .......                                                                                                                        [ 88%]
okdmr\tests\dmrlib\tools\test_dmrlib_tool.py ..                                                                                                                        [ 89%]
okdmr\tests\dmrlib\tools\test_hytera_tool.py .                                                                                                                         [ 89%]
okdmr\tests\dmrlib\tools\test_pcap_tool.py ....                                                                                                                        [ 91%]
okdmr\tests\dmrlib\transmission\test_transmission.py ...........                                                                                                       [ 97%]
okdmr\tests\dmrlib\utils\test_bits_bytes.py ...                                                                                                                        [ 98%]
okdmr\tests\dmrlib\utils\test_logging.py .                                                                                                                             [ 99%]
okdmr\tests\dmrlib\utils\test_parsing.py .                                                                                                                             [100%]

============================================================================ 196 passed in 4.90s ============================================================================
smarek commented 10 months ago

I just removed PYTHONPATH from Makefile, since it's not required on newer pytest on Windows nor Linux. You still need to have correct PATH on Windows, or you can use python -m pytest if you have pytest installed but shows up as "Unknown command"

alwinhb commented 3 months ago

@smarek Can you help me with okdmr\tests\dmrlib\etsi\crc\test_crc32.py

I am creating a c++ code equivalent to crc32.py

smarek commented 3 months ago

@alwinhb sure, if it's opensource, let me know where is your code and what are the obstacles you need help with :)

alwinhb commented 3 months ago

CRC32.txt

@smarek Attached

smarek commented 3 months ago

I really don't code in C++ often, so this is not trivial for me

I suggest you use code from other projects, CRC is implemented eg. in https://github.com/pd0mz/go-dmr/blob/master/crc.go#L62 or https://github.com/g4klx/MMDVMHost/blob/master/CRC.cpp

Also the data must be in correct order, see https://github.com/OK-DMR/ok-dmrlib/blob/master/okdmr/dmrlib/etsi/crc/crc32.py#L32

alwinhb commented 3 months ago

Thanks @smarek appreciating your time