//Test case to cover Mix tutorial function test_tutorial() { newProject(); editContract( "contract Rating {\r" + " function setRating(bytes32 _key, uint256 _value) {\r" + " ratings[_key] = _value;\r" + " }\r" + " mapping (bytes32 => uint256) public ratings;\r" + "}\r" ); editHtml( "\r" + "\r" + "\r" + "\r" + "\r" + "\r" + "

Ratings

\r" + "
\r" + " Store:\r" + " \r" + " \r" + " \r" + "
\r" + "
\r" + " Query:\r" + " \r" + "
\r" + "
\r" + "\r" + "\r" ); mainApplication.projectModel.stateListModel.editState(0); mainApplication.projectModel.stateDialog.model.addTransaction(); var transactionDialog = mainApplication.projectModel.stateDialog.transactionDialog; ts.waitForRendering(transactionDialog, 3000); transactionDialog.selectFunction("setRating"); clickElement(transactionDialog, 200, 310); ts.typeString("Titanic", transactionDialog); clickElement(transactionDialog, 200, 330); ts.typeString("2", transactionDialog); transactionDialog.acceptAndClose(); mainApplication.projectModel.stateDialog.acceptAndClose(); mainApplication.mainContent.startQuickDebugging(); if (!ts.waitForSignal(mainApplication.clientModel, "debugDataReady(QObject*)", 5000)) fail("Error running transaction"); wait(1); clickElement(mainApplication.mainContent.webView.webView, 1, 1); ts.typeString("\t\t\t\t"); ts.typeString("Titanic"); tryCompare(mainApplication.mainContent.rightPane.transactionLog.callModel, "count", 8); //wait for 8 calls mainApplication.mainContent.webView.getContent(); ts.waitForSignal(mainApplication.mainContent.webView, "webContentReady()", 5000); var body = mainApplication.mainContent.webView.webContent; verify(body.indexOf("
2
") != -1, "Web content not updated") }