Skip to content

Commit 6abef5f

Browse files
committed
test: move #93 test case to github-issues-test.js
1 parent dad8908 commit 6abef5f

File tree

2 files changed

+36
-37
lines changed

2 files changed

+36
-37
lines changed

src/__tests__/github-issues-test.js

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,4 +152,40 @@ describe('github issues checks', () => {
152152
expect(result.errors[0].message).toBe('You are too young');
153153
});
154154
});
155+
156+
it('#93 $or, $and operator for filtering', async () => {
157+
schemaComposer.rootQuery().addFields({
158+
users: UserTC.getResolver('findMany'),
159+
});
160+
const schema = schemaComposer.buildSchema();
161+
await UserModel.create({
162+
_id: '100000000000000000000301',
163+
name: 'User301',
164+
age: 301,
165+
});
166+
await UserModel.create({
167+
_id: '100000000000000000000302',
168+
name: 'User302',
169+
age: 302,
170+
gender: 'male',
171+
});
172+
await UserModel.create({
173+
_id: '100000000000000000000303',
174+
name: 'User303',
175+
age: 302,
176+
gender: 'female',
177+
});
178+
179+
const res = await graphql.graphql(
180+
schema,
181+
`
182+
{
183+
users(filter: { OR: [{ age: 301 }, { AND: [{ gender: male }, { age: 302 }] }] }) {
184+
name
185+
}
186+
}
187+
`
188+
);
189+
expect(res).toEqual({ data: { users: [{ name: 'User301' }, { name: 'User302' }] } });
190+
});
155191
});

src/__tests__/integration-test.js

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -163,41 +163,4 @@ describe('integration tests', () => {
163163
expect(Object.keys(res.data.user.rawData)).toMatchSnapshot('projection from all fields');
164164
});
165165
});
166-
167-
it('filter nested OR/AND', async () => {
168-
const UserTC = composeWithMongoose(UserModel);
169-
schemaComposer.rootQuery().addFields({
170-
users: UserTC.getResolver('findMany'),
171-
});
172-
const schema = schemaComposer.buildSchema();
173-
await UserModel.create({
174-
_id: '100000000000000000000301',
175-
name: 'User301',
176-
age: 301,
177-
});
178-
await UserModel.create({
179-
_id: '100000000000000000000302',
180-
name: 'User302',
181-
age: 302,
182-
gender: 'male',
183-
});
184-
await UserModel.create({
185-
_id: '100000000000000000000303',
186-
name: 'User303',
187-
age: 302,
188-
gender: 'female',
189-
});
190-
191-
const res = await graphql(
192-
schema,
193-
`
194-
{
195-
users(filter: { OR: [{ age: 301 }, { AND: [{ gender: male }, { age: 302 }] }] }) {
196-
name
197-
}
198-
}
199-
`
200-
);
201-
expect(res).toEqual({ data: { users: [{ name: 'User301' }, { name: 'User302' }] } });
202-
});
203166
});

0 commit comments

Comments
 (0)