blob: 3d7c7c4743f4a90ffd24c43e507cd8d075955bfd [file] [log] [blame]
# Copyright 2017 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 hashlib
class MockChromiumCommit(object):
def __init__(self, host,
position='refs/heads/master@{#123}',
change_id='Iba5eba11',
author='Fake author',
subject='Fake subject',
body='Fake body',
patch='Fake patch contents'):
self.host = host
self.position = position
self.sha = hashlib.sha1(position).hexdigest()
self._change_id = change_id
self._author = author
self._subject = subject
self._body = body
self._patch = patch
@property
def short_sha(self):
return self.sha[0:10]
def filtered_changed_files(self):
return [
'third_party/blink/web_tests/external/wpt/one.html',
'third_party/blink/web_tests/external/wpt/two.html',
]
def url(self):
return 'https://fake-chromium-commit-viewer.org/+/%s' % self.short_sha
def author(self):
return self._author
def subject(self):
return self._subject
def body(self):
# The final newline is intentionally added to match the real behavior.
return self._body + '\n\nChange-Id: ' + self.change_id() + '\n'
def message(self):
return self.subject() + '\n\n' + self.body()
def format_patch(self):
return self._patch
def change_id(self):
return self._change_id