def test_correct_format(self): project = self.create_project() build = self.create_build(project) job = self.create_job(build) jobphase = self.create_jobphase(job) jobstep = self.create_jobstep(jobphase) handler = ManifestJsonHandler(jobstep) fp = StringIO(self.json_file_format % jobstep.id.hex) handler.process(fp) assert not FailureReason.query.filter(FailureReason.step_id == jobstep.id).first()
def test_correct_format(self): project = self.create_project() build = self.create_build(project) job = self.create_job(build) jobphase = self.create_jobphase(job) jobstep = self.create_jobstep(jobphase) artifact = self.create_artifact(jobstep, 'manifest.json') handler = ManifestJsonHandler(jobstep) fp = StringIO(self.json_file_format % jobstep.id.hex) handler.process(fp, artifact) assert not FailureReason.query.filter( FailureReason.step_id == jobstep.id).first()
def test_malformed(self): project = self.create_project() build = self.create_build(project) job = self.create_job(build) jobphase = self.create_jobphase(job) jobstep = self.create_jobstep(jobphase) artifact = self.create_artifact(jobstep, 'manifest.json') handler = ManifestJsonHandler(jobstep) fp = StringIO('invalid_file') handler.process(fp, artifact) assert Result.infra_failed assert FailureReason.query.filter( FailureReason.step_id == jobstep.id, FailureReason.reason == 'malformed_manifest_json', ).first()
def test_malformed(self): project = self.create_project() build = self.create_build(project) job = self.create_job(build) jobphase = self.create_jobphase(job) jobstep = self.create_jobstep(jobphase) handler = ManifestJsonHandler(jobstep) # TODO(nate): temporarily disabled if False: fp = StringIO('invalid_file') handler.process(fp) assert Result.infra_failed assert FailureReason.query.filter( FailureReason.step_id == jobstep.id, FailureReason.reason == 'malformed_manifest_json', ).first()