1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- # ex:ts=4:sw=4:sts=4:et
- # -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
- #
- # patchtestpatch: PatchTestPatch class which abstracts a patch file
- #
- # Copyright (C) 2016 Intel Corporation
- #
- # SPDX-License-Identifier: GPL-2.0-only
- #
- import logging
- import utils
- logger = logging.getLogger('patchtest')
- class PatchTestPatch(object):
- MERGE_STATUS_INVALID = 'INVALID'
- MERGE_STATUS_NOT_MERGED = 'NOTMERGED'
- MERGE_STATUS_MERGED_SUCCESSFULL = 'PASS'
- MERGE_STATUS_MERGED_FAIL = 'FAIL'
- MERGE_STATUS = (MERGE_STATUS_INVALID,
- MERGE_STATUS_NOT_MERGED,
- MERGE_STATUS_MERGED_SUCCESSFULL,
- MERGE_STATUS_MERGED_FAIL)
- def __init__(self, path, forcereload=False):
- self._path = path
- self._forcereload = forcereload
- self._contents = None
- self._branch = None
- self._merge_status = PatchTestPatch.MERGE_STATUS_NOT_MERGED
- @property
- def contents(self):
- if self._forcereload or (not self._contents):
- logger.debug('Reading %s contents' % self._path)
- try:
- with open(self._path, newline='') as _f:
- self._contents = _f.read()
- except IOError:
- logger.warn("Reading the mbox %s failed" % self.resource)
- return self._contents
- @property
- def path(self):
- return self._path
- @property
- def branch(self):
- if not self._branch:
- self._branch = utils.get_branch(self._path)
- return self._branch
- def setmergestatus(self, status):
- self._merge_status = status
- def getmergestatus(self):
- return self._merge_status
- merge_status = property(getmergestatus, setmergestatus)
|