All of lore.kernel.org
 help / color / mirror / Atom feed
* [EGIT PATCH2/2] fixed-toString-for-CommitTimeRevFilter-wrote-JUnit-tests
@ 2009-06-15 21:36 Mark Struberg
  2009-06-16 22:19 ` Robin Rosenberg
  0 siblings, 1 reply; 3+ messages in thread
From: Mark Struberg @ 2009-06-15 21:36 UTC (permalink / raw)
  To: git


>From 72dd9d071ce140f267b8b4effd34d122627135e6 Mon Sep 17 00:00:00 2001
From: Mark Struberg <struberg@yahoo.de>
Date: Mon, 15 Jun 2009 08:07:53 +0200
Subject: [PATCH] fixed toString for CommitTimeRevFilter + wrote JUnit tests for after, before and between walks

---
 .../spearce/jgit/revwalk/RevWalkFilterTest.java    |   62 ++++++++++++++++++++
 .../jgit/revwalk/filter/CommitTimeRevFilter.java   |   21 +++++--
 2 files changed, 78 insertions(+), 5 deletions(-)

diff --git a/org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevWalkFilterTest.java b/org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevWalkFilterTest.java
index 6a26d2e..c9ed18c 100644
--- a/org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevWalkFilterTest.java
+++ b/org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevWalkFilterTest.java
@@ -38,11 +38,13 @@
 package org.spearce.jgit.revwalk;
 
 import java.io.IOException;
+import java.util.Date;
 
 import org.spearce.jgit.errors.IncorrectObjectTypeException;
 import org.spearce.jgit.errors.MissingObjectException;
 import org.spearce.jgit.errors.StopWalkException;
 import org.spearce.jgit.revwalk.filter.AndRevFilter;
+import org.spearce.jgit.revwalk.filter.CommitTimeRevFilter;
 import org.spearce.jgit.revwalk.filter.NotRevFilter;
 import org.spearce.jgit.revwalk.filter.OrRevFilter;
 import org.spearce.jgit.revwalk.filter.RevFilter;
@@ -215,6 +217,66 @@ public void testFilter_NO_MERGES() throws Exception {
 		assertCommit(a, rw.next());
 		assertNull(rw.next());
 	}
+	
+	public void testCommitTimeRevFilter() throws Exception {
+		final RevCommit a = commit();
+		tick(100);
+		
+		final RevCommit b = commit(a);
+		tick(100);
+		
+		Date since = new Date(nowTick);
+		final RevCommit c1 = commit(b);
+		tick(100);
+
+		final RevCommit c2 = commit(b);
+		tick(100);
+
+		Date until =  new Date(nowTick);
+		final RevCommit d = commit(c1, c2);
+		tick(100);
+
+		final RevCommit e = commit(d);
+
+		{
+			RevFilter after = CommitTimeRevFilter.after(since);
+			assertNotNull(after);
+			System.out.println(after.toString());
+			rw.setRevFilter(after);
+			markStart(e);
+			assertCommit(e, rw.next());
+			assertCommit(d, rw.next());
+			assertCommit(c2, rw.next());
+			assertCommit(c1, rw.next());
+			assertNull(rw.next());
+		}
+		
+		{
+			RevFilter before = CommitTimeRevFilter.before(until);
+			assertNotNull(before);
+			System.out.println(before.toString());
+			rw.reset();
+			rw.setRevFilter(before);
+			markStart(e);
+			assertCommit(c2, rw.next());
+			assertCommit(c1, rw.next());
+			assertCommit(b, rw.next());
+			assertCommit(a, rw.next());
+			assertNull(rw.next());
+		}
+
+		{
+			RevFilter between = CommitTimeRevFilter.between(since, until);
+			assertNotNull(between);
+			System.out.println(between.toString());
+			rw.reset();
+			rw.setRevFilter(between);
+			markStart(e);
+			assertCommit(c2, rw.next());
+			assertCommit(c1, rw.next());
+			assertNull(rw.next());
+		}
+	}
 
 	private static class MyAll extends RevFilter {
 		@Override
diff --git a/org.spearce.jgit/src/org/spearce/jgit/revwalk/filter/CommitTimeRevFilter.java b/org.spearce.jgit/src/org/spearce/jgit/revwalk/filter/CommitTimeRevFilter.java
index 0aaa78d..2af9862 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/revwalk/filter/CommitTimeRevFilter.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/revwalk/filter/CommitTimeRevFilter.java
@@ -93,11 +93,6 @@ public RevFilter clone() {
 		return this;
 	}
 
-	@Override
-	public String toString() {
-		return super.toString() + "(" + new Date(when * 1000) + ")";
-	}
-
 	private static class Before extends CommitTimeRevFilter {
 		Before(final long ts) {
 			super(ts);
@@ -109,6 +104,11 @@ public boolean include(final RevWalk walker, final RevCommit cmit)
 				IncorrectObjectTypeException, IOException {
 			return cmit.getCommitTime() <= when;
 		}
+
+		@Override
+		public String toString() {
+			return super.toString() + "(" + new Date(when * 1000L) + ")";
+		}
 	}
 
 	private static class After extends CommitTimeRevFilter {
@@ -128,6 +128,11 @@ public boolean include(final RevWalk walker, final RevCommit cmit)
 				throw StopWalkException.INSTANCE;
 			return true;
 		}
+
+		@Override
+		public String toString() {
+			return super.toString() + "(" + new Date(when * 1000L) + ")";
+		}
 	}
 
 	private static class Between extends CommitTimeRevFilter {
@@ -144,6 +149,12 @@ public boolean include(final RevWalk walker, final RevCommit cmit)
 				IncorrectObjectTypeException, IOException {
 			return cmit.getCommitTime() <= until && cmit.getCommitTime() >= when;
 		}
+
+		@Override
+		public String toString() {
+			return super.toString() + "(" + new Date(when * 1000L) + " - " + new Date(until * 1000L) + ")";
+		}
+
 	}
 
 }
-- 
1.6.0.6



      

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [EGIT PATCH2/2] fixed-toString-for-CommitTimeRevFilter-wrote-JUnit-tests
  2009-06-15 21:36 [EGIT PATCH2/2] fixed-toString-for-CommitTimeRevFilter-wrote-JUnit-tests Mark Struberg
@ 2009-06-16 22:19 ` Robin Rosenberg
  0 siblings, 0 replies; 3+ messages in thread
