Skip to content

Commit

Permalink
WIP: tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Niraj-Kamdar committed Nov 16, 2021
1 parent 145afa8 commit 6b213b4
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 12 deletions.
20 changes: 10 additions & 10 deletions packages/js/client/src/__tests__/Web3ApiClient.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2164,8 +2164,8 @@ enum Logger_LogLevel @imported(
expect((query.data as any).queryImplementations).toEqual([implementationUri]);
});

it("e2e Interface invoke method ", async () => {
const interfaceUri = "w3://ens/interface.eth"
it("e2e Interface invoke method", async () => {
const interfaceUri = "w3://ens/interface.eth";

const implementationApi = await buildAndDeployApi(
`${GetPathToTestApis()}/interface-invoke/test-implementation`,
Expand All @@ -2174,22 +2174,22 @@ enum Logger_LogLevel @imported(
);
const implementationUri = `w3://ens/testnet/${implementationApi.ensDomain}`;

const api = await buildAndDeployApi(
`${GetPathToTestApis()}/interface-invoke/test-api`,
ipfsProvider,
ensAddress
);
const apiUri = `w3://ens/testnet/${api.ensDomain}`;

const client = await getClient({
interfaces: [
{
interface: interfaceUri,
implementations: [implementationUri],
implementations: [apiUri],
}
],
});

const api = await buildAndDeployApi(
`${GetPathToTestApis()}/interface-invoke/test-api`,
ipfsProvider,
ensAddress
);
const apiUri = `w3://ens/testnet/${api.ensDomain}`;

const query = await client.query<{
queryMethod: string;
abstractQueryMethod: string;
Expand Down
51 changes: 49 additions & 2 deletions packages/schema/parse/src/typeInfo/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ import {
EnumDefinition,
ImportedEnumDefinition,
InterfaceDefinition,
// CapabilityType,
// CapabilityDefinition,
} from "./definitions";

export * from "./definitions";
Expand Down Expand Up @@ -69,7 +71,43 @@ export function combineTypeInfo(typeInfos: TypeInfo[]): TypeInfo {
}

for (const interfaceType of typeInfo.interfaceTypes) {
tryInsert(combined.interfaceTypes, interfaceType);
tryInsert(
combined.interfaceTypes,
interfaceType,
(a, b) => (false)
// compareImportedType,
// (
// a: InterfaceDefinition,
// b: InterfaceDefinition
// ): InterfaceDefinition => {
// const combinedCapabilities: CapabilityDefinition = {
// ...a.capabilities,
// ...b.capabilities,
// };
// const combinedCapabilityTypes = Object.keys(
// combinedCapabilities
// ) as CapabilityType[];
// for (const capability of combinedCapabilityTypes) {
// if (b.capabilities[capability] && a.capabilities[capability]) {
// const combinedModules = Array.from(
// new Set([
// ...a.capabilities[capability].modules,
// ...b.capabilities[capability].modules,
// ])
// );
// combinedCapabilities[capability] = {
// enabled: true,
// modules: combinedModules,
// };
// } else if (a.capabilities[capability]) {
// combinedCapabilities[capability] = a.capabilities[capability];
// } else if (b.capabilities[capability]) {
// combinedCapabilities[capability] = b.capabilities[capability];
// }
// }
// return { ...a, capabilities: combinedCapabilities };
// }
);
}

for (const importedObjectType of typeInfo.importedObjectTypes) {
Expand Down Expand Up @@ -100,13 +138,22 @@ const tryInsert = (
dest: GenericDefinition[],
value: GenericDefinition,
compare: (a: GenericDefinition, b: GenericDefinition) => boolean = (a, b) =>
a.type === b.type
a.type === b.type,
join?: (
dest: GenericDefinition,
source: GenericDefinition
) => GenericDefinition
) => {
const index = dest.findIndex((item: GenericDefinition) =>
compare(item, value)
);

if (index > -1) {
if (join) {
dest[index] = join(dest[index], value);
return;
}

const destType = JSON.stringify(dest[index]);
const valueType = JSON.stringify(value);
if (destType !== valueType) {
Expand Down
1 change: 1 addition & 0 deletions tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
"es5",
"dom"
],
"downlevelIteration": true,
"experimentalDecorators": true,
"moduleResolution": "node",
"declaration": true,
Expand Down

0 comments on commit 6b213b4

Please sign in to comment.