Пример #1
0
    def _print_security_judgements(self, judgements_data, indent=""):
        judgements = SecurityJudgements.from_dict(judgements_data)
        if len(judgements) == 0:
            self._printer.print("%sNo comments regarding this check." %
                                (indent))
        elif len(judgements) == 1:
            self._printer.print(
                "%s%s" % (indent, self._fmt_security_judgement(judgements[0])))
        else:
            for (jid, judgement) in enumerate(judgements, 1):
                self._printer.print("%s%d / %d: %s" %
                                    (indent, jid, len(judgements),
                                     self._fmt_security_judgement(judgement)))

            summary_judgement = judgements.summary_judgement()
            color = self._fmt_color(summary_judgement)
            self._printer.print(
                "%s    -> Summary: <%s>%s<end>" %
                (indent, color, self._fmt_textual_verdict(summary_judgement)))
Пример #2
0
    def test_serialize_judgements(self):
        judgements = SecurityJudgements()
        judgements += SecurityJudgement(
            code=JudgementCode.X509Cert_PublicKey_RSA_ParameterFieldNotPresent,
            text="Foo Bar! 1",
            verdict=Verdict.HIGH,
            commonness=Commonness.UNUSUAL)
        judgements += SecurityJudgement(
            code=JudgementCode.X509Cert_PublicKey_RSA_ParameterFieldNotPresent,
            text="Foo Bar! 2",
            verdict=Verdict.HIGH,
            commonness=Commonness.UNUSUAL)

        serialized = judgements.to_dict()
        self.assertEqual(serialized["components"][0]["text"], "Foo Bar! 1")
        self.assertEqual(serialized["components"][1]["text"], "Foo Bar! 2")

        judgements = SecurityJudgements.from_dict(serialized)
        self.assertEqual(judgements[0].text, "Foo Bar! 1")
        self.assertEqual(judgements[1].text, "Foo Bar! 2")