def METHOD_NAME(df, schema):
    def values(row, name):
        return [k[name] for k in row]
    result = schema.execute("""
    {
        df {
            row { x }
        }
    }
    """)
    assert not result.errors
    assert values(result.data['df']['row'], 'x') == df.x.tolist()
    result = schema.execute("""
    {
        df {
            row(offset: 2) { x }
        }
    }
    """)
    assert not result.errors
    assert values(result.data['df']['row'], 'x') == df[2:].x.tolist()
    result = schema.execute("""
    {
        df {
            row(limit: 2) { x }
        }
    }
    """)
    assert not result.errors
    assert values(result.data['df']['row'], 'x') == df[:2].x.tolist()
    result = schema.execute("""
    {
        df {
            row(offset: 3, limit: 2) { x }
        }
    }
    """)
    assert not result.errors
    assert values(result.data['df']['row'], 'x') == df[3:5].x.tolist()