blob: 6cc0ec1913608caac20368c57f2bbc827b9b73f0 [file] [log] [blame]
#!/usr/bin/env python
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import os
import unittest
from telemetry.internal.util import path_set
class PathSetTest(unittest.TestCase):
def testCreate(self):
ps = path_set.PathSet()
self.assertEqual(len(ps), 0) # Check __len__.
self.assertFalse(__file__ in ps)
for _ in ps: # Check __iter__.
self.fail('New set is not empty.')
ps = path_set.PathSet([__file__])
self.assertEqual(len(ps), 1)
self.assertTrue(__file__ in ps)
self.assertEqual(ps.pop(), os.path.realpath(__file__))
def testAdd(self):
ps = path_set.PathSet()
ps.add(__file__)
self.assertEqual(len(ps), 1)
self.assertTrue(__file__ in ps)
self.assertEqual(ps.pop(), os.path.realpath(__file__))
def testDiscard(self):
ps = path_set.PathSet([__file__])
ps.discard(__file__)
self.assertEqual(len(ps), 0)
self.assertFalse(__file__ in ps)
if __name__ == '__main__':
unittest.main()