diff --git a/pkg/gui/gui_test.go b/pkg/gui/gui_test.go index c90da8a64..d9d43c7dc 100644 --- a/pkg/gui/gui_test.go +++ b/pkg/gui/gui_test.go @@ -58,6 +58,14 @@ func tests() []integrationTest { name: "mergeConflicts", fixture: "mergeConflicts", }, + { + name: "searching", + fixture: "newFile", + }, + { + name: "searchingInStagingPanel", + fixture: "newFile2", + }, } } diff --git a/test/fixtures/newFile2.sh b/test/fixtures/newFile2.sh new file mode 100644 index 000000000..7a9129113 --- /dev/null +++ b/test/fixtures/newFile2.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +git init + +git config user.email "CI@example.com" +git config user.name "CI" + +echo "line 1" > myfile1 +git add . +git commit -am "myfile1" + +echo "line 2" >> myfile1 +echo "line 3" >> myfile1 +echo "line 4" >> myfile1 diff --git a/test/fixtures/unstagedFiles.sh b/test/fixtures/unstagedFiles.sh new file mode 100644 index 000000000..83470bba8 --- /dev/null +++ b/test/fixtures/unstagedFiles.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +git init + +git config user.email "CI@example.com" +git config user.name "CI" + +echo test1 > myfile1 +git add . +git commit -am "myfile1" +echo test2 > myfile2 +git add . +git commit -am "myfile2" +echo test3 > myfile3 +git add . +git commit -am "myfile3" +echo test4 > myfile4 +git add . +git commit -am "myfile4" +echo test5 > myfile5 diff --git a/test/integration/searching/recording.json b/test/integration/searching/recording.json new file mode 100644 index 000000000..bf3de9008 --- /dev/null +++ b/test/integration/searching/recording.json @@ -0,0 +1 @@ +[{"Timestamp":29,"Event":{"Type":1,"Mod":0,"Key":0,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":0,"Bytes":null}},{"Timestamp":403,"Event":{"Type":0,"Mod":0,"Key":65514,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":3,"Bytes":"G09D"}},{"Timestamp":516,"Event":{"Type":0,"Mod":0,"Key":65514,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":3,"Bytes":"G09D"}},{"Timestamp":1086,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":47,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"Lw=="}},{"Timestamp":1277,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":109,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"eQ=="}},{"Timestamp":1277,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":121,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"Zg=="}},{"Timestamp":1277,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":102,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"aQ=="}},{"Timestamp":1277,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":105,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"bA=="}},{"Timestamp":1277,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":108,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"ZQ=="}},{"Timestamp":1277,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":101,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"Mg=="}},{"Timestamp":1277,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":50,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"Mg=="}},{"Timestamp":1589,"Event":{"Type":0,"Mod":0,"Key":13,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"DQ=="}},{"Timestamp":2021,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":100,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"ZA=="}},{"Timestamp":2268,"Event":{"Type":0,"Mod":0,"Key":13,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"DQ=="}},{"Timestamp":2860,"Event":{"Type":0,"Mod":0,"Key":65517,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":3,"Bytes":"G09B"}},{"Timestamp":2996,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":103,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"Zw=="}},{"Timestamp":3245,"Event":{"Type":0,"Mod":0,"Key":13,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"DQ=="}},{"Timestamp":3628,"Event":{"Type":0,"Mod":0,"Key":65515,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":3,"Bytes":"G09E"}},{"Timestamp":3732,"Event":{"Type":0,"Mod":0,"Key":65515,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":3,"Bytes":"G09E"}},{"Timestamp":4388,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":47,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"Lw=="}},{"Timestamp":4620,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":52,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"NA=="}},{"Timestamp":4844,"Event":{"Type":0,"Mod":0,"Key":13,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"DQ=="}},{"Timestamp":5165,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":100,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"ZA=="}},{"Timestamp":5380,"Event":{"Type":0,"Mod":0,"Key":13,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"DQ=="}},{"Timestamp":5684,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":97,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"YQ=="}},{"Timestamp":6117,"Event":{"Type":0,"Mod":0,"Key":32,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"IA=="}},{"Timestamp":6668,"Event":{"Type":0,"Mod":0,"Key":32,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"IA=="}},{"Timestamp":6821,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":99,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"Yw=="}},{"Timestamp":7101,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":116,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"dA=="}},{"Timestamp":7213,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":101,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"ZQ=="}},{"Timestamp":7388,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":115,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"cw=="}},{"Timestamp":7421,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":116,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"dA=="}},{"Timestamp":7540,"Event":{"Type":0,"Mod":0,"Key":13,"Ch":0,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"DQ=="}},{"Timestamp":8005,"Event":{"Type":0,"Mod":0,"Key":0,"Ch":113,"Width":0,"Height":0,"Err":null,"MouseX":0,"MouseY":0,"N":1,"Bytes":"cQ=="}}] \ No newline at end of file diff --git a/test/integration/searching/snapshot.txt b/test/integration/searching/snapshot.txt new file mode 100644 index 000000000..98a108787 --- /dev/null +++ b/test/integration/searching/snapshot.txt @@ -0,0 +1,35 @@ +On branch master +nothing to commit, working tree clean +test1 +test3 +test5 +test + + +diff --git a/myfile5 b/myfile5 +new file mode 100644 +index 0000000..4f346f1 +--- /dev/null ++++ b/myfile5 +@@ -0,0 +1 @@ ++test5 +myfile3 + + +diff --git a/myfile3 b/myfile3 +new file mode 100644 +index 0000000..df6b0d2 +--- /dev/null ++++ b/myfile3 +@@ -0,0 +1 @@ ++test3 +myfile1 + + +diff --git a/myfile1 b/myfile1 +new file mode 100644 +index 0000000..a5bce3f +--- /dev/null ++++ b/myfile1 +@@ -0,0 +1 @@ ++test1