def test_get_set_field_overflow():
    bus = MockSMBus(1)
    device = Device([0x00, 0x01],
                    i2c_dev=bus,
                    registers=(Register('test',
                                        0x00,
                                        fields=(BitField('test', 0xFF), )), ))

    device.set_field('test', 'test', 9999999)

    assert device.get_field('test', 'test') == 127

    assert bus.regs[0] == 127
Beispiel #2
0
                                                         50:
                                                         0b000,
                                                         100:
                                                         0b001,
                                                         200:
                                                         0b010,
                                                         500:
                                                         0b011,
                                                         1000:
                                                         0b100,
                                                         2000:
                                                         0b101
                                                     }))))))

device.set_field('status', 'power', False)
print(device.get_field('status', 'power'))
print(device.get_register('status'))
print(bus.regs[0])

device.set_field('status', 'power', True)
print(device.get_field('status', 'power'))
print(device.get_register('status'))
print(bus.regs[0])

print("Testing measurement_rate->integration_time_ms")
device.set_field('measurement_rate', 'integration_time_ms', 200)
print("{:08b}".format(bus.regs[0x85]))
assert device.get_field('measurement_rate', 'integration_time_ms') == 200

print("Object set", device.measurement_rate.set_integration_time_ms(400))
print("{:08b}".format(bus.regs[0x85]))