I have a question about Python libraries and testing scope.

If I'm importing 'serial' in my library, and use it like the following to create a connection to a sensor:

--- start code ---

import serial

class Sensor:
def __init__(self, serial_device):

self.__serial_device = serial_device

try:
self.__connection = serial.Serial(
port=serial_device,
baudrate=9600,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
)

except serial.SerialException:
print("Could not establish serial connection to sensor")

--- end code ---

how much testing should I do around the serial connection? Just mock up a few buffers (byte streams), and see how my class handles unexpected input?

One the one hand, I want to make the library as solid as possible. On the other hand, I don't want to run tests on code I don't control (the library module). I know of the 'mock-serial' utility, but haven't used it.

The aim is to make a Python version of my Arduino library for the CozIR Ambient CO2 sensor:

codeberg.org/mjack/ambientCO2/

0

If you have a fediverse account, you can quote this note from your own instance. Search https://mastodon.bsd.cafe/users/mjack/statuses/116165110767717833 on your instance and quote it. (Note that quoting is not supported in Mastodon.)