Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / chrome / common / extensions / docs / server2 / test_file_system_test.py
index f1a10d7..2a7e91a 100755 (executable)
@@ -61,46 +61,39 @@ class TestFileSystemTest(unittest.TestCase):
   def testNonemptySuccess(self):
     fs = TestFileSystem(deepcopy(_TEST_DATA))
     self.assertEqual('404.html contents', fs.ReadSingle('404.html').Get())
-    self.assertEqual('404.html contents', fs.ReadSingle('/404.html').Get())
     self.assertEqual('a11y.html contents',
                      fs.ReadSingle('apps/a11y.html').Get())
     self.assertEqual(['404.html', 'apps/', 'extensions/'],
-                     sorted(fs.ReadSingle('/').Get()))
+                     sorted(fs.ReadSingle('').Get()))
     self.assertEqual(['a11y.html', 'about_apps.html', 'fakedir/'],
                      sorted(fs.ReadSingle('apps/').Get()))
-    self.assertEqual(['a11y.html', 'about_apps.html', 'fakedir/'],
-                     sorted(fs.ReadSingle('/apps/').Get()))
 
   def testReadFiles(self):
     fs = TestFileSystem(deepcopy(_TEST_DATA))
     self.assertEqual('404.html contents',
                      fs.ReadSingle('404.html').Get())
-    self.assertEqual('404.html contents',
-                     fs.ReadSingle('/404.html').Get())
     self.assertEqual('a11y.html contents',
                      fs.ReadSingle('apps/a11y.html').Get())
-    self.assertEqual('a11y.html contents',
-                     fs.ReadSingle('/apps/a11y.html').Get())
     self.assertEqual('file.html contents',
                      fs.ReadSingle('apps/fakedir/file.html').Get())
-    self.assertEqual('file.html contents',
-                     fs.ReadSingle('/apps/fakedir/file.html').Get())
 
   def testReadDirs(self):
     fs = TestFileSystem(deepcopy(_TEST_DATA))
     self.assertEqual(['404.html', 'apps/', 'extensions/'],
-                     sorted(fs.ReadSingle('/').Get()))
-    self.assertEqual(['a11y.html', 'about_apps.html', 'fakedir/'],
-                     sorted(fs.ReadSingle('/apps/').Get()))
+                     sorted(fs.ReadSingle('').Get()))
     self.assertEqual(['a11y.html', 'about_apps.html', 'fakedir/'],
                      sorted(fs.ReadSingle('apps/').Get()))
-    self.assertEqual(['file.html'], fs.ReadSingle('/apps/fakedir/').Get())
     self.assertEqual(['file.html'], fs.ReadSingle('apps/fakedir/').Get())
 
   def testStat(self):
     fs = TestFileSystem(deepcopy(_TEST_DATA))
     self.assertRaises(FileNotFoundError, fs.Stat, 'foo')
     self.assertRaises(FileNotFoundError, fs.Stat, '404.html/')
+    self.assertEquals(StatInfo('0', child_versions={
+                        '404.html': '0',
+                        'apps/': '0',
+                        'extensions/': '0',
+                      }), fs.Stat(''))
     self.assertEquals(StatInfo('0'), fs.Stat('404.html'))
     self.assertEquals(StatInfo('0', child_versions={
                         'activeTab.html': '0',
@@ -108,6 +101,11 @@ class TestFileSystemTest(unittest.TestCase):
                       }), fs.Stat('extensions/'))
 
     fs.IncrementStat()
+    self.assertEquals(StatInfo('1', child_versions={
+                        '404.html': '1',
+                        'apps/': '1',
+                        'extensions/': '1',
+                      }), fs.Stat(''))
     self.assertEquals(StatInfo('1'), fs.Stat('404.html'))
     self.assertEquals(StatInfo('1', child_versions={
                         'activeTab.html': '1',
@@ -115,6 +113,11 @@ class TestFileSystemTest(unittest.TestCase):
                       }), fs.Stat('extensions/'))
 
     fs.IncrementStat(path='404.html')
+    self.assertEquals(StatInfo('2', child_versions={
+                        '404.html': '2',
+                        'apps/': '1',
+                        'extensions/': '1',
+                      }), fs.Stat(''))
     self.assertEquals(StatInfo('2'), fs.Stat('404.html'))
     self.assertEquals(StatInfo('1', child_versions={
                         'activeTab.html': '1',
@@ -122,33 +125,63 @@ class TestFileSystemTest(unittest.TestCase):
                       }), fs.Stat('extensions/'))
 
     fs.IncrementStat()
+    self.assertEquals(StatInfo('3', child_versions={
+                        '404.html': '3',
+                        'apps/': '2',
+                        'extensions/': '2',
+                      }), fs.Stat(''))
     self.assertEquals(StatInfo('3'), fs.Stat('404.html'))
     self.assertEquals(StatInfo('2', child_versions={
                         'activeTab.html': '2',
                         'alarms.html': '2',
                       }), fs.Stat('extensions/'))
 
-    fs.IncrementStat(path='extensions/')
-    self.assertEquals(StatInfo('3'), fs.Stat('404.html'))
+    # It doesn't make sense to increment the version of directories. Directory
+    # versions are derived from the version of files within them.
+    self.assertRaises(ValueError, fs.IncrementStat, path='')
+    self.assertRaises(ValueError, fs.IncrementStat, path='extensions/')
     self.assertEquals(StatInfo('3', child_versions={
+                        '404.html': '3',
+                        'apps/': '2',
+                        'extensions/': '2',
+                      }), fs.Stat(''))
+    self.assertEquals(StatInfo('3'), fs.Stat('404.html'))
+    self.assertEquals(StatInfo('2', child_versions={
                         'activeTab.html': '2',
                         'alarms.html': '2',
                       }), fs.Stat('extensions/'))
 
     fs.IncrementStat(path='extensions/alarms.html')
+    self.assertEquals(StatInfo('3', child_versions={
+                        '404.html': '3',
+                        'apps/': '2',
+                        'extensions/': '3',
+                      }), fs.Stat(''))
     self.assertEquals(StatInfo('3'), fs.Stat('404.html'))
     self.assertEquals(StatInfo('3', child_versions={
                         'activeTab.html': '2',
                         'alarms.html': '3',
                       }), fs.Stat('extensions/'))
 
+    fs.IncrementStat(path='extensions/activeTab.html', by=3)
+    self.assertEquals(StatInfo('5', child_versions={
+                        '404.html': '3',
+                        'apps/': '2',
+                        'extensions/': '5',
+                      }), fs.Stat(''))
+    self.assertEquals(StatInfo('3'), fs.Stat('404.html'))
+    self.assertEquals(StatInfo('5', child_versions={
+                        'activeTab.html': '5',
+                        'alarms.html': '3',
+                      }), fs.Stat('extensions/'))
+
   def testMoveTo(self):
     self.assertEqual({'foo': {'a': 'b', 'c': 'd'}},
-                     MoveTo('foo', {'a': 'b', 'c': 'd'}))
+                     MoveTo('foo/', {'a': 'b', 'c': 'd'}))
     self.assertEqual({'foo': {'bar': {'a': 'b', 'c': 'd'}}},
-                     MoveTo('foo/bar', {'a': 'b', 'c': 'd'}))
+                     MoveTo('foo/bar/', {'a': 'b', 'c': 'd'}))
     self.assertEqual({'foo': {'bar': {'baz': {'a': 'b'}}}},
-                     MoveTo('foo/bar/baz', {'a': 'b'}))
+                     MoveTo('foo/bar/baz/', {'a': 'b'}))
 
 
 if __name__ == '__main__':