From a0e3c97bf4b741edca7ae9ddcb92f937a453073d Mon Sep 17 00:00:00 2001
From: Christian Stenger <christian.stenger@digia.com>
Date: Thu, 10 Apr 2014 10:50:30 +0200
Subject: [PATCH] Squish: Handle rpc failure

Change-Id: I90669dac9de394e2d80be1a689b3b8b443296942
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
---
 tests/system/suite_tools/tst_git_clone/test.py | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/tests/system/suite_tools/tst_git_clone/test.py b/tests/system/suite_tools/tst_git_clone/test.py
index d94797639b3..0783165e7b3 100644
--- a/tests/system/suite_tools/tst_git_clone/test.py
+++ b/tests/system/suite_tools/tst_git_clone/test.py
@@ -39,6 +39,9 @@ def verifyCloneLog(targetDir, canceled):
         summary = "Failed."
     else:
         cloneLog = str(waitForObject(":Git Repository Clone.logPlainTextEdit_QPlainTextEdit").plainText)
+        if "fatal: The remote end hung up unexpectedly" in cloneLog:
+            test.warning("Remote end hung up unexpectedly.")
+            return False
         # test for QTCREATORBUG-10112
         test.compare(cloneLog.count("remote: Counting objects:"), 1)
         test.compare(cloneLog.count("remote: Finding sources:"), 1)
@@ -52,6 +55,7 @@ def verifyCloneLog(targetDir, canceled):
     resultLabel = findObject(":Git Repository Clone.Result._QLabel")
     test.verify(waitFor('str(resultLabel.text) == summary', 3000),
                 "Verifying expected result (%s)" % summary)
+    return True
 
 def verifyVersionControlView(targetDir, canceled):
     openVcsLog()
@@ -100,7 +104,9 @@ def main():
             verifyCloneLog(targetDir, True)
             clickButton(":Git Repository Clone.Cancel_QPushButton")
         else:
-            verifyCloneLog(targetDir, False)
+            if not verifyCloneLog(targetDir, False):
+                clickButton(":Git Repository Clone.Cancel_QPushButton")
+                continue
             verifyFiles(targetDir)
             try:
                 clickButton(waitForObject(button))
-- 
GitLab