Skip to content
This repository was archived by the owner on Sep 3, 2021. It is now read-only.

Commit 4d3ef38

Browse files
committedFeb 8, 2019
Remove functionality to infer addition of neo4j_ignore directive
See #189
1 parent f1a31a4 commit 4d3ef38

File tree

2 files changed

+37
-27
lines changed

2 files changed

+37
-27
lines changed
 

‎src/augment.js

+10-6
Original file line numberDiff line numberDiff line change
@@ -263,12 +263,16 @@ const augmentType = (astNode, typeMap, resolvers, rootTypes, config) => {
263263
queryType
264264
);
265265
}
266-
astNode.fields = possiblyAddIgnoreDirective(
267-
astNode,
268-
typeMap,
269-
resolvers,
270-
config
271-
);
266+
// FIXME: inferring where to add @neo4j_ignore directive improperly causes
267+
// fields to be ignored when logger is added, so remove functionality
268+
// until we refactor how to infer when @neo4j_ignore directive is needed
269+
// see https://github.com/neo4j-graphql/neo4j-graphql-js/issues/189
270+
// astNode.fields = possiblyAddIgnoreDirective(
271+
// astNode,
272+
// typeMap,
273+
// resolvers,
274+
// config
275+
// );
272276
return astNode;
273277
};
274278

‎test/cypherTest.js

+27-21
Original file line numberDiff line numberDiff line change
@@ -3762,23 +3762,25 @@ test('Query node with ignored field', t => {
37623762
]);
37633763
});
37643764

3765-
test('Query nested node with ignored field (inferred from resolver)', t => {
3766-
const graphQLQuery = `query {
3767-
Movie {
3768-
customField
3769-
filmedIn {
3770-
name
3771-
customField
3772-
}
3773-
}
3774-
}`,
3775-
expectedCypherQuery = `MATCH (\`movie\`:\`Movie\` ) RETURN \`movie\` {filmedIn: head([(\`movie\`)-[:\`FILMED_IN\`]->(\`movie_filmedIn\`:\`State\`) | movie_filmedIn { .name }]) } AS \`movie\` SKIP $offset`;
3776-
3777-
t.plan(1);
3778-
return Promise.all([
3779-
augmentedSchemaCypherTestRunner(t, graphQLQuery, {}, expectedCypherQuery)
3780-
]);
3781-
});
3765+
// FIXME: ignore this test until inferred addition of @neo4j_ignore directive
3766+
// is re-evaluated
3767+
// test('Query nested node with ignored field (inferred from resolver)', t => {
3768+
// const graphQLQuery = `query {
3769+
// Movie {
3770+
// customField
3771+
// filmedIn {
3772+
// name
3773+
// customField
3774+
// }
3775+
// }
3776+
// }`,
3777+
// expectedCypherQuery = `MATCH (\`movie\`:\`Movie\` ) RETURN \`movie\` {filmedIn: head([(\`movie\`)-[:\`FILMED_IN\`]->(\`movie_filmedIn\`:\`State\`) | movie_filmedIn { .name }]) } AS \`movie\` SKIP $offset`;
3778+
3779+
// t.plan(1);
3780+
// return Promise.all([
3781+
// augmentedSchemaCypherTestRunner(t, graphQLQuery, {}, expectedCypherQuery)
3782+
// ]);
3783+
// });
37823784

