public void TestTryGetElementWhenElementGetIsSuccessful() { var resultPropertyData = new Mock<IPropertyData>().Object; var page = new Mock<IPage>(MockBehavior.Strict); page.Setup(p => p.TryGetElement("MyElement", out resultPropertyData)).Returns(true); var locatorAction = new Mock<ILocatorAction>(MockBehavior.Strict); locatorAction.Setup(p => p.OnLocate("MyElement")); locatorAction.Setup(p => p.OnLocateComplete("MyElement", resultPropertyData)); var locator = new ElementLocator(page.Object, new[] { locatorAction.Object }); IPropertyData propertyData; var result = locator.TryGetElement("MyElement", out propertyData); Assert.IsTrue(result); Assert.IsNotNull(propertyData); Assert.AreSame(resultPropertyData, propertyData); page.VerifyAll(); locatorAction.VerifyAll(); }
public void TestTryGetElementWhenElementGetFails() { IPropertyData resultPropertyData; var page = new Mock<IPage>(MockBehavior.Strict); page.Setup(p => p.TryGetElement("MyElement", out resultPropertyData)).Returns(false); var locatorAction = new Mock<ILocatorAction>(MockBehavior.Strict); locatorAction.Setup(p => p.OnLocate("MyElement")); locatorAction.Setup(p => p.OnLocateComplete("MyElement", null)); var locator = new ElementLocator(page.Object, new[] { locatorAction.Object }); IPropertyData propertyData; var result = locator.TryGetElement("MyElement", out propertyData); Assert.IsFalse(result); Assert.IsNull(propertyData); page.VerifyAll(); locatorAction.VerifyAll(); }