aboutsummaryrefslogtreecommitdiffstats
path: root/src/tests/macros/Test_CreateGuiApp.csmacro
diff options
context:
space:
mode:
Diffstat (limited to 'src/tests/macros/Test_CreateGuiApp.csmacro')
-rw-r--r--src/tests/macros/Test_CreateGuiApp.csmacro50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/tests/macros/Test_CreateGuiApp.csmacro b/src/tests/macros/Test_CreateGuiApp.csmacro
new file mode 100644
index 00000000..1de72afc
--- /dev/null
+++ b/src/tests/macros/Test_CreateGuiApp.csmacro
@@ -0,0 +1,50 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt VS Tools.
+**
+** $QT_BEGIN_LICENSE:GPL-EXCEPT$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 as published by the Free Software
+** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//# using System.IO
+//# using System.Threading.Tasks
+var solutionName = "QtVsTest";
+var projectName = "MyGuiApp";
+var tempDir = Environment.GetEnvironmentVariable("TEMP");
+var solutionFileName = solutionName + ".sln";
+var solutionDir = Path.Combine(tempDir, solutionName);
+var projectDir = Path.Combine(solutionDir, projectName);
+if (Directory.Exists(solutionDir))
+ Directory.Delete(solutionDir, recursive: true);
+Directory.CreateDirectory(projectDir);
+var solution = Dte.Solution as Solution2;
+solution.Create(tempDir, solutionName);
+solution.SaveAs(Path.Combine(solutionDir, solutionFileName));
+var templateGuiApp = solution.GetProjectTemplate("Qt GUI Application", "VC");
+var taskAddProj = Task.Run(() => solution.AddFromTemplate(templateGuiApp, projectDir, "MyGuiApp"));
+//# ui context VS => "Qt GUI Application Wizard"
+//# ui pattern Invoke => "Next >"
+//# ui pattern Invoke => "Next >"
+//# ui pattern Invoke => "Finish"
+if (!taskAddProj.Wait(15000))
+ throw new Exception("Timeout: Solution2.AddFromTemplate");
+Result = "(ok)";