Skip to content

Commit

Permalink
fix: Changes from lint
Browse files Browse the repository at this point in the history
  • Loading branch information
cloud-sdk-js committed Jul 8, 2024
1 parent 55850ae commit df7f21e
Show file tree
Hide file tree
Showing 5 changed files with 531 additions and 481 deletions.
168 changes: 88 additions & 80 deletions packages/ai-core/src/client-tests/artifact.unit.test.ts
Original file line number Diff line number Diff line change
@@ -1,94 +1,102 @@
import nock from 'nock';
import { HttpDestination } from '@sap-cloud-sdk/connectivity';
import {
ArtifactApi,
ArtifactCreationResponse,
ArtifactList,
ArtifactPostData,
Artifact
} from '../index.js'
ArtifactApi,
ArtifactCreationResponse,
ArtifactList,
ArtifactPostData,
Artifact
} from '../index.js';

describe('artifact unit tests', () => {
let destination: HttpDestination;
let destination: HttpDestination;

beforeAll(() => {
destination = {
url: 'https://api.ai.intprod-eu12.eu-central-1.aws.ml.hana.ondemand.com/v2'
}
});
beforeAll(() => {
destination = {
url: 'https://api.ai.intprod-eu12.eu-central-1.aws.ml.hana.ondemand.com/v2'
};
});

afterEach(() => {
nock.cleanAll();
});

afterEach(() => {
nock.cleanAll();
});

it('get artifact parses a successful response', async () => {
nock(destination.url)
.get('/lm/artifacts')
.reply(200, {
count: 1,
resources: [
{
createdAt: '2024-07-08T13:36:41Z',
description: 'dataset for training test',
id: '08b9e4a4-2cea-4a3c-a509-9308d92bda85',
kind: 'dataset',
modifiedAt: '2024-07-08T13:36:41Z',
name: 'i745181-test-data',
scenarioId: 'foundation-models',
url: 'ai://default/spam/data'
}
]
}, {
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
});
it('get artifact parses a successful response', async () => {
nock(destination.url)
.get('/lm/artifacts')
.reply(
200,
{
count: 1,
resources: [
{
createdAt: '2024-07-08T13:36:41Z',
description: 'dataset for training test',
id: '08b9e4a4-2cea-4a3c-a509-9308d92bda85',
kind: 'dataset',
modifiedAt: '2024-07-08T13:36:41Z',
name: 'i745181-test-data',
scenarioId: 'foundation-models',
url: 'ai://default/spam/data'
}
]
},
{
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
}
);

const result: ArtifactList =
await ArtifactApi.artifactQuery({}, {'AI-Resource-Group': 'default'})
.execute(destination);
const result: ArtifactList = await ArtifactApi.artifactQuery(
{},
{ 'AI-Resource-Group': 'default' }
).execute(destination);

expect(result).toBeTruthy();
expect(result.count).toBe(1);
expect(result.resources.length).toBe(1);
expect(result).toBeTruthy();
expect(result.count).toBe(1);
expect(result.resources.length).toBe(1);

const artifact: Artifact = result.resources[0];
expect(artifact.createdAt).toBe('2024-07-08T13:36:41Z');
expect(artifact.description).toBe('dataset for training test');
expect(artifact.id).toBe('08b9e4a4-2cea-4a3c-a509-9308d92bda85');
expect(artifact.kind).toBe('dataset');
expect(artifact.modifiedAt).toBe('2024-07-08T13:36:41Z');
expect(artifact.name).toBe('i745181-test-data');
expect(artifact.scenarioId).toBe('foundation-models');
expect(artifact.url).toBe('ai://default/spam/data');
});
const artifact: Artifact = result.resources[0];
expect(artifact.createdAt).toBe('2024-07-08T13:36:41Z');
expect(artifact.description).toBe('dataset for training test');
expect(artifact.id).toBe('08b9e4a4-2cea-4a3c-a509-9308d92bda85');
expect(artifact.kind).toBe('dataset');
expect(artifact.modifiedAt).toBe('2024-07-08T13:36:41Z');
expect(artifact.name).toBe('i745181-test-data');
expect(artifact.scenarioId).toBe('foundation-models');
expect(artifact.url).toBe('ai://default/spam/data');
});

it('post artifact parses a successful response', async () => {
nock(destination.url)
.post('/lm/artifacts')
.reply(200, {
id: '08b9e4a4-2cea-4a3c-a509-9308d92bda85',
message: 'Artifact acknowledged',
url: 'ai://default/spam/data'
}, {
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
});
it('post artifact parses a successful response', async () => {
nock(destination.url).post('/lm/artifacts').reply(
200,
{
id: '08b9e4a4-2cea-4a3c-a509-9308d92bda85',
message: 'Artifact acknowledged',
url: 'ai://default/spam/data'
},
{
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
}
);

const artifactPostData: ArtifactPostData = {
description: 'dataset for training test',
kind: 'dataset',
name: 'i745181-test-data',
scenarioId: 'foundation-models',
url: 'ai://default/spam/data'
};
const artifactPostData: ArtifactPostData = {
description: 'dataset for training test',
kind: 'dataset',
name: 'i745181-test-data',
scenarioId: 'foundation-models',
url: 'ai://default/spam/data'
};

const result: ArtifactCreationResponse = await ArtifactApi
.artifactCreate(artifactPostData, {'AI-Resource-Group': 'default'})
.execute(destination);
const result: ArtifactCreationResponse = await ArtifactApi.artifactCreate(
artifactPostData,
{ 'AI-Resource-Group': 'default' }
).execute(destination);

expect(result).toBeTruthy();
expect(result.id).toBe('08b9e4a4-2cea-4a3c-a509-9308d92bda85');
expect(result.message).toBe('Artifact acknowledged');
expect(result.url).toBe('ai://default/spam/data');
});
});
expect(result).toBeTruthy();
expect(result.id).toBe('08b9e4a4-2cea-4a3c-a509-9308d92bda85');
expect(result.message).toBe('Artifact acknowledged');
expect(result.url).toBe('ai://default/spam/data');
});
});
192 changes: 100 additions & 92 deletions packages/ai-core/src/client-tests/configuration.unit.test.ts
Original file line number Diff line number Diff line change
@@ -1,107 +1,115 @@
import nock from 'nock';
import { HttpDestination } from '@sap-cloud-sdk/connectivity';
import {
ConfigurationApi,
ConfigurationBaseData,
ConfigurationCreationResponse,
ConfigurationList,
Configuration
} from '../index.js'
ConfigurationApi,
ConfigurationBaseData,
ConfigurationCreationResponse,
ConfigurationList,
Configuration
} from '../index.js';

