def test_symbol_byte_len_correct_when_resolved(self): result = SymbolValue('symbol') result.resolved = True result.value = NumericValue("$AB") self.assertEqual(1, result.byte_len())
def test_symbol_byte_len_zero_when_not_resolved(self): result = SymbolValue('symbol') self.assertFalse(result.resolved) self.assertEqual(0, result.byte_len())
def test_symbol_str_correct_when_resolved(self): result = SymbolValue('symbol') result.resolved = True result.value = NumericValue("$AB") self.assertEqual("AB", str(result))
def test_symbol_str_empty_when_not_resolved(self): result = SymbolValue('symbol') self.assertFalse(result.resolved) self.assertEqual("", str(result))
def test_symbol_ascii_works_correctly(self): result = SymbolValue('symbol') self.assertEqual("symbol", result.ascii())
def test_symbol_raises_exception_on_invalid_strings(self): with self.assertRaises(ValueTypeError) as context: SymbolValue("invalid!") self.assertEqual("[invalid!] is not a valid symbol", str(context.exception))