Return-Path: X-Original-To: apmail-incubator-rat-commits-archive@minotaur.apache.org Delivered-To: apmail-incubator-rat-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 10B6C47F5 for ; Mon, 11 Jul 2011 11:42:21 +0000 (UTC) Received: (qmail 19148 invoked by uid 500); 11 Jul 2011 11:42:20 -0000 Delivered-To: apmail-incubator-rat-commits-archive@incubator.apache.org Received: (qmail 19114 invoked by uid 500); 11 Jul 2011 11:42:19 -0000 Mailing-List: contact rat-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: rat-dev@incubator.apache.org Delivered-To: mailing list rat-commits@incubator.apache.org Received: (qmail 19104 invoked by uid 99); 11 Jul 2011 11:42:18 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 11 Jul 2011 11:42:17 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 11 Jul 2011 11:42:15 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 9565F238890D; Mon, 11 Jul 2011 11:41:53 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1145128 - in /incubator/rat/eye/trunk: org/apache/rat/eye/engine.py test/test_engine.py Date: Mon, 11 Jul 2011 11:41:53 -0000 To: rat-commits@incubator.apache.org From: rdonkin@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110711114153.9565F238890D@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: rdonkin Date: Mon Jul 11 11:41:53 2011 New Revision: 1145128 URL: http://svn.apache.org/viewvc?rev=1145128&view=rev Log: Add reporting infrastructure Modified: incubator/rat/eye/trunk/org/apache/rat/eye/engine.py incubator/rat/eye/trunk/test/test_engine.py Modified: incubator/rat/eye/trunk/org/apache/rat/eye/engine.py URL: http://svn.apache.org/viewvc/incubator/rat/eye/trunk/org/apache/rat/eye/engine.py?rev=1145128&r1=1145127&r2=1145128&view=diff ============================================================================== --- incubator/rat/eye/trunk/org/apache/rat/eye/engine.py (original) +++ incubator/rat/eye/trunk/org/apache/rat/eye/engine.py Mon Jul 11 11:41:53 2011 @@ -230,6 +230,15 @@ class Reports(): self.info = [] self.hazards = [] self.blockers = [] + + def addReports(self, blockers, hazards, info): + if not (blockers is None): + self.blockers.extend(blockers) + if not (hazards is None): + self.hazards.extend(hazards) + if not (hazards is None): + self.info.extend(info) + return self class Directory(Reports): """ @@ -247,6 +256,8 @@ class Directory(Reports): def reportTo(self, reviewer): if (hasattr(reviewer, "reviewDirectory")): reviewer.reviewDirectory(self) + for artifact in self.artifacts: + artifact.reportTo(reviewer) def __repr__(self): return "directory:path='" + self.path + "'" @@ -310,4 +321,5 @@ class Jar(Artifact, ZipContainer): def reportTo(self, reviewer): Artifact.reportTo(self, reviewer) if (hasattr(reviewer, "reviewJar")): - reviewer.reviewJar(self) \ No newline at end of file + reviewer.reviewJar(self) + Modified: incubator/rat/eye/trunk/test/test_engine.py URL: http://svn.apache.org/viewvc/incubator/rat/eye/trunk/test/test_engine.py?rev=1145128&r1=1145127&r2=1145128&view=diff ============================================================================== --- incubator/rat/eye/trunk/test/test_engine.py (original) +++ incubator/rat/eye/trunk/test/test_engine.py Mon Jul 11 11:41:53 2011 @@ -220,6 +220,40 @@ class TestEngine(unittest.TestCase): def testAcculativeScannerSmokeOrChoke(self): engine.AccumulativeScanner() + def testAppendFirstReport(self): + blockers = ["whatever"] + hazards = ["one", "two"] + info = [] + + subject = engine.Reports().addReports(blockers, hazards, info) + + self.assertEquals(subject.blockers, blockers) + self.assertEquals(subject.hazards, hazards) + self.assertEquals(subject.info, info) + + def testAppendReportNone(self): + subject = engine.Reports().addReports(None, None, None) + + self.assertEquals(subject.blockers, []) + self.assertEquals(subject.hazards, []) + self.assertEquals(subject.info, []) + + def testAppendAnotherReport(self): + blockers = ["tom"] + hazards = ["dick"] + info = ["harry"] + + subject = engine.Reports().addReports(blockers, hazards, info) + + extra_blockers = ["one"] + extra_hazards = ["two"] + extra_info = ["three"] + + subject = subject.addReports(extra_blockers, extra_hazards, extra_info) + + self.assertEquals(subject.blockers, blockers + extra_blockers) + self.assertEquals(subject.hazards, hazards + extra_hazards) + self.assertEquals(subject.info, info + extra_info) if __name__ == '__main__': unittest.main() \ No newline at end of file