From 46fd3a2b9abd37dda9013d69cb2956248c97dcee Mon Sep 17 00:00:00 2001 From: Simonas Karuzas Date: Wed, 8 Jul 2020 15:41:20 +0300 Subject: [PATCH] test: GraphQL integration tests passing --- .../daf-graphql/src/methods/data-store-orm.ts | 81 +++++++++++++++++++ packages/daf-graphql/src/methods/index.ts | 4 + packages/daf-graphql/src/methods/sdr.ts | 23 ++++++ 3 files changed, 108 insertions(+) create mode 100644 packages/daf-graphql/src/methods/data-store-orm.ts create mode 100644 packages/daf-graphql/src/methods/sdr.ts diff --git a/packages/daf-graphql/src/methods/data-store-orm.ts b/packages/daf-graphql/src/methods/data-store-orm.ts new file mode 100644 index 000000000..1a848132b --- /dev/null +++ b/packages/daf-graphql/src/methods/data-store-orm.ts @@ -0,0 +1,81 @@ +import { IAgentGraphQLMethod } from '../types' + +export const dataStoreORMGetMessages: IAgentGraphQLMethod = { + type: 'Query', + query: ` + query dataStoreORMGetMessages($where: [MessagesWhere], $order: [MessagesOrder], $take: Int, $skip: Int) { + dataStoreORMGetMessages(where: $where, order: $order, take: $take, skip: $skip) { + id + createdAt + expiresAt + threadId + type + raw + data + replyTo + replyUrl + from + to + metaData { + type + value + } + } + } + `, + typeDef: ` + enum WhereOperation { + Not + LessThan + LessThanOrEqual + MoreThan + MoreThanOrEqual + Equal + Like + Between + In + Any + IsNull + } + + enum OrderDirection { + ASC + DESC + } + + enum MessagesColumns { + from + to + id + createdAt + expiresAt + threadId + type + raw + replyTo + replyUrl + } + + input MessagesWhere { + column: MessagesColumns! + value: [String] + not: Boolean + op: WhereOperation + } + + input MessagesOrder { + column: MessagesColumns! + direction: OrderDirection! + } + + extend type Query { + dataStoreORMGetMessages(where: [MessagesWhere], order: [MessagesOrder], take: Int, skip: Int): [Message] + } + `, +} + +export const supportedMethods: Record = { + dataStoreORMGetMessages, +} + +export default supportedMethods diff --git a/packages/daf-graphql/src/methods/index.ts b/packages/daf-graphql/src/methods/index.ts index b672f1119..af431dc4e 100644 --- a/packages/daf-graphql/src/methods/index.ts +++ b/packages/daf-graphql/src/methods/index.ts @@ -3,10 +3,14 @@ import identityManager from './identity-manager' import resolver from './resolver' import messageHandler from './message-handler' import w3c from './w3c' +import sdr from './sdr' +import dataStoreORM from './data-store-orm' export const supportedMethods: Record = { ...identityManager, ...resolver, ...messageHandler, ...w3c, + ...sdr, + ...dataStoreORM, } diff --git a/packages/daf-graphql/src/methods/sdr.ts b/packages/daf-graphql/src/methods/sdr.ts new file mode 100644 index 000000000..62deeb60f --- /dev/null +++ b/packages/daf-graphql/src/methods/sdr.ts @@ -0,0 +1,23 @@ +import { IAgentGraphQLMethod } from '../types' + +export const getVerifiableCredentialsForSdr: IAgentGraphQLMethod = { + type: 'Query', + query: ` + query getVerifiableCredentialsForSdr($sdr: SelectiveDisclosureRequest!, $did: String) { + getVerifiableCredentialsForSdr(sdr: $sdr, did: $did) + } + `, + typeDef: ` + scalar SelectiveDisclosureRequest + scalar CredentialsForSdr + extend type Query { + getVerifiableCredentialsForSdr(sdr: SelectiveDisclosureRequest!, did: String): [CredentialsForSdr] + } + `, +} + +export const supportedMethods: Record = { + getVerifiableCredentialsForSdr, +} + +export default supportedMethods