I'm trying to test some drag and drop functionality where the 'drag' is implemented through CSS transforms rather than changing absolute positioning on the screen. The result of this, for me is that when I execute code that looks like this:
new_card = find(".new-card." + color).native
drag_by_distances = { x: the_x - new_card.location.x, y: the_y - new_card.location.y}
page.driver.browser.action.click_and_hold(new_card)
.move_by(drag_by_distances[:x], drag_by_distances[:y])
.release()
.perform
The final mouse points from the release() call are where the original object is sitting, and not where the mouse happens to be located. According to the documentation, these events are supposed to happen where the mouse is, so I'm left in a strange position. I've tried passing in an element to release, and i've tried leaving it blank.
If anyone has any ideas on getting this to work properly, my test suite and I would thank you very much.