import pytest from qolab.hardware.scpi import response2numStr def test_separator_and_unit(): assert response2numStr('TDIV 2.00E-08S', firstSeparator=' ', unit='Z') == ('TDIV', '2.00E-08S', None) # incorrect unit was specified assert response2numStr('TDIV 2.00E-08S', firstSeparator=' ', unit='S') == ('TDIV', '2.00E-08', 'S') assert response2numStr('TDIV,2.00E-08S', firstSeparator=',', unit='S') == ('TDIV', '2.00E-08', 'S') def test_separator_and_empty_unit(): assert response2numStr('TDIV,2.00E-08', firstSeparator=',', unit=None) == ('TDIV', '2.00E-08', None) assert response2numStr('TDIV,2.00E-08', firstSeparator=',', unit='') == ('TDIV', '2.00E-08', '') def test_no_separator_with_unit(): assert response2numStr('2.00E-08S', firstSeparator=None, unit='S') == (None, '2.00E-08', 'S') assert response2numStr('2.00E-08S', firstSeparator='', unit='S') == (None, '2.00E-08', 'S') def test_no_separator_and_no_unit(): assert response2numStr('2.00E-08', firstSeparator=None, unit=None) == (None, '2.00E-08', None) assert response2numStr('2.00E-08', firstSeparator='', unit='') == (None, '2.00E-08', '')