本文整理汇总了TypeScript中graphql/language/printer.print函数的典型用法代码示例。如果您正苦于以下问题:TypeScript print函数的具体用法?TypeScript print怎么用?TypeScript print使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了print函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: it
it('should get the correct mutation definition out of a mutation with multiple fragments', () => {
const mutationWithFragments = gql`
mutation {
createAuthor(firstName: "John", lastName: "Smith") {
...authorDetails
}
}
fragment authorDetails on Author {
firstName
lastName
}
`;
const expectedDoc = gql`
mutation {
createAuthor(firstName: "John", lastName: "Smith") {
...authorDetails
}
}
`;
const expectedResult: OperationDefinitionNode = expectedDoc
.definitions[0] as OperationDefinitionNode;
const actualResult = getMutationDefinition(mutationWithFragments);
assert.equal(print(actualResult), print(expectedResult));
});
示例2: it
it('should modify all definitions in a document', () => {
const testQuery = gql`
query withFragments {
user(id: 4) {
friends(first: 10) {
...friendFields
}
}
}
fragment friendFields on User {
firstName
lastName
}`;
const newQueryDoc = addTypenameToDocument(testQuery);
const expectedQuery = gql`
query withFragments {
user(id: 4) {
friends(first: 10) {
...friendFields
__typename
}
__typename
}
}
fragment friendFields on User {
firstName
lastName
__typename
}`;
assert.equal(print(expectedQuery), print(newQueryDoc));
});
示例3: it
it('should not screw up on a FragmentSpread within the query AST', () => {
const testQuery = gql`
query withFragments {
user(id: 4) {
friends(first: 10) {
...friendFields
}
}
}
`;
const expectedQuery = getQueryDefinition(gql`
query withFragments {
user(id: 4) {
friends(first: 10) {
...friendFields
__typename
}
__typename
}
}
`);
const modifiedQuery = addTypenameToDocument(testQuery);
assert.equal(
print(expectedQuery),
print(getQueryDefinition(modifiedQuery)),
);
});
示例4: it
it('should correctly add typenames', () => {
let testQuery = gql`
query {
author {
name {
firstName
lastName
}
}
}
`;
const queryDef = getQueryDefinition(testQuery);
const queryRes = addTypenameToSelectionSet(queryDef.selectionSet);
// GraphQL print the parsed, updated query and replace the trailing
// newlines.
const modifiedQueryStr = print(queryRes);
const expectedQuery = getQueryDefinition(gql`
query {
author {
name {
firstName
lastName
__typename
}
__typename
}
__typename}`);
const expectedQueryStr = print(expectedQuery);
assert.equal(expectedQueryStr, modifiedQueryStr);
});
示例5: it
it('should get query with client fields in fragment with nested fields', function() {
const query = gql`
query Simple {
...fragmentSpread
}
fragment fragmentSpread on Thing {
user {
firstName @client
lastName
}
}
`;
const expected = gql`
query Simple {
...fragmentSpread
}
fragment fragmentSpread on Thing {
user {
firstName @client
}
}
`;
const doc = getDirectivesFromDocument([{ name: 'client' }], query);
expect(print(doc)).toBe(print(expected));
});