37833785
test('Deeply nested orderBy', t => {
37843786
const graphQLQuery = `query {
@@ -3792,7 +3794,8 @@ test('Deeply nested orderBy', t => {
37923794
}
37933795
}
37943796
}`,
3795-
expectedCypherQuery = "MATCH (`movie`:`Movie` ) RETURN `movie` { .title ,actors: apoc.coll.sortMulti([(`movie`)<-[:`ACTED_IN`]-(`movie_actors`:`Actor`) | movie_actors { .name ,movies: apoc.coll.sortMulti([(`movie_actors`)-[:`ACTED_IN`]->(`movie_actors_movies`:`Movie`) | movie_actors_movies { .title }], ['^title','title']) }], ['name']) } AS `movie` ORDER BY movie.title DESC SKIP $offset";
3797+
expectedCypherQuery =
3798+
"MATCH (`movie`:`Movie` ) RETURN `movie` { .title ,actors: apoc.coll.sortMulti([(`movie`)<-[:`ACTED_IN`]-(`movie_actors`:`Actor`) | movie_actors { .name ,movies: apoc.coll.sortMulti([(`movie_actors`)-[:`ACTED_IN`]->(`movie_actors_movies`:`Movie`) | movie_actors_movies { .title }], ['^title','title']) }], ['name']) } AS `movie` ORDER BY movie.title DESC SKIP $offset";
37963799

37973800
t.plan(1);
37983801
return Promise.all([
@@ -3807,7 +3810,8 @@ test('Query using enum orderBy', t => {
38073810
genre
38083811
}
38093812
}`,
3810-
expectedCypherQuery = "MATCH (`book`:`Book` ) RETURN `book` {_id: ID(`book`), .genre } AS `book` ORDER BY book.genre ASC SKIP $offset";
3813+
expectedCypherQuery =
3814+
'MATCH (`book`:`Book` ) RETURN `book` {_id: ID(`book`), .genre } AS `book` ORDER BY book.genre ASC SKIP $offset';
38113815

38123816
t.plan(1);
38133817
return Promise.all([
@@ -3825,7 +3829,8 @@ test('Query using temporal orderBy', t => {
38253829
}
38263830
}
38273831
}`,
3828-
expectedCypherQuery = "MATCH (\`temporalNode\`:\`TemporalNode\` ) RETURN \`temporalNode\` {datetime: { formatted: toString(\`temporalNode\`.datetime) }} AS \`temporalNode\` ORDER BY temporalNode.datetime DESC , temporalNode.datetime ASC SKIP $offset";
3832+
expectedCypherQuery =
3833+
'MATCH (`temporalNode`:`TemporalNode` ) RETURN `temporalNode` {datetime: { formatted: toString(`temporalNode`.datetime) }} AS `temporalNode` ORDER BY temporalNode.datetime DESC , temporalNode.datetime ASC SKIP $offset';
38293834

38303835
t.plan(1);
38313836
return Promise.all([
@@ -3881,7 +3886,8 @@ test('Deeply nested query using temporal orderBy', t => {
38813886
}
38823887
}
38833888
}`,
3884-
expectedCypherQuery = "MATCH (`temporalNode`:`TemporalNode` ) RETURN `temporalNode` {_id: ID(`temporalNode`),datetime: { year: `temporalNode`.datetime.year , month: `temporalNode`.datetime.month , day: `temporalNode`.datetime.day , hour: `temporalNode`.datetime.hour , minute: `temporalNode`.datetime.minute , second: `temporalNode`.datetime.second , millisecond: `temporalNode`.datetime.millisecond , microsecond: `temporalNode`.datetime.microsecond , nanosecond: `temporalNode`.datetime.nanosecond , timezone: `temporalNode`.datetime.timezone , formatted: toString(`temporalNode`.datetime) },temporalNodes: [sortedElement IN apoc.coll.sortMulti([(`temporalNode`)-[:`TEMPORAL`]->(`temporalNode_temporalNodes`:`TemporalNode`) | temporalNode_temporalNodes {_id: ID(`temporalNode_temporalNodes`),datetime: `temporalNode_temporalNodes`.datetime,time: `temporalNode_temporalNodes`.time,temporalNodes: [sortedElement IN apoc.coll.sortMulti([(`temporalNode_temporalNodes`)-[:`TEMPORAL`]->(`temporalNode_temporalNodes_temporalNodes`:`TemporalNode`) | temporalNode_temporalNodes_temporalNodes {_id: ID(`temporalNode_temporalNodes_temporalNodes`),datetime: `temporalNode_temporalNodes_temporalNodes`.datetime,time: `temporalNode_temporalNodes_temporalNodes`.time}], ['datetime','time']) | sortedElement { .*, datetime: {year: sortedElement.datetime.year,formatted: toString(sortedElement.datetime)},time: {hour: sortedElement.time.hour}}][1..3] }], ['^datetime']) | sortedElement { .*, datetime: {year: sortedElement.datetime.year,month: sortedElement.datetime.month,day: sortedElement.datetime.day,hour: sortedElement.datetime.hour,minute: sortedElement.datetime.minute,second: sortedElement.datetime.second,millisecond: sortedElement.datetime.millisecond,microsecond: sortedElement.datetime.microsecond,nanosecond: sortedElement.datetime.nanosecond,timezone: sortedElement.datetime.timezone,formatted: toString(sortedElement.datetime)},time: {hour: sortedElement.time.hour}}] } AS `temporalNode` ORDER BY temporalNode.datetime DESC SKIP $offset";
3889+
expectedCypherQuery =
3890+
"MATCH (`temporalNode`:`TemporalNode` ) RETURN `temporalNode` {_id: ID(`temporalNode`),datetime: { year: `temporalNode`.datetime.year , month: `temporalNode`.datetime.month , day: `temporalNode`.datetime.day , hour: `temporalNode`.datetime.hour , minute: `temporalNode`.datetime.minute , second: `temporalNode`.datetime.second , millisecond: `temporalNode`.datetime.millisecond , microsecond: `temporalNode`.datetime.microsecond , nanosecond: `temporalNode`.datetime.nanosecond , timezone: `temporalNode`.datetime.timezone , formatted: toString(`temporalNode`.datetime) },temporalNodes: [sortedElement IN apoc.coll.sortMulti([(`temporalNode`)-[:`TEMPORAL`]->(`temporalNode_temporalNodes`:`TemporalNode`) | temporalNode_temporalNodes {_id: ID(`temporalNode_temporalNodes`),datetime: `temporalNode_temporalNodes`.datetime,time: `temporalNode_temporalNodes`.time,temporalNodes: [sortedElement IN apoc.coll.sortMulti([(`temporalNode_temporalNodes`)-[:`TEMPORAL`]->(`temporalNode_temporalNodes_temporalNodes`:`TemporalNode`) | temporalNode_temporalNodes_temporalNodes {_id: ID(`temporalNode_temporalNodes_temporalNodes`),datetime: `temporalNode_temporalNodes_temporalNodes`.datetime,time: `temporalNode_temporalNodes_temporalNodes`.time}], ['datetime','time']) | sortedElement { .*, datetime: {year: sortedElement.datetime.year,formatted: toString(sortedElement.datetime)},time: {hour: sortedElement.time.hour}}][1..3] }], ['^datetime']) | sortedElement { .*, datetime: {year: sortedElement.datetime.year,month: sortedElement.datetime.month,day: sortedElement.datetime.day,hour: sortedElement.datetime.hour,minute: sortedElement.datetime.minute,second: sortedElement.datetime.second,millisecond: sortedElement.datetime.millisecond,microsecond: sortedElement.datetime.microsecond,nanosecond: sortedElement.datetime.nanosecond,timezone: sortedElement.datetime.timezone,formatted: toString(sortedElement.datetime)},time: {hour: sortedElement.time.hour}}] } AS `temporalNode` ORDER BY temporalNode.datetime DESC SKIP $offset";
38853891

38863892
t.plan(1);
38873893
return Promise.all([

0 commit comments

Comments
 (0)