public FormButton(Control parentCntrl)
        {
            this._item = new Button();
            ((Button)this._item).Click += BtnClick;

            this._item.MinimumSize = new Size(100, 21);
            this._item.AutoSize    = true;

            this._parentControl = parentCntrl;
            this._panel         = new Panel();

            this._name       = "";
            this._visible    = true;
            this._enabled    = true;
            this._title      = "";
            this._parent     = null;
            this._methodName = "";
            this._thisScript = null;

            this._panel.Dock     = DockStyle.Top;
            this._panel.AutoSize = true;
            this._panel.Controls.Add(this._item);
            this._parentControl.Controls.Add(_panel);
            this._panel.BringToFront();
        }
Exemple #2
0
        public FormTree(Control parentCntrl)
        {
            this._name          = "";
            this._visible       = true;
            this._enabled       = true;
            this._title         = "";
            this._parent        = null;
            this._parentControl = parentCntrl;

            this._methodName = "";
            this._thisScript = null;

            this._methodNameDblClick = "";
            this._thisScriptDblClick = null;

            this._methodOnChoice = "";
            this._scriptOnChoice = null;

            _dataTable = new DataTableProvider();
            _item      = new TreeViewColumns();

            _nodesMap = new Dictionary <TreeNode, ValueTreeRow>();

            //# Создаем контейнер для элемента формы
            _panelMainContainer    = new Panel();
            _panelTitleContainer   = new Panel();
            _panelControlContainer = new Panel();

            _panelMainContainer.Controls.Add(_panelControlContainer);
            _panelMainContainer.Controls.Add(_panelTitleContainer);

            _panelMainContainer.Dock         = DockStyle.Top;
            _panelMainContainer.MinimumSize  = new Size(150, 22);
            _panelMainContainer.AutoSize     = true;
            _panelMainContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;

            _panelTitleContainer.Dock         = DockStyle.Left;
            _panelTitleContainer.MinimumSize  = new Size(50, 21);
            _panelTitleContainer.AutoSize     = true;
            _panelTitleContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;
            _label = new Label();
            _panelTitleContainer.Controls.Add(_label);
            _label.AutoSize = true;
            _label.Dock     = DockStyle.Fill;


            //# Установка параметров панели для поля с данными
            _panelControlContainer.Dock         = DockStyle.Fill;
            _panelControlContainer.MinimumSize  = new Size(100, 21);
            _panelControlContainer.AutoSize     = true;
            _panelControlContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;

            this._parentControl.Controls.Add(_panelMainContainer);
            _panelMainContainer.BringToFront();

            this.createFormFieldByType();
        }
        public static Element Locate(this IElementsContainer arg, AttributeConstraint findBy)
        {
            Element result = arg.Element(findBy);

            if (result.Exists)
            {
                return(result);
            }

            throw new WatiNException(string.Format("Cannot locate element that matches contraint: {0}", findBy));
        }
        public static Element Locate(this IElementsContainer container, string name, bool failFast)
        {
            Element[] results = container.LocateAll(name);

            if (failFast && results.Length == 0)
            {
                Assert.Fail(string.Format("\r\nCould not locate '{0}'.\r\n{1}",
                                          name, WebTest.CurrentTest().ErrorContext()));
            }

            return(results.FirstOrDefault());
        }
        ///
        /// Heirarchy of searches:
        /// Form Id
        /// Form Class
        /// Link Id
        /// Link "rel"
        /// Link Class
        public static Element[] LocateAll(this IElementsContainer container, string name)
        {
            var result = new List <Element>();

            //element id
            ElementCollection elems = container.Elements.Filter(Find.ById(name));

            if (!elems.IsEmpty())
            {
                foreach (Element e in elems.GetElements <Element>())
                {
                    result.Add(e);
                }
            }

            //element class
            elems = container.Elements.Filter(FindByClassName(name));
            if (!elems.IsEmpty())
            {
                foreach (Element e in elems.GetElements <Element>())
                {
                    result.Add(e);
                }
            }

            //link id
            LinkCollection links = container.Links.Filter(Find.ById(name));

            if (!links.IsEmpty())
            {
                foreach (Element e in links.GetElements <Element>())
                {
                    result.Add(e);
                }
            }

            //link class
            links = container.Links.Filter(FindByClassName(name));
            if (!links.IsEmpty())
            {
                foreach (Element e in links.GetElements <Element>())
                {
                    result.Add(e);
                }
            }


            return(result.ToArray());
        }
        public static Element LocateLink(this IElementsContainer container, string transition)
        {
            //form id
            FormCollection forms = container.Forms.Filter(Find.ById(transition));

            if (!forms.IsEmpty())
            {
                return(forms[0]);
            }

            //form class
            forms = container.Forms.Filter(FindByClassName(transition));
            if (!forms.IsEmpty())
            {
                return(forms[0]);
            }

            //link id
            LinkCollection links = container.Links.Filter(Find.ById(transition));

            if (!links.IsEmpty())
            {
                return(links[0]);
            }

            //link "rel"
            links = container.Links.Filter(FindByRel(transition));
            if (!links.IsEmpty())
            {
                return(links[0]);
            }

            //link class
            links = container.Links.Filter(FindByClassName(transition));
            if (!links.IsEmpty())
            {
                return(links[0]);
            }

            return(null);
        }
        public static void Follow(this IElementsContainer arg, string transition, IDictionary <string, object> withParams,
                                  Until until, int countDown)
        {
            Assert.IsTrue(countDown > 0, "Didn't match transition:" + transition + " looking for:" + until.s);

            Element elem;

            if (transition == null)
            {
                elem = (Element)arg;
            }
            else
            {
                elem = arg.LocateLink(transition);
            }

            if (elem == null)
            {
                Assert.Fail(string.Format("Didn't find element for transition: {0}", transition));
            }

            if (withParams != null)
            {
                using (ExecutionSteps.Log.BeginSection("Apply Parameters:"))
                {
                    ApplyParams(elem, withParams);
                }
            }

            DomContainer domContainer = DomContainer(arg);

            Transition(elem);

            if (until == null || domContainer.Locate(until.s) != null)
            {
                return;
            }

            domContainer.Follow(transition, withParams, until, countDown - 1);
        }
 public GenericDeletedAction(IElementsContainer <T> container, T deletedItem)
 {
     _container   = container;
     _deletedItem = deletedItem;
     Name         = $"Element deleted to {_container.GetType()}";
 }
