コード例 #1
0
ファイル: IEElementFinder.cs プロジェクト: pusp/o2platform
	    private void CheckAndInitPrivateFields(IElementCollection elementCollection, DomContainer domContainer, BaseConstraint constraint)
	    {
	        if (elementCollection == null) throw new ArgumentNullException("elementCollection");
	        if (domContainer == null) throw new ArgumentNullException("domContainer");

            _constraint = GetConstraint(constraint);
	        _elementCollection = elementCollection;
	        _domContainer = domContainer;
	    }
コード例 #2
0
        public IEnumerable<INativeElement> GetElementsWithQuerySelector(string selector, DomContainer domContainer)
        {
            var command = string.Format("window.Sizzle('{0}', {1})", selector, containerReference);

            var ffElements = GetElementArrayEnumerator(command);
            foreach (var ffElement in ffElements)
            {
                yield return ffElement;
            }
        }
コード例 #3
0
ファイル: IEElementFinder.cs プロジェクト: pusp/o2platform
	    public IEElementFinder(ArrayList elementTags, BaseConstraint constraint, IElementCollection elementCollection, DomContainer domContainer)
	    {
            CheckAndInitPrivateFields(elementCollection, domContainer, constraint);

	        if (elementTags != null)
			{
				tagsToFind = elementTags;
			}
			else
			{
				AddElementTag(null, null);
			}
	    }
コード例 #4
0
        public IEnumerable<INativeElement> GetElementsWithQuerySelector(ICssSelector selector, DomContainer domContainer)
        {
            var container = "document";
            if (_element != null)
            {
                var elementTag = new ElementTag(_element.TagName);
                if (elementTag.Equals(new ElementTag("frame")) || elementTag.Equals(new ElementTag("iframe")))
                {
                    var frameHierarchy = _element.GetAttributeValue("data-watinFrameHierarchy");
                    container = frameHierarchy + ".document";
                }
                else
                {
                    var document = _element.AsHtmlElement.document;
                    var result = new Expando(document).GetValue<string>("___WATINFRAMEHIERARCHY");

                    container = "";
                    if (result != null)
                        container = result;

                    if (!string.IsNullOrEmpty(container))
                        container += ".";

                    container += _element.GetJavaScriptElementReference();
                }
            }
            else
            {
                //container = CreateArray();
            }

            domContainer.RunScript(new ScriptLoader().GetSizzleInstallScript());

            var code = string.Format("document.___WATINRESULT = Sizzle('{0}', {1});", selector.Selector(true), container);
            domContainer.RunScript(code);

            return new JScriptElementArrayEnumerator((IEDocument) domContainer.NativeDocument, "___WATINRESULT");
        }
コード例 #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ElementCollection"/> class.
 /// Mainly used by WatiN internally.
 /// </summary>
 /// <param name="domContainer">The DOM container.</param>
 /// <param name="finder">The finder.</param>
 public ElementCollection(DomContainer domContainer, ElementFinder finder) : base(domContainer, finder)
 {
 }
コード例 #6
0
 public TestElementSameTagButInherited(DomContainer domContainer, INativeElement element)
     : base(domContainer, element)
 {
 }
コード例 #7
0
 public override bool Matches(DomContainer root, DomElement element)
 {
     return(root == element);
 }
コード例 #8
0
ファイル: ElementOfTypeTests.cs プロジェクト: dev4s/WatiN
 public MyButtonWithNoElementTag(DomContainer domContainer, INativeElement element) : base(domContainer, element)
 {
 }
コード例 #9
0
 public override bool Matches(DomContainer root, DomElement element)
 {
     return(element.HasAttribute(name) &&
            element.Attribute(name).StartsWith(value, StringComparison.OrdinalIgnoreCase));
 }
コード例 #10
0
 public MockNativeElementFinder(IMock <INativeElementCollection> mockElementCollection, DomContainer domContainer, IList <ElementTag> elementTags, Constraint constraint)
     : base(() => mockElementCollection.Object, domContainer, elementTags, constraint)
 {
     MockElementCollection = mockElementCollection;
 }
コード例 #11
0
 public CaptureWebPageMock(DomContainer domContainer)
     : base(domContainer)
 {
     CallBaseCaptureWebPageToFile = true;
 }
コード例 #12
0
 public Section(DomContainer domContainer, INativeElement nativeElement)
     : base(domContainer, nativeElement)
 {
 }
コード例 #13
0
 public CaptureWebPage(DomContainer domContainer)
 {
     _domContainer = domContainer;
 }
コード例 #14
0
 public override bool Matches(DomContainer root, DomElement element)
 {
     return(element.OwnText.IndexOf(searchText, StringComparison.OrdinalIgnoreCase) >= 0);
 }
コード例 #15
0
 public Section(DomContainer domContainer, WatiN.Core.ElementFinder finder)
     : base(domContainer, finder)
 {
 }
コード例 #16
0
 public override bool Matches(DomContainer root, DomElement element)
 {
     return(element.ElementPosition > index);
 }
