| Index: tools/telemetry/telemetry/page_set_archive_info_unittest.py
|
| diff --git a/tools/telemetry/telemetry/page_set_archive_info_unittest.py b/tools/telemetry/telemetry/page_set_archive_info_unittest.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..f7cf73852e3efdfef1bf73ff54a0b47fa7064c1d
|
| --- /dev/null
|
| +++ b/tools/telemetry/telemetry/page_set_archive_info_unittest.py
|
| @@ -0,0 +1,58 @@
|
| +# Copyright (c) 2012 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 json
|
| +import os
|
| +import unittest
|
| +
|
| +from telemetry import page_set_archive_info
|
| +
|
| +class MockPage(object):
|
| + def __init__(self, url):
|
| + self.url = url
|
| +
|
| +url1 = 'http://www.foo.com/'
|
| +url2 = 'http://www.bar.com/'
|
| +url3 = 'http://www.baz.com/'
|
| +file1 = 'data_001.wpr'
|
| +file2 = 'data_002.wpr'
|
| +archive_info_contents = ("""
|
| +{
|
| +"archives": {
|
| + "%s": ["%s", "%s"],
|
| + "%s": ["%s"]
|
| +}
|
| +}
|
| +""" % (file1, url1, url2, file2, url3))
|
| +page1 = MockPage(url1)
|
| +page2 = MockPage(url2)
|
| +page3 = MockPage(url3)
|
| +
|
| +class TestPageSetArchiveInfo(unittest.TestCase):
|
| + def setUp(self):
|
| + self.archive_info = page_set_archive_info.PageSetArchiveInfo(
|
| + '/tmp/foo.json', '/tmp/pageset.json', json.loads(archive_info_contents))
|
| +
|
| + def testReadingArchiveInfo(self):
|
| + self.assertEquals(file1, self.archive_info.WprFileForPage(page1))
|
| + self.assertEquals(file1, self.archive_info.WprFileForPage(page2))
|
| + self.assertEquals(file2, self.archive_info.WprFileForPage(page3))
|
| +
|
| + def testModifications(self):
|
| + new_file_1 = 'data_003.wpr'
|
| + filename = self.archive_info.AddNewRecording([page2])
|
| + self.assertEquals(filename, '/tmp/' + new_file_1)
|
| + self.assertEquals(file1, self.archive_info.WprFileForPage(page1))
|
| + self.assertEquals(new_file_1, self.archive_info.WprFileForPage(page2))
|
| + self.assertEquals(file2, self.archive_info.WprFileForPage(page3))
|
| + self.assertEquals([], self.archive_info.AbandonedWprFiles())
|
| +
|
| + new_file_2 = 'data_004.wpr'
|
| + filename = self.archive_info.AddNewRecording([page3])
|
| + self.assertEquals(filename, '/tmp/' + new_file_2)
|
| + self.assertEquals(file1, self.archive_info.WprFileForPage(page1))
|
| + self.assertEquals(new_file_1, self.archive_info.WprFileForPage(page2))
|
| + self.assertEquals(new_file_2, self.archive_info.WprFileForPage(page3))
|
| + files_to_remove = [os.path.basename(filename)
|
| + for filename in self.archive_info.AbandonedWprFiles()]
|
| + self.assertEquals([file2], files_to_remove)
|
|
|