This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import casual from 'casual'; | |
const mocks = { | |
String: () => 'It works!', | |
Query: () => ({ | |
author: (root, args) => { | |
return { firstName: args.firstName, lastName: args.lastName }; | |
}, | |
}), | |
Author: () => ({ firstName: () => casual.first_name, lastName: () => casual.last_name }), |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const resolvers = { | |
Query: { | |
author(root, args){ | |
return { id: 1, firstName: 'Hello', lastName: 'World' }; | |
}, | |
}, | |
Author: { | |
posts(author){ | |
return [ | |
{ id: 1, title: 'A post', text: 'Some text', views: 2}, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Sequelize from 'sequelize'; | |
import casual from 'casual'; | |
import _ from 'lodash'; | |
const db = new Sequelize('blog', null, null, { | |
dialect: 'sqlite', | |
storage: './blog.sqlite', | |
}); | |
const AuthorModel = db.define('author', { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { Author } from './connectors'; | |
const resolvers = { | |
Query: { | |
author(_, args) { | |
return Author.find({ where: args }); | |
}, | |
}, | |
Author: { | |
posts(author) { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// at the top with imports: | |
import Mongoose from 'mongoose'; | |
// somewhere in the middle: | |
const mongo = Mongoose.connect('mongodb://localhost/views'); | |
const ViewSchema = Mongoose.Schema({ | |
postId: Number, | |
views: Number, | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Sample GraphQL schema with decorators | |
+connector(storage: "MySQL") | |
+doc(description: "A Person") | |
type Person { | |
+mock(type: "ID") | |
id: Int | |
+mock(raw: "John") | |
name: String |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { applyDecorators } from 'graphql-tools'; | |
import { | |
GraphQLSchema, | |
GraphQLString, | |
GraphQLObjectType, | |
} from 'graphql'; | |
import { Doc, Log } from 'graphql-decorators'; | |
const Logger = { log: (...args) => console.log(...args) }; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import hapi from 'hapi'; | |
import graphql from 'graphql'; | |
import { ApolloHAPI } from 'apollo-server'; | |
const myGraphQLSchema = new graphql.GraphQLSchema({ | |
// define your schema in GraphQL.js syntax here ... | |
}); | |
const server = new hapi.Server(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import express from 'express'; | |
import { apolloExpress, OperationStore } from 'apollo-server'; | |
import Schema from './schema'; | |
const PORT = 3000; | |
const store = new OperationStore(Schema); | |
store.put('query testquery{ testString }'); | |
const app = express(); | |
const options = { |