Exemple #9
0
 public GenericAddedAction(IElementsContainer <T> container, T addedItem)
 {
     _container = container;
     _addedItem = addedItem;
     Name       = $"Element added to {_container.GetType()}";
 }
 public static DomContainer DomContainer(IElementsContainer forContainer)
 {
     return(((Element)forContainer).DomContainer);
 }
Exemple #11
0
        protected View()
        {
            _container = Browser;

            FindElement(BaseBy);
        }
 public static void Follow(this IElementsContainer arg, string transition, Until until)
 {
     arg.Follow(transition, null, until);
 }
 public static Element Locate(this IElementsContainer container, string name)
 {
     return(Locate(container, name, true));
 }
Exemple #14
0
        protected View(Element parentElement)
        {
            _container = parentElement;

            FindElement(BaseBy);
        }
 public void setParent(IValue parent)
 {
     _parent = (IElementsContainer)parent;
 }
 public static void Follow(this IElementsContainer arg, string transition, IDictionary <string, object> withParams,
                           Until until)
 {
     arg.Follow(transition, withParams, until, 4);
 }
        public FormField(Control parentCntrl)
        {
            FieldType = new FormFieldType();

            this._name    = "";
            this._visible = true;
            this._enabled = true;
            this._title   = "";
            //this._toolTip = "";
            this._parent        = null;
            this._readOnly      = false;
            this._parentControl = parentCntrl;
            this._choiceList    = null;

            this._item = new TextBox();

            this._methodName = "";
            this._thisScript = null;

            this._methodNameDblClick = "";
            this._thisScriptDblClick = null;

            this._methodOnChoice = "";
            this._scriptOnChoice = null;

            this._methodOnKeyDown = "";
            this._scriptOnKeyDown = null;


            //# По умолчанию поле ввода (обычный TextBox)
            this._formFieldType = 0;

            //# Создаем контейнер для элемента формы
            _panelMainContainer    = new Panel();
            _panelTitleContainer   = new Panel();
            _panelControlContainer = new Panel();

            _panelMainContainer.Controls.Add(_panelControlContainer);
            _panelMainContainer.Controls.Add(_panelTitleContainer);

            _panelMainContainer.Dock         = DockStyle.Top;
            _panelMainContainer.MinimumSize  = new Size(150, 22);
            _panelMainContainer.AutoSize     = true;
            _panelMainContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;

            _panelTitleContainer.Dock         = DockStyle.Left;
            _panelTitleContainer.MinimumSize  = new Size(50, 21);
            _panelTitleContainer.AutoSize     = true;
            _panelTitleContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;
            _label = new Label();
            _panelTitleContainer.Controls.Add(_label);
            _label.AutoSize = true;
            _label.Dock     = DockStyle.Fill;


            //# Установка параметров панели для поля с данными
            _panelControlContainer.Dock         = DockStyle.Fill;
            _panelControlContainer.MinimumSize  = new Size(100, 21);
            _panelControlContainer.AutoSize     = true;
            _panelControlContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;
            //_panelControlContainer.Controls.Add(this._item);

            this._parentControl.Controls.Add(_panelMainContainer);
            _panelMainContainer.BringToFront();

            //this.createFormFieldByType();
        }
        public FormListView(Control parentCntrl)
        {
            this._name          = "";
            this._visible       = true;
            this._enabled       = true;
            this._title         = "";
            this._parent        = null;
            this._parentControl = parentCntrl;

            this._methodName = "";
            this._thisScript = null;

            this._methodNameDblClick = "";
            this._scriptDblClick     = null;

            this._methodOnChoice = "";
            this._scriptOnChoice = null;

            this._methodOnKeyDown = "";
            this._scriptOnKeyDown = null;


            _bindingSource = new BindingSource();
            _dataTable     = new DataTableProvider();
            _item          = new ListView();
            _viewStyle     = new FormListViewView();

            ((ListView)_item).View = (View)1;

            //# Создаем контейнер для элемента формы
            _panelMainContainer    = new Panel();
            _panelTitleContainer   = new Panel();
            _panelControlContainer = new Panel();

            _panelMainContainer.Controls.Add(_panelControlContainer);
            _panelMainContainer.Controls.Add(_panelTitleContainer);

            _panelMainContainer.Dock         = DockStyle.Top;
            _panelMainContainer.MinimumSize  = new Size(150, 22);
            _panelMainContainer.AutoSize     = true;
            _panelMainContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;

            _panelTitleContainer.Dock         = DockStyle.Left;
            _panelTitleContainer.MinimumSize  = new Size(50, 21);
            _panelTitleContainer.AutoSize     = true;
            _panelTitleContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;
            _label = new Label();
            _panelTitleContainer.Controls.Add(_label);
            _label.AutoSize = true;
            _label.Dock     = DockStyle.Fill;


            //# Установка параметров панели для поля с данными
            _panelControlContainer.Dock         = DockStyle.Fill;
            _panelControlContainer.MinimumSize  = new Size(100, 21);
            _panelControlContainer.AutoSize     = true;
            _panelControlContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;

            this._parentControl.Controls.Add(_panelMainContainer);
            _panelMainContainer.BringToFront();

            this.createFormFieldByType();

            _columnWithImageIndex = 0;
            _smallImages          = new FormListViewImagePack();
            _largeImages          = new FormListViewImagePack();

            ((ListView)_item).SmallImageList = _smallImages.list();

            ((ListView)_item).StateImageList = _smallImages.list();

            ((ListView)_item).LargeImageList = _largeImages.list();
        }