tests: Test for misparsed scale in some locales
Check that the scale is correctly parsed in the French locale.
This commit is contained in:
@@ -549,6 +549,52 @@ class Tests(dbusmock.DBusTestCase):
|
|||||||
|
|
||||||
self.stop_daemon()
|
self.stop_daemon()
|
||||||
|
|
||||||
|
def test_iio_scale_decimal_separator(self):
|
||||||
|
'''scale decimal separator'''
|
||||||
|
top_srcdir = os.getenv('top_srcdir', '.')
|
||||||
|
mock_dev_data = self.testbed.get_root_dir() + '/iio-dev-data.bin'
|
||||||
|
accel = self.testbed.add_device('iio', 'iio-buffer-accel0', None,
|
||||||
|
['name', 'IIO Test Accelerometer',
|
||||||
|
'buffer/enable', '0',
|
||||||
|
'trigger/current_trigger', '',
|
||||||
|
'in_accel_scale', '0.000010\n',
|
||||||
|
'in_accel_mount_matrix', '1, 0, 0; 0, 1, 0; 0, 0, 1\n',
|
||||||
|
'scan_elements/in_accel_x_en', '0',
|
||||||
|
'scan_elements/in_accel_x_index', '0',
|
||||||
|
'scan_elements/in_accel_x_type', 'le:s16/32>>0',
|
||||||
|
'scan_elements/in_accel_y_en', '0',
|
||||||
|
'scan_elements/in_accel_y_index', '1',
|
||||||
|
'scan_elements/in_accel_y_type', 'le:s16/32>>0',
|
||||||
|
'scan_elements/in_accel_z_en', '0',
|
||||||
|
'scan_elements/in_accel_z_index', '2',
|
||||||
|
'scan_elements/in_accel_z_type', 'le:s16/32>>0',
|
||||||
|
'scan_elements/in_timestamp_en', '1',
|
||||||
|
'scan_elements/in_timestamp_index', '3',
|
||||||
|
'scan_elements/in_timestamp_type', 'le:s64/64>>0'],
|
||||||
|
['NAME', '"IIO Accelerometer"',
|
||||||
|
'DEVNAME', '/dev/iio-buffer-accel-test',
|
||||||
|
'IIO_SENSOR_PROXY_TYPE', 'iio-buffer-accel']
|
||||||
|
)
|
||||||
|
trigger = self.testbed.add_device('iio', 'trigger0', None,
|
||||||
|
['name', 'accel_3d-dev0'],
|
||||||
|
[]
|
||||||
|
)
|
||||||
|
env = os.environ.copy()
|
||||||
|
env['LC_NUMERIC'] = 'fr_FR.UTF-8'
|
||||||
|
self.start_daemon(env=env)
|
||||||
|
|
||||||
|
self.assertEqual(self.get_dbus_property('HasAccelerometer'), True)
|
||||||
|
data = self.read_file(top_srcdir + '/tests/iio-buffer-accel-data/orientation-normal.bin')
|
||||||
|
with open(mock_dev_data,'wb') as mock_file:
|
||||||
|
mock_file.write(data)
|
||||||
|
self.proxy.ClaimAccelerometer()
|
||||||
|
self.assertEventually(lambda: self.have_text_in_log('Accel sent by driver'))
|
||||||
|
# If the 2nd test fails, it's likely that fr_FR.UTF-8 locale isn't supported
|
||||||
|
self.assertEqual(self.have_text_in_log('scale: 0,000000,0,000000,0,000000'), False)
|
||||||
|
self.assertEqual(self.have_text_in_log('scale: 0,000010,0,000010,0,000010'), True)
|
||||||
|
|
||||||
|
self.stop_daemon()
|
||||||
|
|
||||||
#
|
#
|
||||||
# Helper methods
|
# Helper methods
|
||||||
#
|
#
|
||||||
|
Reference in New Issue
Block a user