Skip to content

Commit de922a4

Browse files
committed
small fixes
1 parent 6c9e727 commit de922a4

File tree

4 files changed

+32
-13
lines changed

4 files changed

+32
-13
lines changed

src/__tests__/fieldConverter-test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ import {
2121
GraphQLBoolean,
2222
GraphQLList,
2323
GraphQLEnumType,
24-
GraphQLID,
2524
} from 'graphql/type';
25+
import GraphQLMongoID from '../types/mongoid';
2626

2727
import {
2828
GraphQLDate,
@@ -117,7 +117,7 @@ describe('fieldConverter', () => {
117117
expect(scalarToGraphQL({ instance: 'String' })).to.equal(GraphQLString);
118118
expect(scalarToGraphQL({ instance: 'Number' })).to.equal(GraphQLFloat);
119119
expect(scalarToGraphQL({ instance: 'Boolean' })).to.equal(GraphQLBoolean);
120-
expect(scalarToGraphQL({ instance: 'ObjectID' })).to.equal(GraphQLID);
120+
expect(scalarToGraphQL({ instance: 'ObjectID' })).to.equal(GraphQLMongoID);
121121
});
122122

123123
it('should properly convert mongoose scalar type to scalar graphql-compose types', () => {

src/definition.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ export type MongooseModelT = {
2424
findById(id: mixed, projection?: Object, options?: Object): MongooseQuery,
2525
find(conditions: ?Object, projection?: Object, options?: Object): MongooseQuery,
2626
findOneAndRemove(conditions: ?Object, options?: Object): MongooseQuery,
27+
where(criteria: ObjectMap): MongooseQuery,
28+
findByIdAndRemove(id: mixed, options?: Object): MongooseQuery,
2729
}
2830

2931
export type MongooseFieldOptionsT = {
@@ -52,6 +54,8 @@ export type MongooseQuery = {
5254
limit(num: number): MongooseQuery,
5355
select(projection: ObjectMap): MongooseQuery,
5456
sort(fields: ObjectMap): MongooseQuery,
57+
setOptions(opts: ObjectMap): MongooseQuery,
58+
update(data: ObjectMap): MongooseQuery,
5559
};
5660

5761
export type MongoseDocument = {

src/resolvers/__tests__/findOne-test.js

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,21 @@ describe('findOne() ->', () => {
4444
expect(resolver).to.be.instanceof(Resolver);
4545
});
4646

47-
it('Resolver object should have `filter` arg', () => {
48-
const resolver = findOne(UserModel, UserType);
49-
expect(resolver.hasArg('filter')).to.be.true;
50-
});
47+
describe('Resolver.args', () => {
48+
it('should have `filter` arg', () => {
49+
const resolver = findOne(UserModel, UserType);
50+
expect(resolver.hasArg('filter')).to.be.true;
51+
});
5152

52-
it('Resolver object should have `skip` arg', () => {
53-
const resolver = findOne(UserModel, UserType);
54-
expect(resolver.hasArg('skip')).to.be.true;
55-
});
53+
it('should have `skip` arg', () => {
54+
const resolver = findOne(UserModel, UserType);
55+
expect(resolver.hasArg('skip')).to.be.true;
56+
});
5657

57-
it('Resolver object should have `sort` arg', () => {
58-
const resolver = findOne(UserModel, UserType);
59-
expect(resolver.hasArg('sort')).to.be.true;
58+
it('should have `sort` arg', () => {
59+
const resolver = findOne(UserModel, UserType);
60+
expect(resolver.hasArg('sort')).to.be.true;
61+
});
6062
});
6163

6264
describe('Resolver.resolve():Promise', () => {
@@ -91,4 +93,11 @@ describe('findOne() ->', () => {
9193
expect(`${result1._id}`).not.equal(`${result2._id}`);
9294
});
9395
});
96+
97+
describe('Resolver.getOutputType()', () => {
98+
it('should return model type', () => {
99+
const outputType = findOne(UserModel, UserType).getOutputType();
100+
expect(outputType).to.equal(UserType);
101+
});
102+
});
94103
});

src/resolvers/helpers/input.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
/* @flow */
22

33
import TypeComposer from '../../../../graphql-compose/src/typeComposer';
4+
import { GraphQLNonNull } from 'graphql';
45

56
import type {
67
GraphQLObjectType,
@@ -10,6 +11,7 @@ import type {
1011
export type inputHelperArgsGenOpts = {
1112
inputTypeName: string,
1213
removeFields?: string | string[],
14+
requiredFields?: string | string[],
1315
};
1416

1517
export const inputHelperArgsGen = (
@@ -27,6 +29,10 @@ export const inputHelperArgsGen = (
2729
inputComposer.removeField(opts.removeFields);
2830
}
2931

32+
if (opts.requiredFields) {
33+
inputComposer.makeFieldsRequired(opts.requiredFields);
34+
}
35+
3036
return {
3137
input: {
3238
name: 'input',

0 commit comments

Comments
 (0)