import static org.eclipse.jgit.lib.RefUpdate.Result.NEW;
import static org.eclipse.jgit.lib.RefUpdate.Result.NO_CHANGE;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
import java.io.ByteArrayInputStream;
import java.io.IOException;
@Test
public void saveInBatch() throws Exception {
BatchRefUpdate batch = repo.getRefDatabase().newBatchUpdate();
+ assertFalse(store.save(batch));
+ assertEquals(0, batch.getCommands().size());
PushCertificate addMaster = newCert(
command(zeroId(), ID1, "refs/heads/master"));
store.put(addMaster, newIdent());
- store.save(batch);
+ assertTrue(store.save(batch));
List<ReceiveCommand> commands = batch.getCommands();
assertEquals(1, commands.size());
*
* @param batch
* update to save to.
+ * @return whether a command was added to the batch.
* @throws IOException
* if there was an error reading from or writing to the
* repository.
*/
- public void save(BatchRefUpdate batch) throws IOException {
+ public boolean save(BatchRefUpdate batch) throws IOException {
ObjectId newId = write();
if (newId == null) {
- return;
+ return false;
}
batch.addCommand(new ReceiveCommand(
commit != null ? commit : ObjectId.zeroId(), newId, REF_NAME));
+ return true;
}
/**