@ -1,5 +1,5 @@
/ *
* Copyright ( C ) 2010 , Google Inc .
* Copyright ( C ) 2010 , 2013 Google Inc .
* and other copyright owners as documented in the project ' s IP log .
*
* This program and the accompanying materials are made available
@ -73,6 +73,7 @@ import org.eclipse.jgit.junit.LocalDiskRepositoryTestCase;
import org.eclipse.jgit.junit.TestRepository ;
import org.eclipse.jgit.lib.AnyObjectId ;
import org.eclipse.jgit.lib.BatchRefUpdate ;
import org.eclipse.jgit.lib.ProgressMonitor ;
import org.eclipse.jgit.lib.NullProgressMonitor ;
import org.eclipse.jgit.lib.Ref ;
import org.eclipse.jgit.lib.Ref.Storage ;
@ -1191,8 +1192,7 @@ public class RefDirectoryTest extends LocalDiskRepositoryTestCase {
ReceiveCommand . Type . UPDATE_NONFASTFORWARD ) ) ;
BatchRefUpdate batchUpdate = refdir . newBatchUpdate ( ) ;
batchUpdate . addCommand ( commands ) ;
batchUpdate
. execute ( new RevWalk ( diskRepo ) , NullProgressMonitor . INSTANCE ) ;
batchUpdate . execute ( new RevWalk ( diskRepo ) , new StrictWorkMonitor ( ) ) ;
Map < String , Ref > refs = refdir . getRefs ( RefDatabase . ALL ) ;
assertEquals ( ReceiveCommand . Result . OK , commands . get ( 0 ) . getResult ( ) ) ;
assertEquals ( ReceiveCommand . Result . REJECTED_NONFASTFORWARD , commands
@ -1215,8 +1215,7 @@ public class RefDirectoryTest extends LocalDiskRepositoryTestCase {
BatchRefUpdate batchUpdate = refdir . newBatchUpdate ( ) ;
batchUpdate . setAllowNonFastForwards ( true ) ;
batchUpdate . addCommand ( commands ) ;
batchUpdate
. execute ( new RevWalk ( diskRepo ) , NullProgressMonitor . INSTANCE ) ;
batchUpdate . execute ( new RevWalk ( diskRepo ) , new StrictWorkMonitor ( ) ) ;
Map < String , Ref > refs = refdir . getRefs ( RefDatabase . ALL ) ;
assertEquals ( ReceiveCommand . Result . OK , commands . get ( 0 ) . getResult ( ) ) ;
assertEquals ( ReceiveCommand . Result . OK , commands . get ( 1 ) . getResult ( ) ) ;
@ -1267,8 +1266,7 @@ public class RefDirectoryTest extends LocalDiskRepositoryTestCase {
BatchRefUpdate batchUpdate = refdir . newBatchUpdate ( ) ;
batchUpdate . setAllowNonFastForwards ( true ) ;
batchUpdate . addCommand ( commands ) ;
batchUpdate
. execute ( new RevWalk ( diskRepo ) , NullProgressMonitor . INSTANCE ) ;
batchUpdate . execute ( new RevWalk ( diskRepo ) , new StrictWorkMonitor ( ) ) ;
Map < String , Ref > refs = refdir . getRefs ( RefDatabase . ALL ) ;
assertEquals ( ReceiveCommand . Result . OK , commands . get ( 0 ) . getResult ( ) ) ;
assertEquals ( ReceiveCommand . Result . OK , commands . get ( 1 ) . getResult ( ) ) ;
@ -1311,4 +1309,29 @@ public class RefDirectoryTest extends LocalDiskRepositoryTestCase {
File path = new File ( diskRepo . getDirectory ( ) , name ) ;
assertTrue ( "deleted " + name , path . delete ( ) ) ;
}
private static final class StrictWorkMonitor implements ProgressMonitor {
private int lastWork , totalWork ;
public void start ( int totalTasks ) {
// empty
}
public void beginTask ( String title , int totalWork ) {
this . totalWork = totalWork ;
lastWork = 0 ;
}
public void update ( int completed ) {
lastWork + = completed ;
}
public void endTask ( ) {
assertEquals ( "Units of work recorded" , totalWork , lastWork ) ;
}
public boolean isCancelled ( ) {
return false ;
}
}
}