1. 08 Mar, 2017 3 commits
  2. 16 Feb, 2017 2 commits
  3. 09 Feb, 2017 1 commit
    • anonym's avatar
      Test suite: let's see if the 'press' action is more reliable than .click(). · cf44cb39
      anonym authored
      The .click() method actually looks up the coordinates of the element
      and then clicks those coordinates. The 'press' action directly causes
      a "click" event that cannot be lost.
      The affected part has been failing quite regularly on Jenkins,
      presumably because the GUI isn't finished loading at the time, so the
      coordinates we end up clicking on (with .click()) are the wrong ones.
  4. 25 Jan, 2017 1 commit
    • anonym's avatar
      Dogtail: use the remote shell's new Python session feature. · 1558f125
      anonym authored
      ... to significantly improve Dogtail's performance by saving state and
      reusing it between Dogtail commands.
      This is a massive commit, and it changes the semantics of the creation
      of Dogtail objects. Previously they just created the code that then
      would be run once an actionable method was called (.wait, .click etc),
      but now it works like in Python, that Dogtail will try to find the
      graphical element upon object creation.
      Will-fix: #12059
  5. 17 Nov, 2016 2 commits
  6. 05 Nov, 2016 1 commit
    • anonym's avatar
      Skip Dogtail cleanup due to remote shell instability. · e0b1f56e
      anonym authored
      If the remote shell times out while running the dogtail script, this
      cleanup will try to use the shell when it is dead, resulting in another
      call that will time out. Since nothing is written to stdout, this may
      result in Jenkins aborting the whole run due to this extra timeout.
      Besides, we don't really care if potentially hundreds of scripts are
      littering the guest's /tmp.
  7. 28 Oct, 2016 2 commits
  8. 24 Oct, 2016 2 commits
    • anonym's avatar
      debug_log() Dogtail script content on failure. · f8a20076
      anonym authored
      Now that we don't see the contents of these scripts when they are passed
      through the remote shell, let's at least log the contents of failing
    • anonym's avatar
      Extend remote shell with *safe* file operations. · fb63bad9
      anonym authored
      ... like reading a file, and writing or appending to a file. Now we can
      read/write *any* characters without worrying that it will do crazy
      things by being passed through the shell, as was the case before.
      This commit also:
      * adds some better reporting of errors happening on the server side by
        communicating back the exception thrown.
      * removes the `user` parameter from the VM.file_* methods. They were not
        used, any way, and simply do not feel like they fit. I think the only
        reason we had it initially was because it was implemented via the
        command interface, where a user concept makes a lot of sense.
  9. 02 Sep, 2016 2 commits
  10. 01 Sep, 2016 1 commit
  11. 29 Aug, 2016 2 commits
    • anonym's avatar
      Dogtailify the Synaptic test. · bb5381a7
      anonym authored
    • anonym's avatar
      Avoid remote shell deadlock. · 3823e4ee
      anonym authored
      If the method is called in a try_for and is aborted, we'll try another
      remote shell call in the ensure block, and this is prone to cause a
      deadlock. Let's avoid this at the cost of offering less guarantees about
      the cleanup, which is non-essential any way.
  12. 28 Aug, 2016 1 commit
  13. 25 Aug, 2016 1 commit
  14. 21 May, 2016 3 commits
  15. 04 May, 2016 4 commits
  16. 08 Apr, 2016 2 commits
  17. 07 Apr, 2016 1 commit
    • anonym's avatar
      Redesign the Dogtail class hierarchy. · f5a466b7
      anonym authored
      The ScriptProxy part was a remnant from the time when I was still
      concidering supporting Dogtail's procedural API, but it's now clear
      that it will be too hard and not offer anything beyond the Tree
      API. Also, the `interact` + block idea was from this time, and also
      from a part of rewritten Git history where each use of the Dogtail
      class instance inside the? `interact` block built up a single script,
      that then was executed. However, since you can mix-in other calls
      (e.g. to Sikuli) that may expect that a change already has happened,
      that seemed like a bad approach.
      So, let's KISS and simply settle on the classes Application and Node,
      roughly reflecting those classes in the Tree API. The diff might look
      scary, but it just moves code around, and removes some confusing
  18. 06 Apr, 2016 3 commits
  19. 05 Apr, 2016 5 commits
  20. 01 Apr, 2016 1 commit