Skip to content

Commit 957203c

Browse files
author
VirtualBoxImages.com
committed
comments
1 parent 6e37fa3 commit 957203c

File tree

1 file changed

+26
-14
lines changed

1 file changed

+26
-14
lines changed

src/Test/main.cc

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,13 @@ int main(int argc, char *argv[])
137137

138138
webdriver::ViewTransitionManager::SetURLTransitionAction(new webdriver::URLTransitionAction_CloseOldView());
139139

140+
/* Configure widget views */
140141
webdriver::ViewCreator* widgetCreator = new webdriver::QWidgetViewCreator();
142+
143+
/*
144+
Register view classes (here some test classes) that can be created by WebDriver.
145+
Creation can be triggered by client side request like wd.get("qtwidget://WindowTestWidget");
146+
*/
141147
widgetCreator->RegisterViewClass<QWidget>("QWidget");
142148
widgetCreator->RegisterViewClass<WindowTestWidget>("WindowTestWidget");
143149
widgetCreator->RegisterViewClass<ClickTestWidget>("ClickTestWidget");
@@ -165,18 +171,20 @@ int main(int argc, char *argv[])
165171
#endif //WD_ENABLE_PLAYER
166172

167173
#if (WD_TEST_ENABLE_WEB_VIEW == 1)
174+
/* Configure web views */
168175
webdriver::ViewCreator* webCreator = new webdriver::QWebViewCreator();
169176
webCreator->RegisterViewClass<QWebViewExt>("QWebViewExt");
170177
webdriver::ViewFactory::GetInstance()->AddViewCreator(webCreator);
171-
178+
179+
/* Configure WebView support */
172180
webdriver::ViewEnumerator::AddViewEnumeratorImpl(new webdriver::WebViewEnumeratorImpl());
173-
174181
webdriver::ViewCmdExecutorFactory::GetInstance()->AddViewCmdExecutorCreator(new webdriver::QWebViewCmdExecutorCreator());
175182

183+
/* Configure GraphicsWebView support */
176184
webdriver::ViewEnumerator::AddViewEnumeratorImpl(new webdriver::GraphicsWebViewEnumeratorImpl());
177-
178185
webdriver::ViewCmdExecutorFactory::GetInstance()->AddViewCmdExecutorCreator(new webdriver::GraphicsWebViewCmdExecutorCreator());
179-
186+
187+
/* Register som test classes */
180188
widgetCreator->RegisterViewClass<GraphicsWebViewTestWindows>("GraphicsWebViewTestWindows");
181189
widgetCreator->RegisterViewClass<WindowWithEmbeddedViewTestWidget>("WindowWithEmbeddedViewTestWidget");
182190
widgetCreator->RegisterViewClass<WidgetAndWebViewTestWindows>("WidgetAndWebViewTestWindows");
@@ -208,32 +216,32 @@ int main(int argc, char *argv[])
208216
webdriver::ViewCmdExecutorFactory::GetInstance()->AddViewCmdExecutorCreator(new webdriver::QQmlViewCmdExecutorCreator());
209217

210218
#if (WD_TEST_ENABLE_WEB_VIEW == 1)
211-
qmlRegisterType<QDeclarativeWebSettings>();
212-
qmlRegisterType<QDeclarativeWebView>("CiscoQtWebKit", 1, 0, "CiscoWebView");
213-
qmlRegisterType<QDeclarativeWebView>("CiscoQtWebKit", 1, 1, "CiscoWebView");
214-
qmlRegisterRevision<QDeclarativeWebView, 0>("CiscoQtWebKit", 1, 0);
215-
qmlRegisterRevision<QDeclarativeWebView, 1>("CiscoQtWebKit", 1, 1);
216-
//webdriver::ViewEnumerator::AddViewEnumeratorImpl(new webdriver::QmlWebViewEnumeratorImpl());
217-
//webdriver::ViewCmdExecutorFactory::GetInstance()->AddViewCmdExecutorCreator(new webdriver::QmlWebViewCmdExecutorCreator());
219+
qmlRegisterType<QDeclarativeWebSettings>();
220+
qmlRegisterType<QDeclarativeWebView>("CiscoQtWebKit", 1, 0, "CiscoWebView");
221+
qmlRegisterType<QDeclarativeWebView>("CiscoQtWebKit", 1, 1, "CiscoWebView");
222+
qmlRegisterRevision<QDeclarativeWebView, 0>("CiscoQtWebKit", 1, 0);
223+
qmlRegisterRevision<QDeclarativeWebView, 1>("CiscoQtWebKit", 1, 1);
224+
//webdriver::ViewEnumerator::AddViewEnumeratorImpl(new webdriver::QmlWebViewEnumeratorImpl());
225+
//webdriver::ViewCmdExecutorFactory::GetInstance()->AddViewCmdExecutorCreator(new webdriver::QmlWebViewCmdExecutorCreator());
218226
#endif
219227

220228
#endif
221229
#endif //QT_NO_QML
222-
230+
/* Add widget creator last so that it deos not conflict with webview creator (QWebView is a subclass of QWidget)*/
223231
webdriver::ViewFactory::GetInstance()->AddViewCreator(widgetCreator);
224232

225233
webdriver::ViewEnumerator::AddViewEnumeratorImpl(new webdriver::WidgetViewEnumeratorImpl());
226234

227235
webdriver::ViewCmdExecutorFactory::GetInstance()->AddViewCmdExecutorCreator(new webdriver::QWidgetViewCmdExecutorCreator());
228236

229-
CommandLine cmd_line(CommandLine::NO_PROGRAM);
237+
CommandLine cmd_line(CommandLine::NO_PROGRAM);
230238
#if defined(OS_WIN)
231239
cmd_line.ParseFromString(::GetCommandLineW());
232240
#elif defined(OS_POSIX)
233241
cmd_line.InitFromArgv(argc, argv);
234242
#endif
235243

236-
// check if --help CL argument is present
244+
// check if --help CL argument is present
237245
if (cmd_line.HasSwitch("help")) {
238246
PrintHelp();
239247
return 0;
@@ -266,21 +274,25 @@ int main(int argc, char *argv[])
266274
#endif //QT_VERSION
267275
#endif //OS_WIN
268276

277+
/* Parse command line */
269278
webdriver::Server* wd_server = webdriver::Server::GetInstance();
270279
if (0 != wd_server->Configure(cmd_line)) {
271280
std::cout << "Error while configuring WD server, exiting..." << std::endl;
272281
return 1;
273282
}
274283

284+
/* Example how to add a custom command */
275285
webdriver::RouteTable *routeTableWithShutdownCommand = new webdriver::RouteTable(wd_server->GetRouteTable());
276286
const char shutdownCommandRoute[] = "/-cisco-shutdown";
277287
routeTableWithShutdownCommand->Add<webdriver::ShutdownCommand>(shutdownCommandRoute);
278288
routeTableWithShutdownCommand->Add<webdriver::ShutdownCommand>(webdriver::CommandRoutes::kShutdown);
279289
wd_server->SetRouteTable(routeTableWithShutdownCommand);
280290

291+
/* Optional VNC an user input support */
281292
InitVNCClient();
282293
InitUInputClient();
283294

295+
/* Start webdriver */
284296
int startError = wd_server->Start();
285297
if (startError){
286298
std::cout << "Error while starting server, errorCode " << startError << std::endl;

0 commit comments

Comments
 (0)