1#!/usr/bin/env python 2# Copyright (c) 2012 The Chromium Authors. All rights reserved. 3# Use of this source code is governed by a BSD-style license that can be 4# found in the LICENSE file. 5 6'''Unit test for lazy_re. 7''' 8 9import os 10import sys 11if __name__ == '__main__': 12 sys.path.append(os.path.join(os.path.dirname(__file__), '..')) 13 14import re 15import unittest 16 17from grit import lazy_re 18 19 20class LazyReUnittest(unittest.TestCase): 21 22 def testCreatedOnlyOnDemand(self): 23 rex = lazy_re.compile('bingo') 24 self.assertEqual(None, rex._lazy_re) 25 self.assertTrue(rex.match('bingo')) 26 self.assertNotEqual(None, rex._lazy_re) 27 28 def testJustKwargsWork(self): 29 rex = lazy_re.compile(flags=re.I, pattern='BiNgO') 30 self.assertTrue(rex.match('bingo')) 31 32 def testPositionalAndKwargsWork(self): 33 rex = lazy_re.compile('BiNgO', flags=re.I) 34 self.assertTrue(rex.match('bingo')) 35 36 37if __name__ == '__main__': 38 unittest.main() 39