Skip to content

Instantly share code, notes, and snippets.

View knrt10's full-sized avatar
😾

Kautilya Tripathi knrt10

😾
View GitHub Profile
@knrt10
knrt10 / todoQueries.ts
Created December 27, 2018 19:29
Todo queries for our test file
const UserRoute = require("./user-test.spec");
const todoId = UserRoute.toDoSavedData;
const query = `mutation addTodo($input: todoInput) {
addTodo(input: $input) {
code
message
data {
success
todo {
@knrt10
knrt10 / profileQueries.ts
Created December 27, 2018 19:28
Queries for our Test file
const query = `query profileUser{
profileUser {
code
message
data {
success
token
user {
name
}
@knrt10
knrt10 / graphql.ts
Created December 27, 2018 17:28
This is final schema for our graphql
import { GraphQLNonNull, GraphQLObjectType, GraphQLSchema, GraphQLString } from "graphql";
import { isAuthenticated } from "../middleware";
import { addTodo, deleteTodo, getAlltodosForUser, login, register, update } from "../routes";
import { todographqlSchema } from "./todographqlSchema";
import { userLoginSchema } from "./userLoginSchema";
import { userRegisterSchema } from "./userRegisterSchema";
// Define the Query type
const queryType = new GraphQLObjectType({
name: "Query",
@knrt10
knrt10 / todographqlSchema.ts
Created December 27, 2018 17:23
This is graphQL schema for our Todo
import { GraphQLBoolean, GraphQLID, GraphQLInputObjectType, GraphQLInt, GraphQLList, GraphQLNonNull, GraphQLObjectType, GraphQLString } from "graphql";
// User type
const todoType = new GraphQLObjectType({
name: "todo",
fields: {
id: { type: GraphQLID },
postedByid: { type: GraphQLID },
name: { type: GraphQLString },
title: { type: GraphQLString },
@knrt10
knrt10 / todo.ts
Last active December 27, 2018 19:23
CRUD operation for TODO
import { model } from "mongoose";
import { completeRequest } from "../functions/complete";
import { Response } from "../models";
import { TodoSchema, UserSchema } from "../schemas";
const User = model("User", UserSchema);
const Todo = model("Todo", TodoSchema);
/**
* This function creates a new Todo
* @param args
@knrt10
knrt10 / todoSchema.ts
Created December 27, 2018 16:20
A mongoose schema for Todo
import { Schema } from "mongoose";
import mongoose = require("mongoose");
mongoose.Promise = global.Promise;
/**
* This is Schema for Blog
* @constant {BlogSchema}
*/
export const TodoSchema = new Schema({
@knrt10
knrt10 / auth.ts
Last active December 27, 2018 19:21
An authenticated middleware
import jwt = require("jsonwebtoken");
import { model } from "mongoose";
import { completeRequest } from "../functions/complete";
import {Response} from "../models";
import {UserSchema} from "../schemas";
import {Config} from "../shared";
const User = model("User", UserSchema);
/**
@knrt10
knrt10 / thirduser-test-spec.ts
Created December 27, 2018 07:00
New changes to test
import chai = require("chai");
import chaiAsPromised = require("chai-as-promised");
import chaiHttp = require("chai-http");
import { suite, test } from "mocha-typescript";
import { model } from "mongoose";
import sinon = require("sinon");
import { Response } from "../models";
import { UserSchema } from "../schemas";
import { TodoApp } from "../server";
import { Config } from "../shared";
@knrt10
knrt10 / loginUserQueries.ts
Created December 27, 2018 06:51
Login user in queries
const query = `query loginUser($input: UserInputLogin) {
loginUser(input: $input) {
code,
message,
data {
success
user {
id
name
username
@knrt10
knrt10 / registerUserQueries.ts
Last active December 27, 2018 19:19
Mutation Queries to register User
const query = `mutation registerUser($input: UserInputRegister) {
registerUser(input: $input) {
code
message
data {
token
success
user {
id
createdAt