def METHOD_NAME(page, port, dataframe):
    brush = alt.selection_interval(name='brush')  # selection of type "interval"
    chart = alt.Chart(dataframe).mark_circle().encode(x='int', y='float').add_params(brush)
    pane = Vega(chart)
    serve(pane, port=port, threaded=True, show=False)
    time.sleep(1)
    page.goto(f"http://localhost:{port}")
    vega_plot = page.locator('.vega-embed')
    expect(vega_plot).to_have_count(1)
    bbox = vega_plot.bounding_box()
    vega_plot.click()
    page.mouse.move(bbox['x']+100, bbox['y']+100)
    page.mouse.down()
    page.mouse.move(bbox['x']+300, bbox['y']+300, steps=5)
    page.mouse.up()
    time.sleep(0.2)
    assert pane.selection.brush == {'int': [0.61, 2.61], 'float': [0.33333333333333326, 7]}