Перетащите выделение с пикселем координат в кипарисе, нажав клавишу Shift - PullRequest
0 голосов
/ 06 августа 2020

# Версия транспортира

 this.dragSelect = function (selectionRect) {
    var top = selectionRect.top;
    var left = selectionRect.left;
    var right = selectionRect.right;
    var bottom = selectionRect.bottom;

    return waitForSelectionHandling().then(function() {
        return browser.actions()
            .mouseMove(element(by.id("map")), {x: left, y: top})
            .keyDown(protractor.Key.SHIFT)
            .mouseDown()
            .mouseMove(element(by.id("map")), {x: right, y: bottom})
            .mouseUp()
            .keyUp(protractor.Key.SHIFT)
            .perform().then(waitForSelectionHandling);
    });

};

# Версия Cypress

public dragSelect(selectionRect:any) {
    debugger
    let that=this;
    let top = selectionRect.top;
    let left = selectionRect.left;
    let right = selectionRect.right;
    let bottom = selectionRect.bottom;
    return this.waitForSelectionHandling().then(()=>{
   
        cy.wait(1500);
        cy.get("#map").trigger('mousemove', left, top, {which: 1, force: true,delay:10})
        cy.get('#map').trigger('keydown', {keyCode: 16, which: 16,force:true,release:false,delay:10})
        cy.get("#map")  .trigger("mousedown",  { button: 0 ,force:true,delay:10})
        cy.get("#map")  .trigger("mousemove", right, bottom, { force: true ,delay:10})
        cy.get("#map")   .trigger("mouseup", { force: true,delay:10 })
        cy.get("#map")   .trigger("keyup", {keycode: 16,force: true,delay:10 });

Я конвертирую вышеупомянутый метод транспортира в кипарис. Cypress throw error, когда я использую .type, говоря, что тема должна быть типизированный, но в случае триггера он не выдает ошибку, но не работает должным образом. есть идеи?

...