summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn O. Pearce <spearce@spearce.org>2010-12-13 14:18:42 -0800
committerShawn O. Pearce <spearce@spearce.org>2010-12-15 15:14:05 -0800
commit6f3b4d5d041b166499e3be241feb62d01fb1a0b2 (patch)
treeaa86469896ea9c3cce42bc30fe588138787f238e
parent013cb8de3824c304645a9c5db87c2e80286872d1 (diff)
downloadjgit-6f3b4d5d041b166499e3be241feb62d01fb1a0b2.tar.gz
jgit-6f3b4d5d041b166499e3be241feb62d01fb1a0b2.zip
Save StoredConfig after modifications
When the Config is changed, it should be saved back to its local file. This ensure that a future call to getConfig() won't wipe out the edits that were just made. Change-Id: Id46d3f85d1c9b377f63ef861b72824e1aa060eee Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rw-r--r--org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/AsIsServiceTest.java10
-rw-r--r--org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultReceivePackFactoryTest.java17
-rw-r--r--org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultUploadPackFactoryTest.java10
-rw-r--r--org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java6
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/api/FetchCommandTest.java5
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PullCommandTest.java2
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PushCommandTest.java5
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ReflogConfigTest.java16
8 files changed, 51 insertions, 20 deletions
diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/AsIsServiceTest.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/AsIsServiceTest.java
index 2650db2fa8..3442af94db 100644
--- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/AsIsServiceTest.java
+++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/AsIsServiceTest.java
@@ -43,6 +43,8 @@
package org.eclipse.jgit.http.test;
+import java.io.IOException;
+
import javax.servlet.http.HttpServletRequestWrapper;
import org.eclipse.jetty.server.Request;
@@ -51,6 +53,7 @@ import org.eclipse.jgit.http.server.resolver.ServiceNotAuthorizedException;
import org.eclipse.jgit.http.server.resolver.ServiceNotEnabledException;
import org.eclipse.jgit.junit.LocalDiskRepositoryTestCase;
import org.eclipse.jgit.lib.Repository;
+import org.eclipse.jgit.lib.StoredConfig;
public class AsIsServiceTest extends LocalDiskRepositoryTestCase {
private Repository db;
@@ -87,8 +90,11 @@ public class AsIsServiceTest extends LocalDiskRepositoryTestCase {
service.access(new R("bob", "1.2.3.4"), db);
}
- public void testCreate_Disabled() throws ServiceNotAuthorizedException {
- db.getConfig().setBoolean("http", null, "getanyfile", false);
+ public void testCreate_Disabled() throws ServiceNotAuthorizedException,
+ IOException {
+ final StoredConfig cfg = db.getConfig();
+ cfg.setBoolean("http", null, "getanyfile", false);
+ cfg.save();
try {
service.access(new R(null, "1.2.3.4"), db);
diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultReceivePackFactoryTest.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultReceivePackFactoryTest.java
index 4d05a085c6..81d5f4f51d 100644
--- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultReceivePackFactoryTest.java
+++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultReceivePackFactoryTest.java
@@ -43,6 +43,8 @@
package org.eclipse.jgit.http.test;
+import java.io.IOException;
+
import javax.servlet.http.HttpServletRequestWrapper;
import org.eclipse.jetty.server.Request;
@@ -53,6 +55,7 @@ import org.eclipse.jgit.http.server.resolver.ServiceNotEnabledException;
import org.eclipse.jgit.junit.LocalDiskRepositoryTestCase;
import org.eclipse.jgit.lib.PersonIdent;
import org.eclipse.jgit.lib.Repository;
+import org.eclipse.jgit.lib.StoredConfig;
import org.eclipse.jgit.transport.ReceivePack;
public class DefaultReceivePackFactoryTest extends LocalDiskRepositoryTestCase {
@@ -127,8 +130,11 @@ public class DefaultReceivePackFactoryTest extends LocalDiskRepositoryTestCase {
assertEquals(author.getWhen(), id.getWhen());
}
- public void testCreate_Disabled() throws ServiceNotAuthorizedException {
- db.getConfig().setBoolean("http", null, "receivepack", false);
+ public void testCreate_Disabled() throws ServiceNotAuthorizedException,
+ IOException {
+ final StoredConfig cfg = db.getConfig();
+ cfg.setBoolean("http", null, "receivepack", false);
+ cfg.save();
try {
factory.create(new R(null, "localhost"), db);
@@ -153,8 +159,11 @@ public class DefaultReceivePackFactoryTest extends LocalDiskRepositoryTestCase {
}
public void testCreate_Enabled() throws ServiceNotEnabledException,
- ServiceNotAuthorizedException {
- db.getConfig().setBoolean("http", null, "receivepack", true);
+ ServiceNotAuthorizedException, IOException {
+ final StoredConfig cfg = db.getConfig();
+ cfg.setBoolean("http", null, "receivepack", true);
+ cfg.save();
+
ReceivePack rp;
rp = factory.create(new R(null, "1.2.3.4"), db);
diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultUploadPackFactoryTest.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultUploadPackFactoryTest.java
index 423361e06b..24bf480dd2 100644
--- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultUploadPackFactoryTest.java
+++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DefaultUploadPackFactoryTest.java
@@ -43,6 +43,8 @@
package org.eclipse.jgit.http.test;
+import java.io.IOException;
+
import javax.servlet.http.HttpServletRequestWrapper;
import org.eclipse.jetty.server.Request;
@@ -52,6 +54,7 @@ import org.eclipse.jgit.http.server.resolver.ServiceNotEnabledException;
import org.eclipse.jgit.http.server.resolver.UploadPackFactory;
import org.eclipse.jgit.junit.LocalDiskRepositoryTestCase;
import org.eclipse.jgit.lib.Repository;
+import org.eclipse.jgit.lib.StoredConfig;
import org.eclipse.jgit.transport.UploadPack;
public class DefaultUploadPackFactoryTest extends LocalDiskRepositoryTestCase {
@@ -104,8 +107,11 @@ public class DefaultUploadPackFactoryTest extends LocalDiskRepositoryTestCase {
assertSame(db, up.getRepository());
}
- public void testCreate_Disabled() throws ServiceNotAuthorizedException {
- db.getConfig().setBoolean("http", null, "uploadpack", false);
+ public void testCreate_Disabled() throws ServiceNotAuthorizedException,
+ IOException {
+ final StoredConfig cfg = db.getConfig();
+ cfg.setBoolean("http", null, "uploadpack", false);
+ cfg.save();
try {
factory.create(new R(null, "localhost"), db);
diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java
index c4912d4055..6cf282f3be 100644
--- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java
+++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java
@@ -68,6 +68,7 @@ import org.eclipse.jgit.lib.Ref;
import org.eclipse.jgit.lib.RefUpdate;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.revwalk.RevCommit;
+import org.eclipse.jgit.storage.file.FileBasedConfig;
import org.eclipse.jgit.storage.file.FileRepository;
import org.eclipse.jgit.transport.FetchConnection;
import org.eclipse.jgit.transport.Transport;
@@ -336,8 +337,9 @@ public class HttpClientTests extends HttpTestCase {
public void testListRemote_Smart_UploadPackDisabled() throws Exception {
FileRepository src = remoteRepository.getRepository();
- src.getConfig().setBoolean("http", null, "uploadpack", false);
- src.getConfig().save();
+ final FileBasedConfig cfg = src.getConfig();
+ cfg.setBoolean("http", null, "uploadpack", false);
+ cfg.save();
Repository dst = createBareRepository();
Transport t = Transport.open(dst, smartAuthNoneURI);
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/FetchCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/FetchCommandTest.java
index 10396b4e71..27e0b1b541 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/FetchCommandTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/FetchCommandTest.java
@@ -47,9 +47,9 @@ import java.net.URISyntaxException;
import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
-import org.eclipse.jgit.lib.Config;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.lib.RepositoryTestCase;
+import org.eclipse.jgit.lib.StoredConfig;
import org.eclipse.jgit.revwalk.RevCommit;
import org.eclipse.jgit.revwalk.RevTag;
import org.eclipse.jgit.transport.RefSpec;
@@ -66,11 +66,12 @@ public class FetchCommandTest extends RepositoryTestCase {
Git git2 = new Git(db2);
// setup the first repository to fetch from the second repository
- final Config config = db.getConfig();
+ final StoredConfig config = db.getConfig();
RemoteConfig remoteConfig = new RemoteConfig(config, "test");
URIish uri = new URIish(db2.getDirectory().toURI().toURL());
remoteConfig.addURI(uri);
remoteConfig.update(config);
+ config.save();
// create some refs via commits and tag
RevCommit commit = git2.commit().setMessage("initial commit").call();
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PullCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PullCommandTest.java
index 48ede966f9..5d54a1c897 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PullCommandTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PullCommandTest.java
@@ -199,8 +199,8 @@ public class PullCommandTest extends RepositoryTestCase {
.getPath()));
config.addFetchRefSpec(new RefSpec(
"+refs/heads/*:refs/remotes/origin/*"));
- targetConfig.save();
config.update(targetConfig);
+ targetConfig.save();
targetFile = new File(dbTarget.getWorkTree(), "SomeFile.txt");
writeToFile(targetFile, "Hello world");
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PushCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PushCommandTest.java
index d9a07866c3..04232f6d01 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PushCommandTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/PushCommandTest.java
@@ -48,9 +48,9 @@ import java.net.URISyntaxException;
import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
import org.eclipse.jgit.errors.MissingObjectException;
-import org.eclipse.jgit.lib.Config;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.lib.RepositoryTestCase;
+import org.eclipse.jgit.lib.StoredConfig;
import org.eclipse.jgit.revwalk.RevCommit;
import org.eclipse.jgit.revwalk.RevTag;
import org.eclipse.jgit.transport.RefSpec;
@@ -66,11 +66,12 @@ public class PushCommandTest extends RepositoryTestCase {
Repository db2 = createWorkRepository();
// setup the first repository
- final Config config = db.getConfig();
+ final StoredConfig config = db.getConfig();
RemoteConfig remoteConfig = new RemoteConfig(config, "test");
URIish uri = new URIish(db2.getDirectory().toURI().toURL());
remoteConfig.addURI(uri);
remoteConfig.update(config);
+ config.save();
Git git1 = new Git(db);
// create some refs via commits and tag
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ReflogConfigTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ReflogConfigTest.java
index ded7e58fa6..ea8b17df92 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ReflogConfigTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ReflogConfigTest.java
@@ -47,6 +47,8 @@ package org.eclipse.jgit.lib;
import java.io.IOException;
+import org.eclipse.jgit.storage.file.FileBasedConfig;
+
public class ReflogConfigTest extends RepositoryTestCase {
public void testlogAllRefUpdates() throws Exception {
long commitTime = 1154236443000L;
@@ -55,7 +57,9 @@ public class ReflogConfigTest extends RepositoryTestCase {
// check that there are no entries in the reflog and turn off writing
// reflogs
assertEquals(0, db.getReflogReader(Constants.HEAD).getReverseEntries().size());
- db.getConfig().setBoolean("core", null, "logallrefupdates", false);
+ final FileBasedConfig cfg = db.getConfig();
+ cfg.setBoolean("core", null, "logallrefupdates", false);
+ cfg.save();
// do one commit and check that reflog size is 0: no reflogs should be
// written
@@ -69,8 +73,9 @@ public class ReflogConfigTest extends RepositoryTestCase {
db.getReflogReader(Constants.HEAD).getReverseEntries().size() == 0);
// set the logAllRefUpdates parameter to true and check it
- db.getConfig().setBoolean("core", null, "logallrefupdates", true);
- assertTrue(db.getConfig().get(CoreConfig.KEY).isLogAllRefUpdates());
+ cfg.setBoolean("core", null, "logallrefupdates", true);
+ cfg.save();
+ assertTrue(cfg.get(CoreConfig.KEY).isLogAllRefUpdates());
// do one commit and check that reflog size is increased to 1
addFileToTree(t, "i-am-another-file", "and this is other data in me\n");
@@ -82,8 +87,9 @@ public class ReflogConfigTest extends RepositoryTestCase {
db.getReflogReader(Constants.HEAD).getReverseEntries().size() == 1);
// set the logAllRefUpdates parameter to false and check it
- db.getConfig().setBoolean("core", null, "logallrefupdates", false);
- assertFalse(db.getConfig().get(CoreConfig.KEY).isLogAllRefUpdates());
+ cfg.setBoolean("core", null, "logallrefupdates", false);
+ cfg.save();
+ assertFalse(cfg.get(CoreConfig.KEY).isLogAllRefUpdates());
// do one commit and check that reflog size is 2
addFileToTree(t, "i-am-anotheranother-file",