11// se importa el makeExecutableSchema para que nuestra
22// constante se genere como un schema
3- import { makeExecutableSchema , addMockFunctionsToSchema } from "graphql-tools" ;
3+ import { makeExecutableSchema } from "graphql-tools" ;
44
5- // mockups
6- import { MockComentarios , MockCursos , MockProfesores } from "./mockups" ;
7- import { CasualComentarios , CasualCursos , CasualProfesores } from "./mockupsCasual" ;
5+ // Modelos
6+ import { ModeloCurso , ModeloProfesor } from "../DB/models" ;
87
98// Creacion del schema, es importante declarar
109// el Query root ya que este indica el endpoint
@@ -56,15 +55,12 @@ const TYPE_DEF = `
5655 */
5756const RESOLVERS = {
5857 Query : {
59- cursos : ( ) => MockCursos ,
60- } ,
61- Curso : {
62- profesor : ( ) => MockProfesores ,
63- comentarios : ( ) => MockComentarios ,
64- } ,
65- Profesor : {
66- cursos : ( ) => MockCursos ,
67- genero : ( ) => "MASCULINO" ,
58+ // permite extraer los datos de la la DB y
59+ // con eager se lie indica que relaciones tiene
60+ cursos : ( ) => ModeloCurso . query ( ) . eager ( "[profesor, comentarios]" ) ,
61+ profesores : ( ) => ModeloProfesor . query ( ) . eager ( "cursos" ) ,
62+ curso : ( rootValue , args ) => ModeloCurso . query ( ) . findById ( args . id ) ,
63+ profesor : ( rootValue , args ) => ModeloProfesor . query ( ) . findById ( args . id ) ,
6864 } ,
6965} ;
7066
@@ -79,23 +75,4 @@ const SCHEMA = makeExecutableSchema({
7975 resolvers : RESOLVERS ,
8076} ) ;
8177
82- /**
83- * Crecion mocks utilizando casual
84- * serealiza la integracion con la addMockFunctionsToSchema
85- */
86- addMockFunctionsToSchema ( {
87- // se indica el schema al que afectaremos
88- schema : SCHEMA ,
89- // Definicion de los mocks a generar
90- mocks : {
91- Curso : ( ) => CasualCursos ,
92- Profesor : ( ) => CasualProfesores ,
93- Comentario : ( ) => CasualComentarios ,
94- } ,
95- // Permite utilizar la data de los resolvers que estan de clarados
96- // true : utiliza los resolvers
97- // false : utiliza el mock definido
98- perserveResolvers : true ,
99- } ) ;
100-
10178export default SCHEMA ;
0 commit comments