subtest1(conn, values) es un generador yield ing un objeto generador no ejecuta su cuerpo. Es decir, el generador producido permanece suspendido y requeriría una llamada a next() método para el primer yield ser alcanzado. No hay llamadas explícitas o implícitas a next() en Ejemplo de código 2 , y esta es la razón conn.query(...) no se ejecuta.
¿Qué tal yield* subtest1(conn, values)
? Desde la página vinculada:
Seguirá ejecutando subtest perezosamente.
Una solución alternativa es convertir subtest en una función normal y devolver el resultado de conn.query(...) (asumiendo que solo necesita realizar una consulta):
function subtest1(conn, values) {
return conn.query("INSERT INTO version SET ?", values);
}