DiffEditor: Fix git diff parsing for rename + mode change

Sample output:
diff --git a/projects/cosign/build.sh b/projects/argo/build.sh
old mode 100755
new mode 100644
similarity index 88%
rename from projects/cosign/build.sh
rename to projects/argo/build.sh
index 87d865d2..14b8885c
--- a/projects/cosign/build.sh
+++ b/projects/argo/build.sh
@@ -13,7 +13,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
 ################################################################################

+$SRC/cncf-fuzzing/projects/argo/build.sh
+

-compile_go_fuzzer github.com/sigstore/cosign/test FuzzGetPassword fuzz_getPassword gofuzz

Change-Id: Ifa66dfdb80b309d72f524f15c681823ab7e133ba
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
Orgad Shaneh
2022-02-06 08:11:09 +02:00
committed by Orgad Shaneh
parent 9f7c822197
commit be1f89c93c
2 changed files with 41 additions and 7 deletions

View File

@@ -1341,6 +1341,26 @@ void DiffEditor::Internal::DiffEditorPlugin::testReadPatch_data()
QTest::newRow("Mode change") << patch << fileDataList9;
//////////////
patch = R"(diff --git a/old.sh b/new.sh
old mode 100644
new mode 100755
similarity index 100%
rename from old.sh
rename to new.sh
)"
;
fileData1 = FileData();
fileData1.leftFileInfo = DiffFileInfo("old.sh");
fileData1.rightFileInfo = DiffFileInfo("new.sh");
fileData1.fileOperation = FileData::RenameFile;
QList<FileData> fileDataList10;
fileDataList10 << fileData1;
QTest::newRow("Mode change + rename") << patch << fileDataList10;
//////////////
// Subversion New