def test_validate_noLineNumber_noChecksum(self): # pylint: disable=no-self-use """Test validate when no lineNumber or checksum value is present.""" unit = GcodeParser() unit.lineNumber = None unit._checksum = None # pylint: disable=protected-access unit.validate()
def test_validate_checksum_ok(self): # pylint: disable=no-self-use """Test validate when a lineNumber and checksum are present, and the checksum is valid.""" unit = GcodeParser() unit.text = "G28" unit.lineNumber = 10 unit._checksum = 77 # pylint: disable=protected-access unit.validate()
def test_validate_noLineNumber_checksum(self): """Test validate when a no lineNumber is present but a checksum value is.""" unit = GcodeParser() unit._checksum = 10 # pylint: disable=protected-access unit.lineNumber = None with self.assertRaises(ValueError): unit.validate()
def test_validate_lineNumber_noChecksum(self): """Test validate when a lineNumber is present without a checksum value.""" unit = GcodeParser() unit.lineNumber = 10 unit._checksum = None # pylint: disable=protected-access with self.assertRaises(ValueError): unit.validate()
def test_validate_checksum_mismatch(self): """Test validate when a lineNumber and checksum are present, but the checksum is invalid.""" unit = GcodeParser() unit.text = "G28" # Checksum should be 77 unit.lineNumber = 10 unit._checksum = 20 # pylint: disable=protected-access with self.assertRaises(ValueError): unit.validate()
def test_lineNumber_setter_none(self): """Test the lineNumber setter assigning None.""" unit = GcodeParser() unit.parse("N1234 G0") self.assertEqual(unit.lineNumber, 1234, "The lineNumber should be 1234.") unit.lineNumber = None self.assertIsNone(unit.lineNumber, "The lineNumber should be None.") self.assertEqual(unit.gcode, "G0", "The gcode should be 'G0'.") self.assertEqual(unit.commandString, "G0", "The commandString should be 'G0'.")