forked from SeleniumHQ/selenium
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTargetLocatorTest.cs
132 lines (113 loc) · 4.31 KB
/
TargetLocatorTest.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
using System;
using System.Collections.Generic;
using System.Text;
using NUnit.Framework;
namespace OpenQA.Selenium
{
[TestFixture]
public class TargetLocatorTest : DriverTestFixture
{
[Test]
[ExpectedException(typeof(NoSuchFrameException))]
public void ShouldThrowExceptionAfterSwitchingToNonExistingFrameIndex()
{
driver.Url = framesPage;
driver.SwitchTo().Frame(10);
}
[Test]
[ExpectedException(typeof(NoSuchFrameException))]
public void ShouldThrowExceptionAfterSwitchingToNonExistingFrameName()
{
driver.Url = framesPage;
driver.SwitchTo().Frame("æ©ñµøöíúüþ®éåä²doesnotexist");
}
[Test]
[ExpectedException(typeof(ArgumentNullException))]
public void ShouldThrowExceptionAfterSwitchingToNullFrameName()
{
string frameName = null;
driver.Url = framesPage;
driver.SwitchTo().Frame(frameName);
}
[Test]
public void ShouldSwitchToIframeByNameAndBackToDefaultContent()
{
driver.Url = iframesPage;
driver.SwitchTo().Frame("iframe1");
IWebElement element = driver.FindElement(By.Name("id-name1"));
Assert.IsNotNull(element);
driver.SwitchTo().DefaultContent();
element = driver.FindElement(By.Id("iframe_page_heading"));
Assert.IsNotNull(element);
}
[Test]
public void ShouldSwitchToIframeByIndexAndBackToDefaultContent()
{
driver.Url = iframesPage;
driver.SwitchTo().Frame(0);
IWebElement element = driver.FindElement(By.Name("id-name1"));
Assert.IsNotNull(element);
driver.SwitchTo().DefaultContent();
element = driver.FindElement(By.Id("iframe_page_heading"));
Assert.IsNotNull(element);
}
[Test]
public void ShouldSwitchToFrameByNameAndBackToDefaultContent()
{
driver.Url = framesPage;
driver.SwitchTo().Frame("first");
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "1");
driver.SwitchTo().DefaultContent();
try
{
// DefaultContent should not have the element in it.
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "1");
Assert.Fail("Should not be able to get element in frame from DefaultContent");
}
catch (NoSuchElementException)
{
}
driver.SwitchTo().Frame("second");
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "2");
driver.SwitchTo().DefaultContent();
try
{
// DefaultContent should not have the element in it.
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "1");
Assert.Fail("Should not be able to get element in frame from DefaultContent");
}
catch (NoSuchElementException)
{
}
}
[Test]
public void ShouldSwitchToFrameByIndexAndBackToDefaultContent()
{
driver.Url = framesPage;
driver.SwitchTo().Frame(0);
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "1");
driver.SwitchTo().DefaultContent();
try
{
// DefaultContent should not have the element in it.
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "1");
Assert.Fail("Should not be able to get element in frame from DefaultContent");
}
catch (NoSuchElementException)
{
}
driver.SwitchTo().Frame(1);
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "2");
driver.SwitchTo().DefaultContent();
try
{
// DefaultContent should not have the element in it.
Assert.AreEqual(driver.FindElement(By.Id("pageNumber")).Text, "1");
Assert.Fail("Should not be able to get element in frame from DefaultContent");
}
catch (NoSuchElementException)
{
}
}
}
}