import {Id, newSystemClient, readLayerProfile, SystemError} from '../node'; import {newServiceClient as newServiceClient} from '../node'; import {globalApiUrl, globalSystemUrl, globalUniverse, layerProfileStr} from './config'; import {VyzeInterface, Client} from "../client"; export interface Object1 extends VyzeInterface<'Object1'> { id?: Id; name: string; } export interface Test1 extends VyzeInterface<'Test1'> { id?: Id; int1: number; name: string; test2: Id; } export interface Test1Multi extends VyzeInterface<'Test1Multi'> { id?: Id; int1: number; name: string; test2: Test2[]; } export interface Test2 extends VyzeInterface<'Test2'> { id?: Id; name: string; str1: string; } test('newClient returns instance', async () => { const client = new Client(newServiceClient(globalApiUrl), newSystemClient(globalSystemUrl)); const universe = await client.loadUniverse(globalUniverse)!; expect(universe).toBeTruthy(); client.system.layerProfile = readLayerProfile(layerProfileStr); }); /*test('putNode works', async () => { const client = new VyzeClient(newServiceClient(globalApiUrl), newSystemClient(globalSystemUrl)); const universe = await client.loadUniverse(globalUniverse)!; expect(universe).toBeTruthy(); client.system.layerProfile = readLayerProfile(layerProfileStr); const val = await client.putNode('Test2', { name: 'box', str1: 'str', }); if (!(val instanceof SystemError)) { expect(val['id']).toHaveLength(32); expect(val['name']).toEqual('box'); expect(val['str1']).toEqual('str'); } else { expect(false).toBeTruthy(); } }); test('putNodes works', async () => { const client = new VyzeClient(newServiceClient(globalApiUrl), newSystemClient(globalSystemUrl)); const universe = await client.loadUniverse(globalUniverse)!; expect(universe).toBeTruthy(); client.system.layerProfile = readLayerProfile(layerProfileStr); const vals = await client.putNodes('Test1Multi', [{ name: 'obj1', int1: 12, test2: [ { name: 'obj2', str1: 'str123', } ], }]); if (vals instanceof SystemError) { expect(false).toBeTruthy(); return; } expect(vals).toHaveLength(1); const val = vals[0]; expect(val.id).toHaveLength(32); expect(val.name).toEqual('obj1'); expect(val.test2).toHaveLength(1); expect(val.test2[0].id).toHaveLength(32); }); test('getNodes works', async () => { const client = new VyzeClient(newServiceClient(globalApiUrl), newSystemClient(globalSystemUrl)); const universe = await client.loadUniverse(globalUniverse)!; expect(universe).toBeTruthy(); client.system.layerProfile = readLayerProfile(layerProfileStr); const vals = await client.getNodes('Test1Multi'); if (vals instanceof SystemError) { expect(false).toBeTruthy(); return; } expect(vals.length).toBeGreaterThan(0); }); test('filter nodes works', async () => { const client = new VyzeClient(newServiceClient(globalApiUrl), newSystemClient(globalSystemUrl)); const universe = await client.loadUniverse(globalUniverse)!; expect(universe).toBeTruthy(); client.system.layerProfile = readLayerProfile(layerProfileStr); const vals = await client.getNodes('Test2', [{field: 'str1', operator: 'eq', value: 'str123'}]); if (vals instanceof SystemError) { expect(false).toBeTruthy(); return; } expect(vals).toHaveLength(1); }); test('ordering nodes works', async () => { const client = new VyzeClient(newServiceClient(globalApiUrl), newSystemClient(globalSystemUrl)); const universe = await client.loadUniverse(globalUniverse)!; expect(universe).toBeTruthy(); client.system.layerProfile = readLayerProfile(layerProfileStr); const vals = await client.getNodes('Test2', undefined, [{field: 'str1', descending: true}]); if (vals instanceof SystemError) { expect(false).toBeTruthy(); return; } expect(vals).toHaveLength(3); expect(vals[0].str1).toEqual('str123'); });*/