Giter Site home page Giter Site logo

jamesmatchett / selenium-move-sliders-library Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 0.0 24 KB

Selenium Driver library for manipulating slider elements

License: MIT License

C# 100.00%
selenium-driver selenium-webdriver manipulating-sliders assert web automation automation-framework slide slider-element pixel

selenium-move-sliders-library's People

Contributors

jamesmatchett avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

selenium-move-sliders-library's Issues

Features to Add?

Add any issues or features to add below and I'll get working on them :)

not working

tried this approach but still the slider pointer is not moving into desired place.
`public int GetPixelsToMove(string column, decimal Amount)
{
//slider filter list
var minValues = BrowserFactory.BrowserDriver.FindElements(By.XPath(".//[@Class='ng5-slider-span ng5-slider-pointer ng5-slider-pointer-min']"));
var maxValues = BrowserFactory.BrowserDriver.FindElements(By.XPath(".//
[@Class='ng5-slider-span ng5-slider-pointer ng5-slider-pointer-max']"));

        //min slider values
        int minHeight = minValues[GetElementIndexForFilterSliderLabels(column, 0)].Size.Height;
        int minWidth = minValues[GetElementIndexForFilterSliderLabels(column, 0)].Size.Width;
        int minLargestVal = Convert.ToInt32(minValues[GetElementIndexForFilterSliderLabels(column, 0)].GetAttribute("aria-valuemax"));
        int minSmallestVal = Convert.ToInt32(minValues[GetElementIndexForFilterSliderLabels(column, 0)].GetAttribute("aria-valuemin"));

        int pixels = 0;
        decimal tempPixels = minValues[GetElementIndexForFilterSliderLabels(column, 0)].Size.Width;
        tempPixels = tempPixels / (minLargestVal - minSmallestVal);
        tempPixels = tempPixels * (Amount - minSmallestVal);
        pixels = Convert.ToInt32(tempPixels);

        return pixels;
    }

    public void MoveSlider(string column, int minValue, int maxValue)
    {
        OpenQA.Selenium.Interactions.Actions action = new OpenQA.Selenium.Interactions.Actions(BrowserFactory.BrowserDriver);

        //slider filter list
        var minValues = BrowserFactory.BrowserDriver.FindElements(By.XPath(".//*[@class='ng5-slider-span ng5-slider-pointer ng5-slider-pointer-min']"));
        var maxValues = BrowserFactory.BrowserDriver.FindElements(By.XPath(".//*[@class='ng5-slider-span ng5-slider-pointer ng5-slider-pointer-max']"));

        //min slider values
        int minHeight = minValues[GetElementIndexForFilterSliderLabels(column, 0)].Size.Height;
        int minWidth = minValues[GetElementIndexForFilterSliderLabels(column, 0)].Size.Width;
        int minLargestVal = Convert.ToInt32(minValues[GetElementIndexForFilterSliderLabels(column, 0)].GetAttribute("aria-valuemax"));
        int minSmallestVal = Convert.ToInt32(minValues[GetElementIndexForFilterSliderLabels(column, 0)].GetAttribute("aria-valuemin"));

        int maxSmallestVal = Convert.ToInt32(maxValues[GetElementIndexForFilterSliderLabels(column, 0)].GetAttribute("aria-valuemin"));

        int PixelsToMove = GetPixelsToMove(column, minValue);

        action.ClickAndHold(minValues[GetElementIndexForFilterSliderLabels(column, 0)])
            .MoveByOffset(-minWidth / 2, 0)
            .MoveByOffset(PixelsToMove, 0).Release().Build();`

}`

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.