コード例 #17
0
        public IEnumerable <INativeElement> GetElementsWithQuerySelector(ICssSelector selector, DomContainer domContainer)
        {
            var container = "document";

            if (_element != null)
            {
                var elementTag = new ElementTag(_element.TagName);
                if (elementTag.Equals(new ElementTag("frame")) || elementTag.Equals(new ElementTag("iframe")))
                {
                    var frameHierarchy = _element.GetAttributeValue("data-watinFrameHierarchy");
                    container = frameHierarchy + ".document";
                }
                else
                {
                    var document = _element.AsHtmlElement.document;
                    var result   = new Expando(document).GetValue <string>("___WATINFRAMEHIERARCHY");

                    container = "";
                    if (result != null)
                    {
                        container = result;
                    }

                    if (!string.IsNullOrEmpty(container))
                    {
                        container += ".";
                    }

                    container += _element.GetJavaScriptElementReference();
                }
            }
            else
            {
                //container = CreateArray();
            }

            domContainer.RunScript(new ScriptLoader().GetSizzleInstallScript());

            var code = string.Format("document.___WATINRESULT = Sizzle('{0}', {1});", selector.Selector(true), container);

            domContainer.RunScript(code);

            return(new JScriptElementArrayEnumerator((IEDocument)domContainer.NativeDocument, "___WATINRESULT"));
        }
コード例 #18
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TableCellCollection"/> class.
 /// Mainly used by WatiN internally.
 /// </summary>
 /// <param name="domContainer">The DOM container.</param>
 /// <param name="finder">The finder.</param>
 public TableCellCollection(DomContainer domContainer, ElementFinder finder) : base(domContainer, finder)
 {
 }
コード例 #19
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Div"/> class.
 /// Mainly used by WatiN internally.
 /// </summary>
 /// <param name="domContainer">The DOM container.</param>
 /// <param name="htmlH1Element">The HTML h1 element.</param>
 public HeaderLevel1(DomContainer domContainer, INativeElement htmlH1Element) : base(domContainer, htmlH1Element)
 {
 }
コード例 #20
0
 public CssSelectorConstraint(IScriptLoader scriptLoader, DomContainer domContainer)
     : this(scriptLoader, domContainer, "findByCssMarker" + ++_cssMarkerIndex)
 {
 }
コード例 #21
0
ファイル: IEElement.cs プロジェクト: pusp/o2platform
	    public IAttributeBag GetAttributeBag(DomContainer domContainer)
	    {
	        if (_attributeBag == null)
	        {
	            _attributeBag = new ElementAttributeBag(domContainer);
	        }
	        _attributeBag.IHTMLElement = htmlElement;
	        return _attributeBag;
	    }
コード例 #22
0
 public CssSelectorConstraint(IScriptLoader scriptLoader, DomContainer domContainer, string markerClass)
     : base(markerClass)
 {
     _scriptLoader = scriptLoader;
     _domContainer = domContainer;
 }
コード例 #23
0
        public IEnumerable<INativeElement> GetElementsWithQuerySelector(string selector, DomContainer domContainer)
        {
            var container = "document";
            if (_element != null)
                container = _element.GetJavaScriptElementReference();

            var code = string.Format("document.___WATINRESULT = Sizzle('{0}', {1});", selector, container);
            domContainer.RunScript(code);

            return new JScriptElementArrayEnumerator((IEDocument) domContainer.NativeDocument, "___WATINRESULT");
        }
コード例 #24
0
 public TestableCssSelectorConstraint(IScriptLoader scriptLoader, DomContainer domContainer, string markerClass) : base(scriptLoader, domContainer, markerClass)
 {
 }
コード例 #25
0
        public IEnumerable<INativeElement> GetElementsWithQuerySelector(ICssSelector selector, DomContainer domContainer)
        {
            domContainer.RunScript(new ScriptLoader().GetSizzleInstallScript());

            var command = string.Format("window.Sizzle('{0}', {1})", selector.Selector(true), containerReference);

            var ffElements = GetElementArrayEnumerator(command);
            foreach (var ffElement in ffElements)
            {
                yield return ffElement;
            }
        }
コード例 #26
0
 public TestableCssSelectorConstraint(IScriptLoader scriptLoader, DomContainer domContainer) 
     : base(scriptLoader, domContainer)
 {
 }
コード例 #27
0
ファイル: DocumentTests.cs プロジェクト: minskowl/MY
 public TestDocument(DomContainer container, INativeDocument document)
     : base(container)
 {
     this.document = document;
 }
コード例 #28
0
 public TestElementSameTagButInherited(DomContainer domContainer, INativeElement element)
     : base(domContainer, element)
 {
 }
コード例 #29
0
 public CaptureWebPageMock(DomContainer domContainer) : base(domContainer)
 {
     CallBaseCaptureWebPageToFile = true;
 }
コード例 #30
0
 public TestElementSameTagButInherited(DomContainer domContainer, ElementFinder finder)
     : base(domContainer, finder)
 {
 }
コード例 #31
0
 public TestElementSameTagButInherited(DomContainer domContainer, ElementFinder finder)
     : base(domContainer, finder)
 {
 }
コード例 #32
0
ファイル: IEBrowser.cs プロジェクト: pusp/o2platform
	    public IEBrowser(DomContainer domContainer)
        {
            _domContainer = domContainer;
        }
