tests/ide_tests/edit_project.sikuli/edit_project.py
author Edouard Tisserant <edouard.tisserant@gmail.com>
Mon, 07 Aug 2023 18:17:12 +0200
changeset 3842 3922024076b3
parent 3720 d0a9c01ee7a5
permissions -rw-r--r--
Tests: revert Teseract to less perforant legacy mode, but more repeatable. Compensate with zoom in edit_project and filter noise out of OCR text.
""" 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)

    # Zoom in to allow OCR
    app.type("+")

    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")