Index: pyyaml/trunk/tests/test_emitter.py
===================================================================
--- pyyaml/trunk/tests/test_emitter.py	(revision 133)
+++ pyyaml/trunk/tests/test_emitter.py	(revision 136)
@@ -17,13 +17,9 @@
 
     def _testEmitter(self, test_name, filename, canonical=None):
-        events = list(iter(Parser(Scanner(Reader(file(filename, 'rb'))))))
-        if canonical is not None:
-            events[0].canonical = canonical
-        #self._dump(filename, events)
-        writer = StringIO.StringIO()
-        emitter = Emitter(writer)
-        for event in events:
-            emitter.emit(event)
-        data = writer.getvalue()
+        events = list(parse(file(filename, 'rb')))
+        #self._dump(filename, events, canonical)
+        stream = StringIO.StringIO()
+        emit(events, stream, canonical=canonical)
+        data = stream.getvalue()
         new_events = list(parse(data))
         for event, new_event in zip(events, new_events):
@@ -39,7 +35,5 @@
                 self.failUnlessEqual(event.value, new_event.value)
 
-    def _dump(self, filename, events):
-        writer = sys.stdout
-        emitter = Emitter(writer)
+    def _dump(self, filename, events, canonical):
         print "="*30
         print "ORIGINAL DOCUMENT:"
@@ -47,12 +41,11 @@
         print '-'*30
         print "EMITTED DOCUMENT:"
-        for event in events:
-            emitter.emit(event)
+        emit(events, sys.stdout, canonical=canonical)
         
 TestEmitter.add_tests('testEmitterOnData', '.canonical', '.data')
-#TestEmitter.add_tests('testEmitterOnCanonicalNormally', '.canonical')
-#TestEmitter.add_tests('testEmitterOnCanonicalCanonically', '.canonical')
+TestEmitter.add_tests('testEmitterOnCanonicalNormally', '.canonical')
+TestEmitter.add_tests('testEmitterOnCanonicalCanonically', '.canonical')
 
-class EventsConstructor(Constructor):
+class EventsLoader(Loader):
 
     def construct_event(self, node):
@@ -67,20 +60,19 @@
             mapping.setdefault('tag', None)
         if class_name == 'ScalarEvent':
+            mapping.setdefault('implicit', False)
             mapping.setdefault('value', '')
         value = getattr(yaml, class_name)(**mapping)
         return value
 
-EventsConstructor.add_constructor(None, EventsConstructor.construct_event)
+EventsLoader.add_constructor(None, EventsLoader.construct_event)
 
 class TestEmitterEvents(test_appliance.TestAppliance):
 
     def _testEmitterEvents(self, test_name, events_filename):
-        events = list(load(file(events_filename, 'rb'), Constructor=EventsConstructor))
+        events = list(load(file(events_filename, 'rb'), Loader=EventsLoader))
         #self._dump(events_filename, events)
-        writer = StringIO.StringIO()
-        emitter = Emitter(writer)
-        for event in events:
-            emitter.emit(event)
-        data = writer.getvalue()
+        stream = StringIO.StringIO()
+        emit(events, stream)
+        data = stream.getvalue()
         new_events = list(parse(data))
         self.failUnlessEqual(len(events), len(new_events))
@@ -97,6 +89,4 @@
 
     def _dump(self, events_filename, events):
-        writer = sys.stdout
-        emitter = Emitter(writer)
         print "="*30
         print "EVENTS:"
@@ -104,6 +94,5 @@
         print '-'*30
         print "OUTPUT:"
-        for event in events:
-            emitter.emit(event)
+        emit(events, sys.stdout)
         
 TestEmitterEvents.add_tests('testEmitterEvents', '.events')
