def setUp(self): SeecrTestCase.setUp(self) self.domainId = "adomain" self.stateDir = mkdir(self.tempdir, "state") mkdir(self.stateDir, self.domainId) self.logDir = mkdir(self.tempdir, "log") repoId1LogDir = mkdir(self.logDir, self.domainId, "invalid", "repoId1") repoId2LogDir = mkdir(self.logDir, self.domainId, "invalid", escapeFilename("repoId/2")) _writeFile(repoId1LogDir, "invalidId1", data="<diagnostic>ERROR1</diagnostic>") _writeFile(repoId1LogDir, "invalidId&2", data="<diagnostic>ERROR2</diagnostic>") _writeFile(repoId2LogDir, escapeFilename("invalidId/3"), data="<diagnostic>ERROR3</diagnostic>") _writeFile(self.stateDir, self.domainId, "repoId1_invalid.ids", data="invalidId1\ninvalidId&2") _writeFile(self.stateDir, self.domainId, escapeFilename("repoId/2_invalid.ids"), data="invalidId/3") _writeFile(self.stateDir, self.domainId, "repoId3_invalid.ids", data="") self.status = RepositoryStatus(self.logDir, self.stateDir) observer = CallTrace("HarvesterData") observer.returnValues["getRepositoryGroupIds"] = [ "repoGroupId1", "repoGroupId2" ] def getRepositoryIds(domainId, repositoryGroupId): if repositoryGroupId == "repoGroupId1": return ["repoId1", "repoId/2"] return ["repoId3", "anotherRepoId"] observer.methods["getRepositoryIds"] = getRepositoryIds def getRepositoryGroupId(domainId, repositoryId): return 'repoGroupId1' if repositoryId in ['repoId1', 'repoId/2' ] else 'repoGroupId2' observer.methods["getRepositoryGroupId"] = getRepositoryGroupId self.status.addObserver(observer)
def __init__(self, name=None): self._name = name self._repostatus = RepositoryStatus( '/var/log/meresco-harvester', '/var/lib/meresco-harvester/state')