コード例 #33
0
 public override bool Matches(DomContainer root, DomElement element)
 {
     return(!evaluator.Matches(root, element));
 }
コード例 #34
0
 public TestableCssSelectorConstraint(IScriptLoader scriptLoader, DomContainer domContainer, string markerClass)
     : base(scriptLoader, domContainer, markerClass)
 {
 }
コード例 #35
0
 public TextFieldExtended(DomContainer domContainer, INativeElement element)
     : base(domContainer, element)
 {
 }
コード例 #36
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Div"/> class.
 /// Mainly used by WatiN internally.
 /// </summary>
 /// <param name="domContainer">The DOM container.</param>
 /// <param name="finder">The HTML h1 element.</param>
 public HeaderLevel1(DomContainer domContainer, ElementFinder finder) : base(domContainer, finder)
 {
 }
コード例 #37
0
        public IEnumerable<INativeElement> GetElementsWithQuerySelector(string selector, DomContainer domContainer)
        {
            domContainer.RunScript(new ScriptLoader().GetSizzleInstallScript());
            var container = "document";
            if (_element != null)
            {
                container = _element.GetJavaScriptElementReference();
                if (new ElementTag(_element.TagName).Equals(new ElementTag("frame")))
                    container = container + ".contentDocument";
            }

            var code = string.Format("document.___WATINRESULT = Sizzle('{0}', {1});", selector, container);
            domContainer.RunScript(code);

            return new JScriptElementArrayEnumerator((IEDocument) domContainer.NativeDocument, "___WATINRESULT");
        }
コード例 #38
0
 public TextFieldExtended(DomContainer domContainer, ElementFinder finder)
     : base(domContainer, finder)
 {
 }
コード例 #39
0
 public TestableCssSelectorConstraint(IScriptLoader scriptLoader, DomContainer domContainer)
     : base(scriptLoader, domContainer)
 {
 }
コード例 #40
0
ファイル: IEElementFinder.cs プロジェクト: pusp/o2platform
		public IEElementFinder(string tagName, string inputType, BaseConstraint constraint, IElementCollection elementCollection, DomContainer domContainer)
		{
            CheckAndInitPrivateFields(elementCollection, domContainer, constraint);

			AddElementTag(tagName, inputType);
		}
コード例 #41
0
ファイル: IEElementFinder.cs プロジェクト: pusp/o2platform
	    public IEElementFinder(ArrayList elementTags, IElementCollection elementCollection, DomContainer domContainer) : this(elementTags, null, elementCollection, domContainer) {}
コード例 #42
0
ファイル: ElementOfTypeTests.cs プロジェクト: dev4s/WatiN
 public MyButtonWithNoElementTag(DomContainer domContainer, ElementFinder finder) : base(domContainer, finder)
 {
 }
コード例 #43
0
ファイル: IEElementFinder.cs プロジェクト: pusp/o2platform
		public IEElementFinder(string tagName, string inputType, IElementCollection elementCollection, DomContainer domContainer) : this(tagName, inputType, null, elementCollection, domContainer) {}
コード例 #44
0
 public virtual void Preprocess(DomContainer document, IServiceProvider serviceProvider)
 {
 }
コード例 #45
0
 void IHxlCompilerProcessor.Preprocess(DomContainer document, IServiceProvider serviceProvider)
 {
 }
コード例 #46
0
        public IEnumerable <INativeElement> GetElementsWithQuerySelector(ICssSelector selector, DomContainer domContainer)
        {
            domContainer.RunScript(new ScriptLoader().GetSizzleInstallScript());

            var command = string.Format("window.Sizzle('{0}', {1})", selector.Selector(true), containerReference);

            var ffElements = GetElementArrayEnumerator(command);

            foreach (var ffElement in ffElements)
            {
                yield return(ffElement);
            }
        }
コード例 #47
0
 public TestDocument(DomContainer container, INativeDocument document)
     : base(container)
 {
     this.document = document;
 }
コード例 #48
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RadioButtonCollection"/> class.
 /// Mainly used by WatiN internally.
 /// </summary>
 /// <param name="domContainer">The DOM container.</param>
 /// <param name="finder">The finder.</param>
 public RadioButtonCollection(DomContainer domContainer, ElementFinder finder) : base(domContainer, finder)
 {
 }
コード例 #49
0
 public CaptureWebPage(DomContainer domContainer)
 {
     _domContainer = domContainer;
 }
コード例 #50
0
 public IEBrowser(DomContainer domContainer)
 {
     _domContainer = domContainer;
 }
コード例 #51
0
 public MockNativeElementFinder(IMock<INativeElementCollection> mockElementCollection, DomContainer domContainer, IList<ElementTag> elementTags, Constraint constraint)
     : base(() => mockElementCollection.Object, domContainer, elementTags, constraint)
 {
     MockElementCollection = mockElementCollection;
 }
コード例 #52
0
ファイル: ElementOfTypeTests.cs プロジェクト: dev4s/WatiN
 public MyButton(DomContainer domContainer, ElementFinder finder) : base(domContainer, finder)
 {
 }