2006-03-04 22:43:48 +00:00
|
|
|
|
|
|
|
import test_appliance
|
2006-04-18 16:48:00 +00:00
|
|
|
import test_emitter
|
|
|
|
|
|
|
|
import StringIO
|
2006-03-04 22:43:48 +00:00
|
|
|
|
|
|
|
from yaml import *
|
|
|
|
|
|
|
|
class TestErrors(test_appliance.TestAppliance):
|
|
|
|
|
2006-04-18 14:35:46 +00:00
|
|
|
def _testLoaderErrors(self, test_name, invalid_filename):
|
2006-03-04 22:43:48 +00:00
|
|
|
#self._load(invalid_filename)
|
|
|
|
self.failUnlessRaises(YAMLError, lambda: self._load(invalid_filename))
|
|
|
|
|
2006-04-18 14:35:46 +00:00
|
|
|
def _testLoaderStringErrors(self, test_name, invalid_filename):
|
2006-03-04 22:43:48 +00:00
|
|
|
#self._load_string(invalid_filename)
|
|
|
|
self.failUnlessRaises(YAMLError, lambda: self._load_string(invalid_filename))
|
|
|
|
|
2007-08-21 20:25:34 +00:00
|
|
|
def _testLoaderSingleErrors(self, test_name, invalid_filename):
|
2007-11-18 00:47:32 +00:00
|
|
|
#self._load_single(invalid_filename)
|
2007-08-21 20:25:34 +00:00
|
|
|
self.failUnlessRaises(YAMLError, lambda: self._load_single(invalid_filename))
|
|
|
|
|
2006-04-18 16:48:00 +00:00
|
|
|
def _testEmitterErrors(self, test_name, invalid_filename):
|
|
|
|
events = list(load(file(invalid_filename, 'rb').read(),
|
|
|
|
Loader=test_emitter.EventsLoader))
|
|
|
|
self.failUnlessRaises(YAMLError, lambda: self._emit(events))
|
|
|
|
|
|
|
|
def _testDumperErrors(self, test_name, invalid_filename):
|
|
|
|
code = file(invalid_filename, 'rb').read()
|
|
|
|
self.failUnlessRaises(YAMLError, lambda: self._dump(code))
|
|
|
|
|
|
|
|
def _dump(self, code):
|
|
|
|
try:
|
|
|
|
exec code
|
|
|
|
except YAMLError, exc:
|
|
|
|
#print '.'*70
|
|
|
|
#print "%s:" % exc.__class__.__name__, exc
|
|
|
|
raise
|
|
|
|
|
|
|
|
def _emit(self, events):
|
|
|
|
try:
|
|
|
|
emit(events)
|
2006-04-21 17:31:29 +00:00
|
|
|
except YAMLError, exc:
|
2006-04-18 16:48:00 +00:00
|
|
|
#print '.'*70
|
|
|
|
#print "%s:" % exc.__class__.__name__, exc
|
|
|
|
raise
|
|
|
|
|
2006-03-04 22:43:48 +00:00
|
|
|
def _load(self, filename):
|
|
|
|
try:
|
2006-04-15 23:54:52 +00:00
|
|
|
return list(load_all(file(filename, 'rb')))
|
2006-03-04 22:43:48 +00:00
|
|
|
except YAMLError, exc:
|
|
|
|
#except ScannerError, exc:
|
|
|
|
#except ParserError, exc:
|
|
|
|
#except ComposerError, exc:
|
|
|
|
#except ConstructorError, exc:
|
|
|
|
#print '.'*70
|
|
|
|
#print "%s:" % exc.__class__.__name__, exc
|
|
|
|
raise
|
|
|
|
|
|
|
|
def _load_string(self, filename):
|
|
|
|
try:
|
2006-04-15 23:54:52 +00:00
|
|
|
return list(load_all(file(filename, 'rb').read()))
|
2006-03-04 22:43:48 +00:00
|
|
|
except YAMLError, exc:
|
|
|
|
#except ScannerError, exc:
|
|
|
|
#except ParserError, exc:
|
|
|
|
#except ComposerError, exc:
|
|
|
|
#except ConstructorError, exc:
|
|
|
|
#print '.'*70
|
|
|
|
#print "%s:" % filename
|
|
|
|
#print "%s:" % exc.__class__.__name__, exc
|
|
|
|
raise
|
|
|
|
|
2007-08-21 20:25:34 +00:00
|
|
|
def _load_single(self, filename):
|
|
|
|
try:
|
|
|
|
return load(file(filename, 'rb').read())
|
|
|
|
except YAMLError, exc:
|
|
|
|
#except ScannerError, exc:
|
|
|
|
#except ParserError, exc:
|
|
|
|
#except ComposerError, exc:
|
|
|
|
#except ConstructorError, exc:
|
|
|
|
#print '.'*70
|
|
|
|
#print "%s:" % filename
|
|
|
|
#print "%s:" % exc.__class__.__name__, exc
|
|
|
|
raise
|
|
|
|
|
2006-04-18 14:35:46 +00:00
|
|
|
TestErrors.add_tests('testLoaderErrors', '.loader-error')
|
|
|
|
TestErrors.add_tests('testLoaderStringErrors', '.loader-error')
|
2007-08-21 20:25:34 +00:00
|
|
|
TestErrors.add_tests('testLoaderSingleErrors', '.single-loader-error')
|
2006-04-18 16:48:00 +00:00
|
|
|
TestErrors.add_tests('testEmitterErrors', '.emitter-error')
|
|
|
|
TestErrors.add_tests('testDumperErrors', '.dumper-error')
|
2006-03-04 22:43:48 +00:00
|
|
|
|