15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#!/usr/bin/env python 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Copyright (c) 2012 The Chromium Authors. All rights reserved. 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# found in the LICENSE file. 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)import os 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)import sys 85d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)import posixpath 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)import unittest 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)from extensions_paths import SERVER2 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)from local_file_system import LocalFileSystem 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class LocalFileSystemTest(unittest.TestCase): 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) def setUp(self): 175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) self._file_system = LocalFileSystem.Create( 185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) SERVER2, 'test_data', 'file_system/') 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) def testReadFiles(self): 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) expected = { 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 'test1.txt': 'test1\n', 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 'test2.txt': 'test2\n', 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 'test3.txt': 'test3\n', 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) self.assertEqual( 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) expected, 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) self._file_system.Read(['test1.txt', 'test2.txt', 'test3.txt']).Get()) 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) def testListDir(self): 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) expected = ['dir/'] 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for i in range(7): 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) expected.append('file%d.html' % i) 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) self.assertEqual(expected, 354e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) sorted(self._file_system.ReadSingle('list/').Get())) 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if __name__ == '__main__': 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) unittest.main() 40