@has_access
    @expose("/testconn", methods=["POST", "GET"])
    def testconn(self):
        try:
            uri = request.json.get('uri')
            connect_args = request.json.get('extras', {}).get('engine_params', {}).get('connect_args', {})
            engine = create_engine(uri, connect_args=connect_args)
            engine.connect()
            return json.dumps(engine.table_names(), indent=4)
        except Exception:
            return Response(
                traceback.format_exc(),
                status=500,
                mimetype="application/json")
Returns True if obj is non-string iterable, False otherwise
dataset/ETHPy150Open airbnb/caravel/caravel/views.py/Caravel.testconn--crossover with--dataset/ETHPy150Open ioflo/ioflo/ioflo/aid/classing.py/nonStringIterable