mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-02-03 13:21:56 +02:00
add bisect integration test
This commit is contained in:
parent
79620fc6cf
commit
010f430d1f
@ -79,3 +79,11 @@ func (self *GuiDriver) MainView() *gocui.View {
|
||||
func (self *GuiDriver) SecondaryView() *gocui.View {
|
||||
return self.gui.secondaryView()
|
||||
}
|
||||
|
||||
func (self *GuiDriver) View(viewName string) *gocui.View {
|
||||
view, err := self.gui.g.View(viewName)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
return view
|
||||
}
|
||||
|
@ -46,7 +46,13 @@ func (self *matcher) context(prefix string) *matcher {
|
||||
|
||||
func Contains(target string) *matcher {
|
||||
return &matcher{testFn: func(value string) (bool, string) {
|
||||
return strings.Contains(value, target), fmt.Sprintf("Expected '%s' to contain '%s'", value, target)
|
||||
return strings.Contains(value, target), fmt.Sprintf("Expected '%s' to be found in '%s'", target, value)
|
||||
}}
|
||||
}
|
||||
|
||||
func NotContains(target string) *matcher {
|
||||
return &matcher{testFn: func(value string) (bool, string) {
|
||||
return !strings.Contains(value, target), fmt.Sprintf("Expected '%s' to NOT be found in '%s'", target, value)
|
||||
}}
|
||||
}
|
||||
|
||||
@ -164,6 +170,22 @@ func (self *Assert) MatchCurrentViewTitle(matcher *matcher) {
|
||||
)
|
||||
}
|
||||
|
||||
func (self *Assert) MatchViewContent(viewName string, matcher *matcher) {
|
||||
self.matchString(matcher, fmt.Sprintf("Unexpected content in view '%s'.", viewName),
|
||||
func() string {
|
||||
return self.gui.View(viewName).Buffer()
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
func (self *Assert) MatchCurrentViewContent(matcher *matcher) {
|
||||
self.matchString(matcher, "Unexpected content in current view.",
|
||||
func() string {
|
||||
return self.gui.CurrentContext().GetView().Buffer()
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
func (self *Assert) MatchMainViewContent(matcher *matcher) {
|
||||
self.matchString(matcher, "Unexpected main view content.",
|
||||
func() string {
|
||||
|
86
pkg/integration/tests/bisect/basic.go
Normal file
86
pkg/integration/tests/bisect/basic.go
Normal file
@ -0,0 +1,86 @@
|
||||
package bisect
|
||||
|
||||
import (
|
||||
"github.com/jesseduffield/lazygit/pkg/config"
|
||||
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
||||
)
|
||||
|
||||
var Basic = NewIntegrationTest(NewIntegrationTestArgs{
|
||||
Description: "Start a git bisect to find a bad commit",
|
||||
ExtraCmdArgs: "",
|
||||
Skip: false,
|
||||
SetupRepo: func(shell *Shell) {
|
||||
shell.
|
||||
CreateNCommits(10)
|
||||
},
|
||||
SetupConfig: func(cfg *config.AppConfig) {},
|
||||
Run: func(
|
||||
shell *Shell,
|
||||
input *Input,
|
||||
assert *Assert,
|
||||
keys config.KeybindingConfig,
|
||||
) {
|
||||
viewBisectOptions := func() {
|
||||
input.PressKeys(keys.Commits.ViewBisectOptions)
|
||||
assert.InMenu()
|
||||
}
|
||||
markCommitAsBad := func() {
|
||||
viewBisectOptions()
|
||||
assert.MatchSelectedLine(Contains("bad"))
|
||||
|
||||
input.Confirm()
|
||||
}
|
||||
|
||||
markCommitAsGood := func() {
|
||||
viewBisectOptions()
|
||||
assert.MatchSelectedLine(Contains("bad"))
|
||||
input.NextItem()
|
||||
assert.MatchSelectedLine(Contains("good"))
|
||||
|
||||
input.Confirm()
|
||||
}
|
||||
|
||||
assert.AtLeastOneCommit()
|
||||
|
||||
input.SwitchToCommitsWindow()
|
||||
|
||||
assert.MatchSelectedLine(Contains("commit 10"))
|
||||
|
||||
input.NavigateToListItemContainingText("commit 09")
|
||||
|
||||
markCommitAsBad()
|
||||
|
||||
assert.MatchViewContent("information", Contains("bisecting"))
|
||||
|
||||
assert.CurrentViewName("commits")
|
||||
assert.MatchSelectedLine(Contains("<-- bad"))
|
||||
|
||||
input.NavigateToListItemContainingText("commit 02")
|
||||
|
||||
markCommitAsGood()
|
||||
|
||||
// lazygit will land us in the comit between our good and bad commits.
|
||||
assert.CurrentViewName("commits")
|
||||
assert.MatchSelectedLine(Contains("commit 05"))
|
||||
assert.MatchSelectedLine(Contains("<-- current"))
|
||||
|
||||
markCommitAsBad()
|
||||
|
||||
assert.CurrentViewName("commits")
|
||||
assert.MatchSelectedLine(Contains("commit 04"))
|
||||
assert.MatchSelectedLine(Contains("<-- current"))
|
||||
|
||||
markCommitAsGood()
|
||||
|
||||
assert.InAlert()
|
||||
assert.MatchCurrentViewContent(Contains("Bisect complete!"))
|
||||
// commit 5 is the culprit because we marked 4 as good and 5 as bad.
|
||||
assert.MatchCurrentViewContent(Contains("commit 05"))
|
||||
assert.MatchCurrentViewContent(Contains("Do you want to reset"))
|
||||
input.Confirm()
|
||||
|
||||
assert.CurrentViewName("commits")
|
||||
assert.MatchCurrentViewContent(Contains("commit 04"))
|
||||
assert.MatchViewContent("information", NotContains("bisecting"))
|
||||
},
|
||||
})
|
@ -9,6 +9,7 @@ import (
|
||||
"github.com/jesseduffield/generics/set"
|
||||
"github.com/jesseduffield/generics/slices"
|
||||
"github.com/jesseduffield/lazygit/pkg/integration/components"
|
||||
"github.com/jesseduffield/lazygit/pkg/integration/tests/bisect"
|
||||
"github.com/jesseduffield/lazygit/pkg/integration/tests/branch"
|
||||
"github.com/jesseduffield/lazygit/pkg/integration/tests/commit"
|
||||
"github.com/jesseduffield/lazygit/pkg/integration/tests/custom_commands"
|
||||
@ -27,6 +28,7 @@ var tests = []*components.IntegrationTest{
|
||||
custom_commands.Basic,
|
||||
custom_commands.MultiplePrompts,
|
||||
custom_commands.MenuFromCommand,
|
||||
bisect.Basic,
|
||||
}
|
||||
|
||||
func GetTests() []*components.IntegrationTest {
|
||||
|
@ -34,4 +34,5 @@ type GuiDriver interface {
|
||||
// the other view that sometimes appears to the right of the side panel
|
||||
// e.g. when we're showing both staged and unstaged changes
|
||||
SecondaryView() *gocui.View
|
||||
View(viewName string) *gocui.View
|
||||
}
|
||||
|
@ -1 +0,0 @@
|
||||
e927f0f9467e772eea36f24053c9b534303b106a
|
@ -1,16 +0,0 @@
|
||||
git bisect start
|
||||
# bad: [054bdf969fdcf1f90f1998666f628d40f72fde4f] commit 19
|
||||
git bisect bad 054bdf969fdcf1f90f1998666f628d40f72fde4f
|
||||
# good: [39983ea412adebe6c5a3d4451a7673cf0962c472] commit 9
|
||||
git bisect good 39983ea412adebe6c5a3d4451a7673cf0962c472
|
||||
# good: [e9d2f825e793bc9ac2be698348dbe669bad34cad] commit 14
|
||||
git bisect good e9d2f825e793bc9ac2be698348dbe669bad34cad
|
||||
# skip: [d1f7a85555fe6f10dd44754d35459ae741cb107c] commit 15
|
||||
git bisect skip d1f7a85555fe6f10dd44754d35459ae741cb107c
|
||||
# skip: [bc21c8fabc28201fab6c60503168ecda25ad8626] commit 17
|
||||
git bisect skip bc21c8fabc28201fab6c60503168ecda25ad8626
|
||||
# good: [67fbfb3b74c2381ad1e058949231f2b4f0c8921f] commit 16
|
||||
git bisect good 67fbfb3b74c2381ad1e058949231f2b4f0c8921f
|
||||
# good: [e927f0f9467e772eea36f24053c9b534303b106a] commit 18
|
||||
git bisect good e927f0f9467e772eea36f24053c9b534303b106a
|
||||
# first bad commit: [054bdf969fdcf1f90f1998666f628d40f72fde4f] commit 19
|
@ -1 +0,0 @@
|
||||
master
|
@ -1,2 +0,0 @@
|
||||
bad
|
||||
good
|
@ -1 +0,0 @@
|
||||
commit 20
|
@ -1 +0,0 @@
|
||||
ref: refs/heads/test
|
Binary file not shown.
@ -1,24 +0,0 @@
|
||||
0000000000000000000000000000000000000000 005ca78c7fb8157683fa61158235b250d2316004 CI <CI@example.com> 1643185278 +1100 commit (initial): commit 1
|
||||
005ca78c7fb8157683fa61158235b250d2316004 d9328d9b2c9536fdf01641dd03f4a254d2c86601 CI <CI@example.com> 1643185278 +1100 commit: commit 2
|
||||
d9328d9b2c9536fdf01641dd03f4a254d2c86601 e59bbaffe94b06acaadab4245f30ff3e11c66e5b CI <CI@example.com> 1643185278 +1100 commit: commit 3
|
||||
e59bbaffe94b06acaadab4245f30ff3e11c66e5b 32e7b0308424a817ed5aa5bba94b06b72a1b8ce5 CI <CI@example.com> 1643185278 +1100 commit: commit 4
|
||||
32e7b0308424a817ed5aa5bba94b06b72a1b8ce5 96202a92c1d3bde1b20d6f3dec8e742d09732b4d CI <CI@example.com> 1643185278 +1100 commit: commit 5
|
||||
96202a92c1d3bde1b20d6f3dec8e742d09732b4d 82d721eb037f7045056023d0904989781ce1f526 CI <CI@example.com> 1643185278 +1100 commit: commit 6
|
||||
82d721eb037f7045056023d0904989781ce1f526 b97844c9437a4ab69c8165cadd97bc597b43135b CI <CI@example.com> 1643185278 +1100 commit: commit 7
|
||||
b97844c9437a4ab69c8165cadd97bc597b43135b ebe59a71e9750e75fb983f241687cdf7f0c8ce94 CI <CI@example.com> 1643185278 +1100 commit: commit 8
|
||||
ebe59a71e9750e75fb983f241687cdf7f0c8ce94 39983ea412adebe6c5a3d4451a7673cf0962c472 CI <CI@example.com> 1643185278 +1100 commit: commit 9
|
||||
39983ea412adebe6c5a3d4451a7673cf0962c472 dbb21289ee21b2ff0f3de2bc7d00038b30c4e353 CI <CI@example.com> 1643185278 +1100 commit: commit 10
|
||||
dbb21289ee21b2ff0f3de2bc7d00038b30c4e353 5f9397e5bcee1ac2a3fe6d834d42e36b74ef4ca8 CI <CI@example.com> 1643185278 +1100 commit: commit 11
|
||||
5f9397e5bcee1ac2a3fe6d834d42e36b74ef4ca8 267465454f74736bbe5b493c7f69dd3d024e26e5 CI <CI@example.com> 1643185278 +1100 commit: commit 12
|
||||
267465454f74736bbe5b493c7f69dd3d024e26e5 478a007451b33c7a234c60f0d13b164561b29094 CI <CI@example.com> 1643185278 +1100 commit: commit 13
|
||||
478a007451b33c7a234c60f0d13b164561b29094 e9d2f825e793bc9ac2be698348dbe669bad34cad CI <CI@example.com> 1643185278 +1100 commit: commit 14
|
||||
e9d2f825e793bc9ac2be698348dbe669bad34cad d1f7a85555fe6f10dd44754d35459ae741cb107c CI <CI@example.com> 1643185278 +1100 commit: commit 15
|
||||
d1f7a85555fe6f10dd44754d35459ae741cb107c 67fbfb3b74c2381ad1e058949231f2b4f0c8921f CI <CI@example.com> 1643185278 +1100 commit: commit 16
|
||||
67fbfb3b74c2381ad1e058949231f2b4f0c8921f bc21c8fabc28201fab6c60503168ecda25ad8626 CI <CI@example.com> 1643185278 +1100 commit: commit 17
|
||||
bc21c8fabc28201fab6c60503168ecda25ad8626 e927f0f9467e772eea36f24053c9b534303b106a CI <CI@example.com> 1643185278 +1100 commit: commit 18
|
||||
e927f0f9467e772eea36f24053c9b534303b106a 054bdf969fdcf1f90f1998666f628d40f72fde4f CI <CI@example.com> 1643185278 +1100 commit: commit 19
|
||||
054bdf969fdcf1f90f1998666f628d40f72fde4f 78d41b2abbd2f52c1ebf2f496268a915d59eb27b CI <CI@example.com> 1643185278 +1100 commit: commit 20
|
||||
78d41b2abbd2f52c1ebf2f496268a915d59eb27b e9d2f825e793bc9ac2be698348dbe669bad34cad CI <CI@example.com> 1643185283 +1100 checkout: moving from master to e9d2f825e793bc9ac2be698348dbe669bad34cad
|
||||
e9d2f825e793bc9ac2be698348dbe669bad34cad 67fbfb3b74c2381ad1e058949231f2b4f0c8921f CI <CI@example.com> 1643185286 +1100 checkout: moving from e9d2f825e793bc9ac2be698348dbe669bad34cad to 67fbfb3b74c2381ad1e058949231f2b4f0c8921f
|
||||
67fbfb3b74c2381ad1e058949231f2b4f0c8921f e927f0f9467e772eea36f24053c9b534303b106a CI <CI@example.com> 1643185295 +1100 checkout: moving from 67fbfb3b74c2381ad1e058949231f2b4f0c8921f to e927f0f9467e772eea36f24053c9b534303b106a
|
||||
e927f0f9467e772eea36f24053c9b534303b106a 78d41b2abbd2f52c1ebf2f496268a915d59eb27b CI <CI@example.com> 1643185301 +1100 checkout: moving from e927f0f9467e772eea36f24053c9b534303b106a to test
|
@ -1,20 +0,0 @@
|
||||
0000000000000000000000000000000000000000 005ca78c7fb8157683fa61158235b250d2316004 CI <CI@example.com> 1643185278 +1100 commit (initial): commit 1
|
||||
005ca78c7fb8157683fa61158235b250d2316004 d9328d9b2c9536fdf01641dd03f4a254d2c86601 CI <CI@example.com> 1643185278 +1100 commit: commit 2
|
||||
d9328d9b2c9536fdf01641dd03f4a254d2c86601 e59bbaffe94b06acaadab4245f30ff3e11c66e5b CI <CI@example.com> 1643185278 +1100 commit: commit 3
|
||||
e59bbaffe94b06acaadab4245f30ff3e11c66e5b 32e7b0308424a817ed5aa5bba94b06b72a1b8ce5 CI <CI@example.com> 1643185278 +1100 commit: commit 4
|
||||
32e7b0308424a817ed5aa5bba94b06b72a1b8ce5 96202a92c1d3bde1b20d6f3dec8e742d09732b4d CI <CI@example.com> 1643185278 +1100 commit: commit 5
|
||||
96202a92c1d3bde1b20d6f3dec8e742d09732b4d 82d721eb037f7045056023d0904989781ce1f526 CI <CI@example.com> 1643185278 +1100 commit: commit 6
|
||||
82d721eb037f7045056023d0904989781ce1f526 b97844c9437a4ab69c8165cadd97bc597b43135b CI <CI@example.com> 1643185278 +1100 commit: commit 7
|
||||
b97844c9437a4ab69c8165cadd97bc597b43135b ebe59a71e9750e75fb983f241687cdf7f0c8ce94 CI <CI@example.com> 1643185278 +1100 commit: commit 8
|
||||
ebe59a71e9750e75fb983f241687cdf7f0c8ce94 39983ea412adebe6c5a3d4451a7673cf0962c472 CI <CI@example.com> 1643185278 +1100 commit: commit 9
|
||||
39983ea412adebe6c5a3d4451a7673cf0962c472 dbb21289ee21b2ff0f3de2bc7d00038b30c4e353 CI <CI@example.com> 1643185278 +1100 commit: commit 10
|
||||
dbb21289ee21b2ff0f3de2bc7d00038b30c4e353 5f9397e5bcee1ac2a3fe6d834d42e36b74ef4ca8 CI <CI@example.com> 1643185278 +1100 commit: commit 11
|
||||
5f9397e5bcee1ac2a3fe6d834d42e36b74ef4ca8 267465454f74736bbe5b493c7f69dd3d024e26e5 CI <CI@example.com> 1643185278 +1100 commit: commit 12
|
||||
267465454f74736bbe5b493c7f69dd3d024e26e5 478a007451b33c7a234c60f0d13b164561b29094 CI <CI@example.com> 1643185278 +1100 commit: commit 13
|
||||
478a007451b33c7a234c60f0d13b164561b29094 e9d2f825e793bc9ac2be698348dbe669bad34cad CI <CI@example.com> 1643185278 +1100 commit: commit 14
|
||||
e9d2f825e793bc9ac2be698348dbe669bad34cad d1f7a85555fe6f10dd44754d35459ae741cb107c CI <CI@example.com> 1643185278 +1100 commit: commit 15
|
||||
d1f7a85555fe6f10dd44754d35459ae741cb107c 67fbfb3b74c2381ad1e058949231f2b4f0c8921f CI <CI@example.com> 1643185278 +1100 commit: commit 16
|
||||
67fbfb3b74c2381ad1e058949231f2b4f0c8921f bc21c8fabc28201fab6c60503168ecda25ad8626 CI <CI@example.com> 1643185278 +1100 commit: commit 17
|
||||
bc21c8fabc28201fab6c60503168ecda25ad8626 e927f0f9467e772eea36f24053c9b534303b106a CI <CI@example.com> 1643185278 +1100 commit: commit 18
|
||||
e927f0f9467e772eea36f24053c9b534303b106a 054bdf969fdcf1f90f1998666f628d40f72fde4f CI <CI@example.com> 1643185278 +1100 commit: commit 19
|
||||
054bdf969fdcf1f90f1998666f628d40f72fde4f 78d41b2abbd2f52c1ebf2f496268a915d59eb27b CI <CI@example.com> 1643185278 +1100 commit: commit 20
|
@ -1 +0,0 @@
|
||||
0000000000000000000000000000000000000000 78d41b2abbd2f52c1ebf2f496268a915d59eb27b CI <CI@example.com> 1643185301 +1100 branch: Created from master
|
Binary file not shown.
Binary file not shown.
@ -1,2 +0,0 @@
|
||||
x��K
|
||||
1D]罤?ù‚ˆ0«9FÌtP0Î0Dðøfá¤vÅ{PUÖÖ(ùCßU!‘ø*äÔ%Çh¥’-KÁ…caŒšG–@fË»¾:hâP±&냆ÀªyølÑII7'VPn„>›üî÷u‡i†ó4_õ“ÛöÔSYÛÈ[¡è8D8!šÑŽQ]ÿÄü8a¾©:E
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,2 +0,0 @@
|
||||
x�ÎM
|
||||
1†a×=Eö‚4ý™$ "ÌjŽÑÖëC�oÀíÇÃÇ[ÖÖPâ¡ïªàÕº¢b}àê=OèXsvB.b¬“'fF6[ÚõÕA³FI„*Ò Â¾º€S¹Uª¶ðø&½û}Ýa^à</Wý¤¶=õTÖvœ‚GŽŽŽˆÖš±Ž¨®òŸ1_¥Á9ä
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
x+)JMU06b040031QHֻּIe�כ6פLסQ»תא)�¥¹:‹ױ�<…נפ
|
Binary file not shown.
@ -1,2 +0,0 @@
|
||||
x�ÎA
|
||||
1@Q×=Eö‚4m'm@D˜•Çh›ëC�ï,<€ÛÏ[üºôþ€L‡±µ¡Ð$DÕ&®”ŠfbQuKÕEïcçÍš·ö`§PD™X¥**[EæDDJ.I°�Jjò{Ü—
æœçÛµ}r_ŸíT—~¤à1M.&8"ZköºO�ö'ÿypÖ|à;’
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
x+)JMU06b040031QHклIeь▒■ЦС_ц3и[}ШY╝Кзbf┘k░
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,4 +0,0 @@
|
||||
x�ÎM
|
||||
Â@†a×sŠì™LÒ¤¡«#ó#
|
||||
Ž-e�ï,<€Û—‡�/µ>à$‡¶—
|
||||
K¡DšÑ˜,HœüdÔcÊ!O*ªIÝf{y5`Í{å#QRÄIüÍg¤ˆÂƒ`}€�½Û}Ýa^à</×ò±º=Ë)õÝŽCÐŽˆÞ»^û©Vþä?Èî{ò9
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
054bdf969fdcf1f90f1998666f628d40f72fde4f
|
@ -1 +0,0 @@
|
||||
39983ea412adebe6c5a3d4451a7673cf0962c472
|
@ -1 +0,0 @@
|
||||
67fbfb3b74c2381ad1e058949231f2b4f0c8921f
|
@ -1 +0,0 @@
|
||||
e927f0f9467e772eea36f24053c9b534303b106a
|
@ -1 +0,0 @@
|
||||
e9d2f825e793bc9ac2be698348dbe669bad34cad
|
@ -1 +0,0 @@
|
||||
bc21c8fabc28201fab6c60503168ecda25ad8626
|
@ -1 +0,0 @@
|
||||
d1f7a85555fe6f10dd44754d35459ae741cb107c
|
@ -1 +0,0 @@
|
||||
78d41b2abbd2f52c1ebf2f496268a915d59eb27b
|
@ -1 +0,0 @@
|
||||
78d41b2abbd2f52c1ebf2f496268a915d59eb27b
|
@ -1 +0,0 @@
|
||||
20
|
@ -1 +0,0 @@
|
||||
{"KeyEvents":[{"Timestamp":595,"Mod":0,"Key":259,"Ch":0},{"Timestamp":731,"Mod":0,"Key":259,"Ch":0},{"Timestamp":964,"Mod":0,"Key":258,"Ch":0},{"Timestamp":1235,"Mod":0,"Key":256,"Ch":98},{"Timestamp":1515,"Mod":0,"Key":13,"Ch":13},{"Timestamp":1954,"Mod":0,"Key":258,"Ch":0},{"Timestamp":2131,"Mod":0,"Key":258,"Ch":0},{"Timestamp":2298,"Mod":0,"Key":258,"Ch":0},{"Timestamp":2442,"Mod":0,"Key":258,"Ch":0},{"Timestamp":2618,"Mod":0,"Key":258,"Ch":0},{"Timestamp":2794,"Mod":0,"Key":258,"Ch":0},{"Timestamp":2971,"Mod":0,"Key":258,"Ch":0},{"Timestamp":3122,"Mod":0,"Key":258,"Ch":0},{"Timestamp":3306,"Mod":0,"Key":258,"Ch":0},{"Timestamp":3490,"Mod":0,"Key":258,"Ch":0},{"Timestamp":3690,"Mod":0,"Key":256,"Ch":98},{"Timestamp":4226,"Mod":0,"Key":258,"Ch":0},{"Timestamp":4706,"Mod":0,"Key":13,"Ch":13},{"Timestamp":5721,"Mod":0,"Key":256,"Ch":98},{"Timestamp":7034,"Mod":0,"Key":258,"Ch":0},{"Timestamp":7355,"Mod":0,"Key":13,"Ch":13},{"Timestamp":8499,"Mod":0,"Key":258,"Ch":0},{"Timestamp":9010,"Mod":0,"Key":256,"Ch":98},{"Timestamp":9362,"Mod":0,"Key":258,"Ch":0},{"Timestamp":9587,"Mod":0,"Key":258,"Ch":0},{"Timestamp":9826,"Mod":0,"Key":258,"Ch":0},{"Timestamp":10178,"Mod":0,"Key":257,"Ch":0},{"Timestamp":10666,"Mod":0,"Key":13,"Ch":13},{"Timestamp":11714,"Mod":0,"Key":257,"Ch":0},{"Timestamp":12042,"Mod":0,"Key":257,"Ch":0},{"Timestamp":12466,"Mod":0,"Key":256,"Ch":98},{"Timestamp":12962,"Mod":0,"Key":258,"Ch":0},{"Timestamp":13130,"Mod":0,"Key":258,"Ch":0},{"Timestamp":13554,"Mod":0,"Key":13,"Ch":13},{"Timestamp":14434,"Mod":0,"Key":258,"Ch":0},{"Timestamp":14850,"Mod":0,"Key":256,"Ch":98},{"Timestamp":15523,"Mod":0,"Key":258,"Ch":0},{"Timestamp":16074,"Mod":0,"Key":13,"Ch":13},{"Timestamp":16642,"Mod":0,"Key":256,"Ch":98},{"Timestamp":17754,"Mod":0,"Key":258,"Ch":0},{"Timestamp":18139,"Mod":0,"Key":13,"Ch":13},{"Timestamp":19889,"Mod":0,"Key":27,"Ch":0},{"Timestamp":20603,"Mod":0,"Key":260,"Ch":0},{"Timestamp":21754,"Mod":0,"Key":256,"Ch":110},{"Timestamp":21938,"Mod":0,"Key":256,"Ch":116},{"Timestamp":21978,"Mod":0,"Key":256,"Ch":101},{"Timestamp":22139,"Mod":0,"Key":256,"Ch":115},{"Timestamp":22178,"Mod":0,"Key":256,"Ch":116},{"Timestamp":22386,"Mod":0,"Key":13,"Ch":13},{"Timestamp":23090,"Mod":0,"Key":256,"Ch":113}],"ResizeEvents":[{"Timestamp":0,"Width":272,"Height":74}]}
|
@ -1,17 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
cd $1
|
||||
|
||||
git init
|
||||
|
||||
git config user.email "CI@example.com"
|
||||
git config user.name "CI"
|
||||
|
||||
for i in {1..20}
|
||||
do
|
||||
echo "$i" > file
|
||||
git add .
|
||||
git commit -m "commit $i"
|
||||
done
|
@ -1,5 +0,0 @@
|
||||
{
|
||||
"description": "Basic git bisect usage",
|
||||
"speed": 5,
|
||||
"skip": true
|
||||
}
|
@ -0,0 +1 @@
|
||||
commit 10
|
@ -0,0 +1 @@
|
||||
ref: refs/heads/master
|
@ -8,3 +8,5 @@
|
||||
[user]
|
||||
email = CI@example.com
|
||||
name = CI
|
||||
[commit]
|
||||
gpgSign = false
|
BIN
test/integration_new/bisect/basic/expected/repo/.git_keep/index
Normal file
BIN
test/integration_new/bisect/basic/expected/repo/.git_keep/index
Normal file
Binary file not shown.
@ -0,0 +1,13 @@
|
||||
0000000000000000000000000000000000000000 18197bb6052becf371aca9ab58d8352cebd3bc29 CI <CI@example.com> 1661160645 +1000 commit (initial): commit 01
|
||||
18197bb6052becf371aca9ab58d8352cebd3bc29 0ce746de5bee98147a370a19b4568b448fdedfcc CI <CI@example.com> 1661160645 +1000 commit: commit 02
|
||||
0ce746de5bee98147a370a19b4568b448fdedfcc d4308139592744ccc7fa9ab0931812da9fdfcc1d CI <CI@example.com> 1661160645 +1000 commit: commit 03
|
||||
d4308139592744ccc7fa9ab0931812da9fdfcc1d 0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7 CI <CI@example.com> 1661160645 +1000 commit: commit 04
|
||||
0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7 685d0baa299ec29ff2c7a1ca9268abdd374adef2 CI <CI@example.com> 1661160645 +1000 commit: commit 05
|
||||
685d0baa299ec29ff2c7a1ca9268abdd374adef2 483fcff024ff52df164dddea9ab5032370d14228 CI <CI@example.com> 1661160645 +1000 commit: commit 06
|
||||
483fcff024ff52df164dddea9ab5032370d14228 f3f9cf9d8f02f35f955b868d277913fc45d724db CI <CI@example.com> 1661160645 +1000 commit: commit 07
|
||||
f3f9cf9d8f02f35f955b868d277913fc45d724db a83ada2a0a285982aaa96baeddb70135532ed004 CI <CI@example.com> 1661160645 +1000 commit: commit 08
|
||||
a83ada2a0a285982aaa96baeddb70135532ed004 a89b19d40efb59f1f77b5a6b59ed1a9898545d0d CI <CI@example.com> 1661160645 +1000 commit: commit 09
|
||||
a89b19d40efb59f1f77b5a6b59ed1a9898545d0d 670ea6605e6780007c543b3d034bcf49c898290d CI <CI@example.com> 1661160645 +1000 commit: commit 10
|
||||
670ea6605e6780007c543b3d034bcf49c898290d 685d0baa299ec29ff2c7a1ca9268abdd374adef2 CI <CI@example.com> 1661160646 +1000 checkout: moving from master to 685d0baa299ec29ff2c7a1ca9268abdd374adef2
|
||||
685d0baa299ec29ff2c7a1ca9268abdd374adef2 0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7 CI <CI@example.com> 1661160646 +1000 checkout: moving from 685d0baa299ec29ff2c7a1ca9268abdd374adef2 to 0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7
|
||||
0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7 670ea6605e6780007c543b3d034bcf49c898290d CI <CI@example.com> 1661160647 +1000 checkout: moving from 0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7 to master
|
@ -0,0 +1,10 @@
|
||||
0000000000000000000000000000000000000000 18197bb6052becf371aca9ab58d8352cebd3bc29 CI <CI@example.com> 1661160645 +1000 commit (initial): commit 01
|
||||
18197bb6052becf371aca9ab58d8352cebd3bc29 0ce746de5bee98147a370a19b4568b448fdedfcc CI <CI@example.com> 1661160645 +1000 commit: commit 02
|
||||
0ce746de5bee98147a370a19b4568b448fdedfcc d4308139592744ccc7fa9ab0931812da9fdfcc1d CI <CI@example.com> 1661160645 +1000 commit: commit 03
|
||||
d4308139592744ccc7fa9ab0931812da9fdfcc1d 0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7 CI <CI@example.com> 1661160645 +1000 commit: commit 04
|
||||
0f77bf7bd7dd91550c927549af82d5b7c6f8a0d7 685d0baa299ec29ff2c7a1ca9268abdd374adef2 CI <CI@example.com> 1661160645 +1000 commit: commit 05
|
||||
685d0baa299ec29ff2c7a1ca9268abdd374adef2 483fcff024ff52df164dddea9ab5032370d14228 CI <CI@example.com> 1661160645 +1000 commit: commit 06
|
||||
483fcff024ff52df164dddea9ab5032370d14228 f3f9cf9d8f02f35f955b868d277913fc45d724db CI <CI@example.com> 1661160645 +1000 commit: commit 07
|
||||
f3f9cf9d8f02f35f955b868d277913fc45d724db a83ada2a0a285982aaa96baeddb70135532ed004 CI <CI@example.com> 1661160645 +1000 commit: commit 08
|
||||
a83ada2a0a285982aaa96baeddb70135532ed004 a89b19d40efb59f1f77b5a6b59ed1a9898545d0d CI <CI@example.com> 1661160645 +1000 commit: commit 09
|
||||
a89b19d40efb59f1f77b5a6b59ed1a9898545d0d 670ea6605e6780007c543b3d034bcf49c898290d CI <CI@example.com> 1661160645 +1000 commit: commit 10
|
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user