Files
sdk/tools/dom/scripts/multiemitter_test.py
Srujan Gaddam f34eef5b91 [dart:html] Migrate python scripts to python 3
Migrates syntax and semantics from python 2.7.

Major changes include:

- filters
- sorting
- print statements
- higher-order functions
- hashing and comparison

and other misc changes. go.sh consistently gives the libraries
in this and the previous commits with these changes.

Change-Id: I66365739887158d8f321015d36e556447da1bcd3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/211542
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Riley Porter <rileyporter@google.com>
2021-09-08 22:10:53 +00:00

48 lines
1.2 KiB
Python

#!/usr/bin/env python3
# Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
"""Tests for emitter module."""
import logging.config
import unittest
import emitter
import multiemitter
class MultiEmitterTestCase(unittest.TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def check(self, m, expected):
"""Verifies that the multiemitter contains the expected contents.
Expected is a list of (filename, content) pairs, sorted by filename.
"""
files = []
def _Collect(file, contents):
files.append((file, ''.join(contents)))
m.Flush(_Collect)
self.assertEqual(expected, files)
def testExample(self):
m = multiemitter.MultiEmitter()
e1 = m.FileEmitter('file1')
e2 = m.FileEmitter('file2', 'key2')
e1.Emit('Hi 1')
e2.Emit('Hi 2')
m.Find('key2').Emit('Bye 2')
self.check(m, [('file1', 'Hi 1'), ('file2', 'Hi 2Bye 2')])
if __name__ == '__main__':
logging.config.fileConfig('logging.conf')
if __name__ == '__main__':
unittest.main()