17db96d56Sopenharmony_ci/*[clinic input]
27db96d56Sopenharmony_cipreserve
37db96d56Sopenharmony_ci[clinic start generated code]*/
47db96d56Sopenharmony_ci
57db96d56Sopenharmony_ci#if defined(MS_WINDOWS)
67db96d56Sopenharmony_ci
77db96d56Sopenharmony_ciPyDoc_STRVAR(_testconsole_write_input__doc__,
87db96d56Sopenharmony_ci"write_input($module, /, file, s)\n"
97db96d56Sopenharmony_ci"--\n"
107db96d56Sopenharmony_ci"\n"
117db96d56Sopenharmony_ci"Writes UTF-16-LE encoded bytes to the console as if typed by a user.");
127db96d56Sopenharmony_ci
137db96d56Sopenharmony_ci#define _TESTCONSOLE_WRITE_INPUT_METHODDEF    \
147db96d56Sopenharmony_ci    {"write_input", _PyCFunction_CAST(_testconsole_write_input), METH_FASTCALL|METH_KEYWORDS, _testconsole_write_input__doc__},
157db96d56Sopenharmony_ci
167db96d56Sopenharmony_cistatic PyObject *
177db96d56Sopenharmony_ci_testconsole_write_input_impl(PyObject *module, PyObject *file,
187db96d56Sopenharmony_ci                              PyBytesObject *s);
197db96d56Sopenharmony_ci
207db96d56Sopenharmony_cistatic PyObject *
217db96d56Sopenharmony_ci_testconsole_write_input(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
227db96d56Sopenharmony_ci{
237db96d56Sopenharmony_ci    PyObject *return_value = NULL;
247db96d56Sopenharmony_ci    static const char * const _keywords[] = {"file", "s", NULL};
257db96d56Sopenharmony_ci    static _PyArg_Parser _parser = {NULL, _keywords, "write_input", 0};
267db96d56Sopenharmony_ci    PyObject *argsbuf[2];
277db96d56Sopenharmony_ci    PyObject *file;
287db96d56Sopenharmony_ci    PyBytesObject *s;
297db96d56Sopenharmony_ci
307db96d56Sopenharmony_ci    args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 2, 2, 0, argsbuf);
317db96d56Sopenharmony_ci    if (!args) {
327db96d56Sopenharmony_ci        goto exit;
337db96d56Sopenharmony_ci    }
347db96d56Sopenharmony_ci    file = args[0];
357db96d56Sopenharmony_ci    if (!PyBytes_Check(args[1])) {
367db96d56Sopenharmony_ci        _PyArg_BadArgument("write_input", "argument 's'", "bytes", args[1]);
377db96d56Sopenharmony_ci        goto exit;
387db96d56Sopenharmony_ci    }
397db96d56Sopenharmony_ci    s = (PyBytesObject *)args[1];
407db96d56Sopenharmony_ci    return_value = _testconsole_write_input_impl(module, file, s);
417db96d56Sopenharmony_ci
427db96d56Sopenharmony_ciexit:
437db96d56Sopenharmony_ci    return return_value;
447db96d56Sopenharmony_ci}
457db96d56Sopenharmony_ci
467db96d56Sopenharmony_ci#endif /* defined(MS_WINDOWS) */
477db96d56Sopenharmony_ci
487db96d56Sopenharmony_ci#if defined(MS_WINDOWS)
497db96d56Sopenharmony_ci
507db96d56Sopenharmony_ciPyDoc_STRVAR(_testconsole_read_output__doc__,
517db96d56Sopenharmony_ci"read_output($module, /, file)\n"
527db96d56Sopenharmony_ci"--\n"
537db96d56Sopenharmony_ci"\n"
547db96d56Sopenharmony_ci"Reads a str from the console as written to stdout.");
557db96d56Sopenharmony_ci
567db96d56Sopenharmony_ci#define _TESTCONSOLE_READ_OUTPUT_METHODDEF    \
577db96d56Sopenharmony_ci    {"read_output", _PyCFunction_CAST(_testconsole_read_output), METH_FASTCALL|METH_KEYWORDS, _testconsole_read_output__doc__},
587db96d56Sopenharmony_ci
597db96d56Sopenharmony_cistatic PyObject *
607db96d56Sopenharmony_ci_testconsole_read_output_impl(PyObject *module, PyObject *file);
617db96d56Sopenharmony_ci
627db96d56Sopenharmony_cistatic PyObject *
637db96d56Sopenharmony_ci_testconsole_read_output(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
647db96d56Sopenharmony_ci{
657db96d56Sopenharmony_ci    PyObject *return_value = NULL;
667db96d56Sopenharmony_ci    static const char * const _keywords[] = {"file", NULL};
677db96d56Sopenharmony_ci    static _PyArg_Parser _parser = {NULL, _keywords, "read_output", 0};
687db96d56Sopenharmony_ci    PyObject *argsbuf[1];
697db96d56Sopenharmony_ci    PyObject *file;
707db96d56Sopenharmony_ci
717db96d56Sopenharmony_ci    args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
727db96d56Sopenharmony_ci    if (!args) {
737db96d56Sopenharmony_ci        goto exit;
747db96d56Sopenharmony_ci    }
757db96d56Sopenharmony_ci    file = args[0];
767db96d56Sopenharmony_ci    return_value = _testconsole_read_output_impl(module, file);
777db96d56Sopenharmony_ci
787db96d56Sopenharmony_ciexit:
797db96d56Sopenharmony_ci    return return_value;
807db96d56Sopenharmony_ci}
817db96d56Sopenharmony_ci
827db96d56Sopenharmony_ci#endif /* defined(MS_WINDOWS) */
837db96d56Sopenharmony_ci
847db96d56Sopenharmony_ci#ifndef _TESTCONSOLE_WRITE_INPUT_METHODDEF
857db96d56Sopenharmony_ci    #define _TESTCONSOLE_WRITE_INPUT_METHODDEF
867db96d56Sopenharmony_ci#endif /* !defined(_TESTCONSOLE_WRITE_INPUT_METHODDEF) */
877db96d56Sopenharmony_ci
887db96d56Sopenharmony_ci#ifndef _TESTCONSOLE_READ_OUTPUT_METHODDEF
897db96d56Sopenharmony_ci    #define _TESTCONSOLE_READ_OUTPUT_METHODDEF
907db96d56Sopenharmony_ci#endif /* !defined(_TESTCONSOLE_READ_OUTPUT_METHODDEF) */
917db96d56Sopenharmony_ci/*[clinic end generated code: output=6e9f8b0766eb5a0e input=a9049054013a1b77]*/
92