From: Robin Rosenberg @ 2009-06-16 22:19 UTC (permalink / raw)
  To: Mark Struberg; +Cc: git, Shawn O. Pearce

måndag 15 juni 2009 23:36:35 skrev Mark Struberg <struberg@yahoo.de>:
> 
> From 72dd9d071ce140f267b8b4effd34d122627135e6 Mon Sep 17 00:00:00 2001
> From: Mark Struberg <struberg@yahoo.de>
> Date: Mon, 15 Jun 2009 08:07:53 +0200
> Subject: [PATCH] fixed toString for CommitTimeRevFilter + wrote JUnit tests for after, before and between walks

What is the connection between the toString and the rest of the patch? Should be
separate patches.

You should sign off the patches.

Start the subject with a capital letter.

Technically it seemed ok, but I shouldn't have pushed them, as I did, by mistake when pusing
Shawn's latest patch. The formal errors should have been fixed firsts.

-- robin

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [EGIT PATCH2/2] fixed-toString-for-CommitTimeRevFilter-wrote-JUnit-tests
@ 2009-06-17  7:58 Mark Struberg
  0 siblings, 0 replies; 3+ messages in thread
From: Mark Struberg @ 2009-06-17  7:58 UTC (permalink / raw)
  To: Robin Rosenberg; +Cc: git, Shawn O. Pearce


Thanks Robin!

I'm currently working on a larger change by introducing a SimpleRepository class [1] which wraps most of the jgit interna for easier use in external projects, mainly maven-scm-provider-jgit [2]. Since this isn't yet ready to be merged into master as a whole, I had to chop the commits later. This is the reason why the subject doesn't perfectly fit, apologise.

LieGrue,
strub

[1] http://github.com/sonatype/JGit/tree/72dd9d071ce140f267b8b4effd34d122627135e6/org.spearce.jgit/src/org/spearce/jgit/simple
[2] http://github.com/struberg/maven-scm-providers-git

--- Robin Rosenberg <robin.rosenberg.lists@dewire.com> schrieb am Mi, 17.6.2009:

> Von: Robin Rosenberg <robin.rosenberg.lists@dewire.com>
> Betreff: Re: [EGIT PATCH2/2] fixed-toString-for-CommitTimeRevFilter-wrote-JUnit-tests
> An: "Mark Struberg" <struberg@yahoo.de>
> CC: git@vger.kernel.org, "Shawn O. Pearce" <spearce@spearce.org>
> Datum: Mittwoch, 17. Juni 2009, 0:19
> måndag 15 juni 2009 23:36:35 skrev
> Mark Struberg <struberg@yahoo.de>:
> > 
> > From 72dd9d071ce140f267b8b4effd34d122627135e6 Mon Sep
> 17 00:00:00 2001
> > From: Mark Struberg <struberg@yahoo.de>
> > Date: Mon, 15 Jun 2009 08:07:53 +0200
> > Subject: [PATCH] fixed toString for
> CommitTimeRevFilter + wrote JUnit tests for after, before
> and between walks
> 
> What is the connection between the toString and the rest of
> the patch? Should be
> separate patches.
> 
> You should sign off the patches.
> 
> Start the subject with a capital letter.
> 
> Technically it seemed ok, but I shouldn't have pushed them,
> as I did, by mistake when pusing
> Shawn's latest patch. The formal errors should have been
> fixed firsts.
> 
> -- robin


      

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-06-17  7:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-15 21:36 [EGIT PATCH2/2] fixed-toString-for-CommitTimeRevFilter-wrote-JUnit-tests Mark Struberg
2009-06-16 22:19 ` Robin Rosenberg
2009-06-17  7:58 Mark Struberg

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.