mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-11-24 23:39:51 +03:00
allow monkey tests to specify a redraw area for plot-check steps
This commit is contained in:
parent
ff225194f3
commit
a091dc3603
@ -400,9 +400,14 @@ The window to be rendered is identified with the `window` key, the
|
||||
value of this must be a previously created window identifier or an
|
||||
assert will occur.
|
||||
|
||||
The `area` key allows control of the area to be redraw. The parameters are on two forms:
|
||||
|
||||
* A sequence of four numbers in the form `x0 y0 x1 y1`
|
||||
* The keyword extent which attempt to plot the entire extent of the canvas
|
||||
|
||||
An optional list of checks may be specified with the `checks` key. If
|
||||
any check is not satisfied an assert will occur and the test will
|
||||
fail.
|
||||
fail. Multiple checks can be specified and all most pass successfully.
|
||||
|
||||
The checks available are:
|
||||
|
||||
@ -416,8 +421,10 @@ The checks available are:
|
||||
|
||||
- action: plot-check
|
||||
window: win1
|
||||
area: extent
|
||||
checks:
|
||||
- text-contains: NetSurf
|
||||
- text-contains: Browser
|
||||
- text-not-contains: Chrome
|
||||
- bitmap-count: 1
|
||||
|
||||
|
@ -217,7 +217,7 @@ def run_test_step_action_launch(ctx, step):
|
||||
ctx['browser'] = DriverBrowser(
|
||||
monkey_cmd=monkey_cmd,
|
||||
monkey_env=monkey_env,
|
||||
quiet=True,
|
||||
quiet=False,
|
||||
wrapper=ctx.get("wrapper"))
|
||||
assert_browser(ctx)
|
||||
ctx['windows'] = dict()
|
||||
@ -436,13 +436,26 @@ def run_test_step_action_plot_check(ctx, step):
|
||||
print(get_indent(ctx) + "Action: " + step["action"])
|
||||
assert_browser(ctx)
|
||||
win = ctx['windows'][step['window']]
|
||||
|
||||
if 'area' in step.keys():
|
||||
if step["area"] == "extent":
|
||||
# ought to capture the extent updates and use that, instead use a
|
||||
# big area and have the browser clip it
|
||||
area=["0","0","1000","1000000"]
|
||||
else:
|
||||
area = [step["area"]]
|
||||
else:
|
||||
area = None
|
||||
|
||||
# get the list of checks
|
||||
if 'checks' in step.keys():
|
||||
checks = step['checks']
|
||||
else:
|
||||
checks = {}
|
||||
|
||||
all_text_list = []
|
||||
bitmaps = []
|
||||
for plot in win.redraw():
|
||||
for plot in win.redraw(coords=area):
|
||||
if plot[0] == 'TEXT':
|
||||
all_text_list.extend(plot[6:])
|
||||
if plot[0] == 'BITMAP':
|
||||
|
Loading…
Reference in New Issue
Block a user