From: <al...@us...> - 2008-03-14 03:20:50
|
Revision: 2221 http://archive-access.svn.sourceforge.net/archive-access/?rev=2221&view=rev Author: alexoz Date: 2008-03-13 20:20:56 -0700 (Thu, 13 Mar 2008) Log Message: ----------- * Rule.java Treat blank groups the same as null groups (wildcard), as the web UI cannot distinguish the two cases. * RuleTest.java Added unit test to cover the above change. Modified Paths: -------------- trunk/archive-access/projects/access-control/access-control/src/main/java/org/archive/accesscontrol/model/Rule.java trunk/archive-access/projects/access-control/access-control/src/test/java/org/archive/accesscontrol/model/RuleTest.java Modified: trunk/archive-access/projects/access-control/access-control/src/main/java/org/archive/accesscontrol/model/Rule.java =================================================================== --- trunk/archive-access/projects/access-control/access-control/src/main/java/org/archive/accesscontrol/model/Rule.java 2008-03-14 02:54:06 UTC (rev 2220) +++ trunk/archive-access/projects/access-control/access-control/src/main/java/org/archive/accesscontrol/model/Rule.java 2008-03-14 03:20:56 UTC (rev 2221) @@ -348,7 +348,7 @@ * @return */ public boolean matches(String surt, Date captureDate, Date retrievalDate, String who2) { - return (who == null || who == who2) && matches(surt, captureDate, retrievalDate); + return (who == null || "".equals(who) || who == who2) && matches(surt, captureDate, retrievalDate); } public boolean isExactMatch() { Modified: trunk/archive-access/projects/access-control/access-control/src/test/java/org/archive/accesscontrol/model/RuleTest.java =================================================================== --- trunk/archive-access/projects/access-control/access-control/src/test/java/org/archive/accesscontrol/model/RuleTest.java 2008-03-14 02:54:06 UTC (rev 2220) +++ trunk/archive-access/projects/access-control/access-control/src/test/java/org/archive/accesscontrol/model/RuleTest.java 2008-03-14 03:20:56 UTC (rev 2221) @@ -70,4 +70,11 @@ assertFalse("under embargo, so non-match", rule.matches("(org,archive,)/", new GregorianCalendar(2007, 4, 10).getTime(), new GregorianCalendar(2007, 4, 12).getTime())); assertTrue("outside embargo, so match", rule.matches("(org,archive,)/", new GregorianCalendar(2007, 4, 10).getTime(), new GregorianCalendar(2007, 4, 25).getTime())); } + + public void testBlankGroupMatching() { + rule = new Rule(); + rule.setSurt("("); + rule.setWho(""); + assertTrue(rule.matches("(org,",null, null, "blah")); + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |