tests/ide_tests/edit_project.sikuli/edit_project.py
author Edouard Tisserant <edouard.tisserant@gmail.com>
Thu, 02 Feb 2023 17:17:04 +0100
branchwxPython4
changeset 3720 d0a9c01ee7a5
parent 3710 51c2d434e10e
child 3842 3922024076b3
permissions -rw-r--r--
Tests: IDE: explicitely wait for build success rather than just stdout to become silent.
""" This test opens, modifies, builds and runs exemple project named "python".
Test succeeds if runtime's stdout behaves as expected
"""

import os
import time

# allow module import from current test directory's parent
addImportPath(os.path.dirname(getBundlePath()))

# common test definitions module
from sikuliberemiz import run_test

def test(app):

    app.doubleClick("main")

    app.WaitIdleUI()

    app.click("example")

    app.WaitIdleUI()

    app.type(Key.DOWN * 10, Key.CTRL)

    app.WaitIdleUI()

    app.doubleClick("Hello")

    app.WaitIdleUI()

    app.type(Key.TAB*3)  # select text content

    app.type("'sys.stdout.write(\"EDIT TEST OK\\n\")'")

    app.type(Key.ENTER)

    app.WaitIdleUI()

    app.k.Clean()

    app.waitForChangeAndIdleStdout()

    app.k.Build()

    app.waitPatternInStdout("Successfully built.", 10)

    app.k.Connect()

    app.waitForChangeAndIdleStdout()

    app.k.Transfer()

    app.waitForChangeAndIdleStdout()

    app.k.Run()

    # wait 10 seconds for 10 patterns
    return app.waitPatternInStdout("EDIT TEST OK", 10)

run_test(test, exemple="python")