git: unify tests for two commit modes

This commit is contained in:
Aleksey Pivovarov
2018-07-19 15:14:18 +03:00
parent 53d47cd465
commit fbc0d823aa
2 changed files with 5 additions and 21 deletions
@@ -34,8 +34,10 @@ import org.junit.Assume.assumeTrue
import java.io.File
import java.util.*
class GitStagingCommitTest : GitCommitTest(true)
class GitWithOnlyCommitTest : GitCommitTest(false)
open class GitCommitTest : GitSingleRepoTest() {
abstract class GitCommitTest(private val useStagingArea: Boolean) : GitSingleRepoTest() {
private val myMovementProvider = MyExplicitMovementProvider()
override fun getDebugLogCategories() = super.getDebugLogCategories().plus("#" + GitCheckinEnvironment::class.java.name)
@@ -46,6 +48,7 @@ open class GitCommitTest : GitSingleRepoTest() {
val point = Extensions.getRootArea().getExtensionPoint(GitCheckinExplicitMovementProvider.EP_NAME)
point.registerExtension(myMovementProvider)
Registry.get("git.allow.explicit.commit.renames").setValue(true)
Registry.get("git.force.commit.using.staging.area").setValue(useStagingArea)
(vcs.checkinEnvironment as GitCheckinEnvironment).setCommitRenamesSeparately(true)
}
@@ -55,6 +58,7 @@ open class GitCommitTest : GitSingleRepoTest() {
val point = Extensions.getRootArea().getExtensionPoint(GitCheckinExplicitMovementProvider.EP_NAME)
point.unregisterExtension(myMovementProvider)
Registry.get("git.allow.explicit.commit.renames").resetToDefault()
Registry.get("git.force.commit.using.staging.area").resetToDefault()
(vcs.checkinEnvironment as GitCheckinEnvironment).setCommitRenamesSeparately(false)
}
@@ -1,20 +0,0 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package git4idea.tests
import com.intellij.openapi.util.registry.Registry
class GitStagingCommitTest : GitCommitTest() {
override fun setUp() {
super.setUp()
Registry.get("git.force.commit.using.staging.area").setValue(true)
}
override fun tearDown() {
try {
Registry.get("git.force.commit.using.staging.area").resetToDefault()
}
finally {
super.tearDown()
}
}
}