git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[JGIT PATCH 00/12] Improve test coverage in revwalk

From
Shawn O. Pearce <spearce@spearce.org>
Date
Mar 18, 2009, 01:40 UTC
Message-ID
<1237340451-31562-1-git-send-email-spearce@spearce.org>

Most of these patches are to improve the test coverage within the revwalk package.

The last commit points out what I feared, which is that a RevWalk with a PathFilter applied doesn't produce the same results that git-core would produce in the same situation. We're either missing some functions necessary to implement it, or we flat out produce a wrong graph in some cases.

The tests are commented out because JUnit doesn't have a notion of "known broken". But I did leave in TODO comments. I'd like to apply the test, and then work later to improve it, but I'm open to suggestions.

Shawn O. Pearce (12):
  Fix copyright year in revwalk test file headers
  Mark non-overridable methods of RevObject final
  Change RevWalkTestCase to use RevCommit, not ObjectId
  Test that RevFilter.MERGE_BASE cannot use a TreeFilter
  Add unit tests for DateRevQueue
  Add unit tests for FIFORevQueue
  Add unit tests for LIFORevQueue
  Add unit tests for AbstractRevQueue.EMPTY_QUEUE
  Add tests for basic RevObject methods related to type, flags
  Add tests for ObjectWalk
  Add some basic logic tests for TreeFilter on RevWalk
  Implement git-core t/t6012-rev-list-simplify test case
 .../jgit/revwalk/AlwaysEmptyRevQueueTest.java      |   63 +++++++
 .../org/spearce/jgit/revwalk/DateRevQueueTest.java |  118 ++++++++++++
 .../org/spearce/jgit/revwalk/FIFORevQueueTest.java |   81 +++++++++
 .../org/spearce/jgit/revwalk/LIFORevQueueTest.java |   69 +++++++
 .../org/spearce/jgit/revwalk/ObjectWalkTest.java   |  190 ++++++++++++++++++++
 .../org/spearce/jgit/revwalk/RevFlagSetTest.java   |    2 +-
 .../org/spearce/jgit/revwalk/RevObjectTest.java    |  171 ++++++++++++++++++
 .../org/spearce/jgit/revwalk/RevQueueTestCase.java |   85 +++++++++
 .../org/spearce/jgit/revwalk/RevWalkCullTest.java  |   30 ++--
 .../spearce/jgit/revwalk/RevWalkFilterTest.java    |   93 +++++-----
 .../spearce/jgit/revwalk/RevWalkMergeBaseTest.java |   64 ++++---
 .../jgit/revwalk/RevWalkPathFilter1Test.java       |  176 ++++++++++++++++++
 .../jgit/revwalk/RevWalkPathFilter6012Test.java    |  162 +++++++++++++++++
 .../org/spearce/jgit/revwalk/RevWalkSortTest.java  |   66 ++++----
 .../org/spearce/jgit/revwalk/RevWalkTestCase.java  |  110 ++++++++++--
 .../org/spearce/jgit/revwalk/AbstractRevQueue.java |    2 +-
 .../org/spearce/jgit/revwalk/BlockRevQueue.java    |    2 +-
 .../src/org/spearce/jgit/revwalk/RevObject.java    |   20 +-
 18 files changed, 1353 insertions(+), 151 deletions(-)
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/AlwaysEmptyRevQueueTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/DateRevQueueTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/FIFORevQueueTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/LIFORevQueueTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/ObjectWalkTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevObjectTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevQueueTestCase.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevWalkPathFilter1Test.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/revwalk/RevWalkPathFilter6012Test.java
Next: Shawn O. Pearce
Message 1 of 15 in “Improve test coverage in revwalk”
  1. 00/12 Improve test coverage in revwalkShawn O. Pearce, Mar 18, 2009
  2. 01/12 Fix copyright year in revwalk test file headersShawn O. Pearce, Mar 18, 2009
  3. 02/12 Mark non-overridable methods of RevObject finalShawn O. Pearce, Mar 18, 2009
  4. 03/12 Change RevWalkTestCase to use RevCommit, not ObjectIdShawn O. Pearce, Mar 18, 2009
  5. 04/12 Test that RevFilter.MERGE_BASE cannot use a TreeFilterShawn O. Pearce, Mar 18, 2009
  6. 05/12 Add unit tests for DateRevQueueShawn O. Pearce, Mar 18, 2009
  7. 06/12 Add unit tests for FIFORevQueueShawn O. Pearce, Mar 18, 2009
  8. 07/12 Add unit tests for LIFORevQueueShawn O. Pearce, Mar 18, 2009
  9. 08/12 Add unit tests for AbstractRevQueue.EMPTY_QUEUEShawn O. Pearce, Mar 18, 2009
  10. 09/12 Add tests for basic RevObject methods related to type, flagsShawn O. Pearce, Mar 18, 2009
  11. 10/12 Add tests for ObjectWalkShawn O. Pearce, Mar 18, 2009
  12. 11/12 Add some basic logic tests for TreeFilter on RevWalkShawn O. Pearce, Mar 18, 2009
  13. 12/12 Implement git-core t/t6012-rev-list-simplify test caseShawn O. Pearce, Mar 18, 2009
  14. Robin RosenbergMar 18, 2009
  15. Robin RosenbergMar 18, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.