describe('configuration unit tests', () => {
let destination: HttpDestination;
let destination: HttpDestination;

beforeAll(() => {
destination = {
url: 'https://api.ai.intprod-eu12.eu-central-1.aws.ml.hana.ondemand.com/v2'
}
});
beforeAll(() => {
destination = {
url: 'https://api.ai.intprod-eu12.eu-central-1.aws.ml.hana.ondemand.com/v2'
};
});

afterEach(() => {
nock.cleanAll();
});

it('get configuration parses a successful response', async () => {
nock(destination.url)
.get('/lm/configurations')
.reply(200, {
count: 1,
resources: [
{
createdAt: '2024-04-17T15:19:45Z',
executableId: 'azure-openai',
id: '7652a231-ba9b-4fcc-b473-2c355cb21b61',
inputArtifactBindings: [],
name: 'gpt-4-32k',
parameterBindings: [
{
key: 'modelName',
value: 'gpt-4-32k'
},
{
key: 'modelVersion',
value: 'latest'
}
],
scenarioId: 'foundation-models'
}
]
}, {
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
});
afterEach(() => {
nock.cleanAll();
});

const result: ConfigurationList =
await ConfigurationApi.configurationQuery({}, {'AI-Resource-Group': 'default'})
.execute(destination);
it('get configuration parses a successful response', async () => {
nock(destination.url)
.get('/lm/configurations')
.reply(
200,
{
count: 1,
resources: [
{
createdAt: '2024-04-17T15:19:45Z',
executableId: 'azure-openai',
id: '7652a231-ba9b-4fcc-b473-2c355cb21b61',
inputArtifactBindings: [],
name: 'gpt-4-32k',
parameterBindings: [
{
key: 'modelName',
value: 'gpt-4-32k'
},
{
key: 'modelVersion',
value: 'latest'
}
],
scenarioId: 'foundation-models'
}
]
},
{
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
}
);

expect(result).toBeTruthy();
expect(result.count).toBe(1);
expect(result.resources.length).toBe(1);
const result: ConfigurationList = await ConfigurationApi.configurationQuery(
{},
{ 'AI-Resource-Group': 'default' }
).execute(destination);

const configuration: Configuration = result.resources[0];
const parameterBindings = configuration.parameterBindings ?? [];
expect(result).toBeTruthy();
expect(result.count).toBe(1);
expect(result.resources.length).toBe(1);

expect(configuration.createdAt).toBe('2024-04-17T15:19:45Z');
expect(configuration.executableId).toBe('azure-openai');
expect(configuration.id).toBe('7652a231-ba9b-4fcc-b473-2c355cb21b61');
expect(configuration.name).toBe('gpt-4-32k');
expect(parameterBindings[0]?.key).toBe('modelName');
expect(parameterBindings[0]?.value).toBe('gpt-4-32k');
expect(parameterBindings[1]?.key).toBe('modelVersion');
expect(parameterBindings[1]?.value).toBe('latest');
expect(configuration.scenarioId).toBe('foundation-models');
});
const configuration: Configuration = result.resources[0];
const parameterBindings = configuration.parameterBindings ?? [];

it('post configuration parses a successful response', async () => {
nock(destination.url)
.post('/lm/configurations')
.reply(200, {
'id': '39f08464-4407-4b98-ade1-578a5ddb08b2',
'message': 'Configuration created'
}, {
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
});
expect(configuration.createdAt).toBe('2024-04-17T15:19:45Z');
expect(configuration.executableId).toBe('azure-openai');
expect(configuration.id).toBe('7652a231-ba9b-4fcc-b473-2c355cb21b61');
expect(configuration.name).toBe('gpt-4-32k');
expect(parameterBindings[0]?.key).toBe('modelName');
expect(parameterBindings[0]?.value).toBe('gpt-4-32k');
expect(parameterBindings[1]?.key).toBe('modelVersion');
expect(parameterBindings[1]?.value).toBe('latest');
expect(configuration.scenarioId).toBe('foundation-models');
});

const configurationPostData: ConfigurationBaseData = {
name: 'i745181-test-config',
executableId: 'azure-openai',
scenarioId: 'foundation-models',
inputArtifactBindings: [
{
artifactId: '08b9e4a4-2cea-4a3c-a509-9308d92bda85',
key: 'spam-data'
}
]
};
it('post configuration parses a successful response', async () => {
nock(destination.url).post('/lm/configurations').reply(
200,
{
id: '39f08464-4407-4b98-ade1-578a5ddb08b2',
message: 'Configuration created'
},
{
'Content-Type': 'application/json',
'AI-Resource-Group': 'default'
}
);

const configurationPostData: ConfigurationBaseData = {
name: 'i745181-test-config',
executableId: 'azure-openai',
scenarioId: 'foundation-models',
inputArtifactBindings: [
{
artifactId: '08b9e4a4-2cea-4a3c-a509-9308d92bda85',
key: 'spam-data'
}
]
};

const result: ConfigurationCreationResponse = await ConfigurationApi
.configurationCreate(configurationPostData, {'AI-Resource-Group': 'default'})
.execute(destination);
const result: ConfigurationCreationResponse =
await ConfigurationApi.configurationCreate(configurationPostData, {
'AI-Resource-Group': 'default'
}).execute(destination);

expect(result).toBeTruthy();
expect(result.id).toBe('39f08464-4407-4b98-ade1-578a5ddb08b2');
expect(result.message).toBe('Configuration created');
});
});
expect(result).toBeTruthy();
expect(result.id).toBe('39f08464-4407-4b98-ade1-578a5ddb08b2');
expect(result.message).toBe('Configuration created');
});
});
Loading

0 comments on commit df7f21e

Please sign in to comment.