Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(69)

Unified Diff: tools/telemetry/telemetry/story/story_set.py

Issue 1647513002: Delete tools/telemetry. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/telemetry/telemetry/story/story_set.py
diff --git a/tools/telemetry/telemetry/story/story_set.py b/tools/telemetry/telemetry/story/story_set.py
deleted file mode 100644
index 667cbd01ebb7b9b3114da16ae16933335b97f9ef..0000000000000000000000000000000000000000
--- a/tools/telemetry/telemetry/story/story_set.py
+++ /dev/null
@@ -1,155 +0,0 @@
-# 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 inspect
-import os
-
-from telemetry.story import story as story_module
-from telemetry.wpr import archive_info
-
-
-class StorySet(object):
- """A collection of stories.
-
- A typical usage of StorySet would be to subclass it and then call
- AddStory for each Story.
- """
-
- def __init__(self, archive_data_file='', cloud_storage_bucket=None,
- base_dir=None, serving_dirs=None):
- """Creates a new StorySet.
-
- Args:
- archive_data_file: The path to Web Page Replay's archive data, relative
- to self.base_dir.
- cloud_storage_bucket: The cloud storage bucket used to download
- Web Page Replay's archive data. Valid values are: None,
- story.PUBLIC_BUCKET, story.PARTNER_BUCKET, or story.INTERNAL_BUCKET
- (defined in telemetry.util.cloud_storage).
- serving_dirs: A set of paths, relative to self.base_dir, to directories
- containing hash files for non-wpr archive data stored in cloud
- storage.
- """
- self.stories = []
- self._archive_data_file = archive_data_file
- self._wpr_archive_info = None
- archive_info.AssertValidCloudStorageBucket(cloud_storage_bucket)
- self._cloud_storage_bucket = cloud_storage_bucket
- if base_dir:
- if not os.path.isdir(base_dir):
- raise ValueError('Invalid directory path of base_dir: %s' % base_dir)
- self._base_dir = base_dir
- else:
- self._base_dir = os.path.dirname(inspect.getfile(self.__class__))
- # Convert any relative serving_dirs to absolute paths.
- self._serving_dirs = set(os.path.realpath(os.path.join(self.base_dir, d))
- for d in serving_dirs or [])
-
- @property
- def allow_mixed_story_states(self):
- """True iff Stories are allowed to have different StoryState classes.
-
- There are no checks in place for determining if SharedStates are
- being assigned correctly to all Stories in a given StorySet. The
- majority of test cases should not need the ability to have multiple
- SharedStates, which usually implies you should be writing multiple
- benchmarks instead. We provide errors to avoid accidentally assigning
- or defaulting to the wrong SharedState.
- Override at your own risk. Here be dragons.
- """
- return False
-
- @property
- def file_path(self):
- return inspect.getfile(self.__class__).replace('.pyc', '.py')
-
- @property
- def base_dir(self):
- """The base directory to resolve archive_data_file.
-
- This defaults to the directory containing the StorySet instance's class.
- """
- return self._base_dir
-
- @property
- def serving_dirs(self):
- all_serving_dirs = self._serving_dirs.copy()
- for story in self.stories:
- if story.serving_dir:
- all_serving_dirs.add(story.serving_dir)
- return all_serving_dirs
-
- @property
- def archive_data_file(self):
- return self._archive_data_file
-
- @property
- def bucket(self):
- return self._cloud_storage_bucket
-
- @property
- def wpr_archive_info(self):
- """Lazily constructs wpr_archive_info if it's not set and returns it."""
- if self.archive_data_file and not self._wpr_archive_info:
- self._wpr_archive_info = archive_info.WprArchiveInfo.FromFile(
- os.path.join(self.base_dir, self.archive_data_file), self.bucket)
- return self._wpr_archive_info
-
- def AddStory(self, story):
- assert isinstance(story, story_module.Story)
- self.stories.append(story)
-
- def RemoveStory(self, story):
- """Removes a Story.
-
- Allows the stories to be filtered.
- """
- self.stories.remove(story)
-
- @classmethod
- def Name(cls):
- """Returns the string name of this StorySet.
- Note that this should be a classmethod so the benchmark_runner script can
- match the story class with its name specified in the run command:
- 'Run <User story test name> <User story class name>'
- """
- return cls.__module__.split('.')[-1]
-
- @classmethod
- def Description(cls):
- """Return a string explaining in human-understandable terms what this
- story represents.
- Note that this should be a classmethod so the benchmark_runner script can
- display stories' names along with their descriptions in the list command.
- """
- if cls.__doc__:
- return cls.__doc__.splitlines()[0]
- else:
- return ''
-
- def WprFilePathForStory(self, story):
- """Convenient function to retrieve WPR archive file path.
-
- Args:
- story: The Story to look up.
-
- Returns:
- The WPR archive file path for the given Story, if found.
- Otherwise, None.
- """
- if not self.wpr_archive_info:
- return None
- return self.wpr_archive_info.WprFilePathForStory(story)
-
- def __iter__(self):
- return self.stories.__iter__()
-
- def __len__(self):
- return len(self.stories)
-
- def __getitem__(self, key):
- return self.stories[key]
-
- def __setitem__(self, key, value):
- self.stories[key] = value
« no previous file with comments | « tools/telemetry/telemetry/story/story_filter_unittest.py ('k') | tools/telemetry/telemetry/story/story_set_unittest.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698