Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManish Sinha <manish.sinha@xamarin.com>2015-08-11 00:19:24 +0300
committerManish Sinha <manish.sinha@xamarin.com>2015-08-11 00:20:46 +0300
commit0485d106efefcca63338fb2019dcc931e58c3d54 (patch)
treec304d96db341c872e3ad96d6fb249f0e95a5953c /main/src/core/MonoDevelop.Ide
parentcc14e2db2780d7c98a363930705e8b505e96af8f (diff)
[AutoTest] Added Selected () operation to assert if the item is selected
Diffstat (limited to 'main/src/core/MonoDevelop.Ide')
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Operations/SelectedOperation.cs53
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkNotebookResult.cs8
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkTreeModelResult.cs17
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkWidgetResult.cs5
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/NSObjectResult.cs5
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/ObjectResult.cs5
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppQuery.cs6
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppResult.cs1
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj1
9 files changed, 99 insertions, 2 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Operations/SelectedOperation.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Operations/SelectedOperation.cs
new file mode 100644
index 0000000000..51dfa0444b
--- /dev/null
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Operations/SelectedOperation.cs
@@ -0,0 +1,53 @@
+//
+// SelectedOperation.cs
+//
+// Author:
+// Manish Sinha <manish.sinha@xamarin.com>
+//
+// Copyright (c) 2015 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+using System;
+using System.Collections.Generic;
+
+namespace MonoDevelop.Components.AutoTest.Operations
+{
+ public class SelectedOperation : Operation
+ {
+ public override List<AppResult> Execute (List<AppResult> resultSet)
+ {
+ List<AppResult> newResultSet = new List<AppResult> ();
+
+ foreach (var result in resultSet) {
+ AppResult newResult = result.Selected ();
+ if (newResult != null) {
+ newResultSet.Add (newResult);
+ }
+ }
+
+ return newResultSet;
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("Selected ()");
+ }
+ }
+}
+
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkNotebookResult.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkNotebookResult.cs
index a0017d32e4..53ec341408 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkNotebookResult.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkNotebookResult.cs
@@ -59,6 +59,14 @@ namespace MonoDevelop.Components.AutoTest.Results
return null;
}
+ public override AppResult Selected ()
+ {
+ if (base.Selected () != null) {
+ return noteBook.CurrentPage == toBeSelected ? this : null;
+ }
+ return null;
+ }
+
public override bool Select ()
{
if (toBeSelected >= 0) {
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkTreeModelResult.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkTreeModelResult.cs
index 08bc730856..8a5f04b35b 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkTreeModelResult.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkTreeModelResult.cs
@@ -52,12 +52,25 @@ namespace MonoDevelop.Components.AutoTest.Results
Column = column;
resultIter = iter;
}
-
+
public override AppResult Marked (string mark)
{
return null;
}
+ public override AppResult Selected ()
+ {
+ if (!resultIter.HasValue) {
+ return base.Selected ();
+ }
+
+ if (base.Selected () != null && ParentWidget is TreeView) {
+ TreeView treeView = (TreeView)ParentWidget;
+ return treeView.Selection.IterIsSelected (resultIter.Value) ? this : null;
+ }
+ return null;
+ }
+
public override AppResult CheckType (Type desiredType)
{
return null;
@@ -109,7 +122,7 @@ namespace MonoDevelop.Components.AutoTest.Results
return MatchProperty (propertyName, objectToCompare, value);
}
- return null;
+ return MatchProperty (propertyName, ParentWidget, value);
}
public override ObjectProperties Properties ()
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkWidgetResult.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkWidgetResult.cs
index ee0a2ce5d0..9f08c97267 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkWidgetResult.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/GtkWidgetResult.cs
@@ -85,6 +85,11 @@ namespace MonoDevelop.Components.AutoTest.Results
return null;
}
+ public override AppResult Selected ()
+ {
+ return resultWidget.HasFocus ? this : null;
+ }
+
public override AppResult CheckType (Type desiredType)
{
if (resultWidget.GetType () == desiredType || resultWidget.GetType ().IsSubclassOf (desiredType)) {
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/NSObjectResult.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/NSObjectResult.cs
index 8aeb64b6bb..b9fa5d5b05 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/NSObjectResult.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/NSObjectResult.cs
@@ -92,6 +92,11 @@ namespace MonoDevelop.Components.AutoTest.Results
return null;
}
+ public override AppResult Selected ()
+ {
+ return null;
+ }
+
public override AppResult CheckType (Type desiredType)
{
if (ResultObject.GetType () == desiredType || ResultObject.GetType ().IsSubclassOf (desiredType)) {
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/ObjectResult.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/ObjectResult.cs
index 6657d42cf6..683b697037 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/ObjectResult.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest.Results/ObjectResult.cs
@@ -53,6 +53,11 @@ namespace MonoDevelop.Components.AutoTest.Results
return null;
}
+ public override AppResult Selected ()
+ {
+ return null;
+ }
+
public override AppResult CheckType (Type desiredType)
{
return null;
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppQuery.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppQuery.cs
index e0e09bab25..fc08c971db 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppQuery.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppQuery.cs
@@ -293,6 +293,12 @@ namespace MonoDevelop.Components.AutoTest
return this;
}
+ public AppQuery Selected ()
+ {
+ operations.Add (new SelectedOperation ());
+ return this;
+ }
+
public AppQuery Model (string column = null)
{
operations.Add (new ModelOperation (column));
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppResult.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppResult.cs
index 8179bf1c0b..925b3eead2 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppResult.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AutoTest/AppResult.cs
@@ -50,6 +50,7 @@ namespace MonoDevelop.Components.AutoTest
// Operations
public abstract AppResult Marked (string mark);
public abstract AppResult CheckType (Type desiredType);
+ public abstract AppResult Selected ();
public abstract AppResult Text (string text, bool exact);
public abstract AppResult Model (string column);
public abstract AppResult Property (string propertyName, object value);
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
index a80e69fa89..39388cf2c3 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
@@ -3378,6 +3378,7 @@
<Compile Include="MonoDevelop.Components.AutoTest.Results\ObjectResult.cs" />
<Compile Include="MonoDevelop.Components.AutoTest\PropertyMetadata.cs" />
<Compile Include="MonoDevelop.Components.AutoTest\ObjectProperties.cs" />
+ <Compile Include="MonoDevelop.Components.AutoTest.Operations\SelectedOperation.cs" />
</ItemGroup>
<ItemGroup>
<None Include="Makefile.am" />