Skip to content

Commit f47bab3

Browse files
committed
fix: templates
1 parent a1b192c commit f47bab3

File tree

8 files changed

+17
-21
lines changed

8 files changed

+17
-21
lines changed

generators/src/main/java/com/algolia/codegen/cts/AlgoliaCTSGenerator.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,8 @@ public Map<String, Object> postProcessSupportingFileData(Map<String, Object> obj
147147

148148
// We can put whatever we want in the bundle, and it will be accessible in the template
149149
bundle.put("mode", mode);
150+
bundle.put("is" + Helpers.capitalize(client) + "Client", true);
151+
bundle.put("isSearchClient", client.contains("search")); // just so algoliasearch is treated as a search client too
150152
bundle.put("client", Helpers.createClientName(importClientName, language) + "Client");
151153
bundle.put("clientPrefix", Helpers.createClientName(importClientName, language));
152154
bundle.put("hasRegionalHost", hasRegionalHost);

generators/src/main/java/com/algolia/codegen/cts/manager/JavascriptCTSManager.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,5 +46,7 @@ public void addDataToBundle(Map<String, Object> bundle) throws GeneratorExceptio
4646
bundle.put("utilsPackageVersion", Helpers.getPackageJsonVersion("client-common"));
4747
bundle.put("algoliasearchVersion", Helpers.getPackageJsonVersion("algoliasearch"));
4848
bundle.put("initMethod", "init" + Helpers.capitalize(Helpers.camelize(client)));
49+
bundle.put("clientName", client.equals("algoliasearch") ? "liteClient" : "algoliasearch");
50+
bundle.put("importPackage", client.equals("algoliasearch") ? "algoliasearch/lite" : "algoliasearch");
4951
}
5052
}

templates/javascript/clients/algoliasearch/builds/definition.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export * from './models';
2222
export type Algoliasearch = SearchClient & {
2323
{{#dependencies}}
2424
{{#withInitMethod}}
25-
init{{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}: (initOptions: InitClientOptions {{#dependencyHasRegionalHosts}}& {{#lambda.titlecase}}{{{dependencyName}}}RegionOptions{{/lambda.titlecase}}{{/dependencyHasRegionalHosts}}) => {{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}Client;
25+
init{{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}: (initOptions{{^dependencyHasRegionalHosts}}?{{/dependencyHasRegionalHosts}}: InitClientOptions {{#dependencyHasRegionalHosts}}& {{#lambda.titlecase}}{{{dependencyName}}}RegionOptions{{/lambda.titlecase}}{{/dependencyHasRegionalHosts}}) => {{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}Client;
2626
{{/withInitMethod}}
2727
{{/dependencies}}
2828
};
@@ -50,7 +50,7 @@ export function algoliasearch(appId: string, apiKey: string, options?: ClientOpt
5050

5151
{{#dependencies}}
5252
{{#withInitMethod}}
53-
init{{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}: (initOptions: InitClientOptions {{#dependencyHasRegionalHosts}}& {{#lambda.titlecase}}{{{dependencyName}}}RegionOptions{{/lambda.titlecase}}{{/dependencyHasRegionalHosts}}): {{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}Client => {
53+
init{{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}: (initOptions: InitClientOptions {{#dependencyHasRegionalHosts}}& {{#lambda.titlecase}}{{{dependencyName}}}RegionOptions{{/lambda.titlecase}}{{/dependencyHasRegionalHosts}}{{^dependencyHasRegionalHosts}}={}{{/dependencyHasRegionalHosts}}): {{#lambda.titlecase}}{{{dependencyName}}}{{/lambda.titlecase}}Client => {
5454
return {{{dependencyName}}}Client(initOptions.appId || appId, initOptions.apiKey || apiKey, {{#dependencyHasRegionalHosts}}initOptions.region,{{/dependencyHasRegionalHosts}}initOptions.options);
5555
},
5656
{{/withInitMethod}}

templates/javascript/tests/client/benchmark.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// {{generationBanner}}
22
import { describe, test, expect } from 'vitest';
33

4-
import { {{client}}, {{#lambda.titlecase}}{{client}}{{/lambda.titlecase}} } from '{{{import}}}';
4+
import { {{{clientName}}} } from '{{{importPackage}}}';
55

66
{{#blocksBenchmark}}
77
{{> tests/client/tests}}

templates/javascript/tests/client/client.mustache

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@
33
// @ts-nocheck Failing tests will have type errors, but we cannot suppress them even with @ts-expect-error because it doesn't work for a block of lines.
44
import { describe, test, expect } from 'vitest';
55

6-
import { {{client}}, {{#lambda.titlecase}}{{client}}{{/lambda.titlecase}} } from '{{{import}}}';
6+
import { {{{clientName}}} } from '{{{importPackage}}}';
77
import { nodeEchoRequester } from '@algolia/requester-testing';
88
import type { EchoResponse } from '@algolia/requester-testing';
99

1010
const appId = 'test-app-id';
1111
const apiKey = 'test-api-key';
1212

13-
function createClient(): {{#lambda.titlecase}}{{client}}{{/lambda.titlecase}} {
14-
return {{client}}(appId, apiKey, {{#hasRegionalHost}}'{{{defaultRegion}}}', {{/hasRegionalHost}}{ requester: nodeEchoRequester() });
13+
function createClient() {
14+
return {{{clientName}}}(appId, apiKey, { requester: nodeEchoRequester() }){{^isSearchClient}}.{{{initMethod}}}({{#hasRegionalHost}} {region:'{{{defaultRegion}}}'} {{/hasRegionalHost}}){{/isSearchClient}};
1515
}
1616

1717
{{#blocksClient}}
@@ -20,14 +20,8 @@ function createClient(): {{#lambda.titlecase}}{{client}}{{/lambda.titlecase}} {
2020

2121
describe('init', () => {
2222
test('sets authMode', async () => {
23-
const qpClient = {{client}}('foo', 'bar', {{#hasRegionalHost}}'us',{{/hasRegionalHost}}{
24-
authMode: 'WithinQueryParameters',
25-
requester: nodeEchoRequester(),
26-
});
27-
const headerClient = {{client}}('foo', 'bar', {{#hasRegionalHost}}'us',{{/hasRegionalHost}}{
28-
authMode: 'WithinHeaders',
29-
requester: nodeEchoRequester(),
30-
});
23+
const qpClient = {{{clientName}}}('foo', 'bar', { requester: nodeEchoRequester(), authMode: 'WithinQueryParameters' }){{^isSearchClient}}.{{{initMethod}}}({{#hasRegionalHost}} {region:'us'} {{/hasRegionalHost}}){{/isSearchClient}};
24+
const headerClient = {{{clientName}}}('foo', 'bar', { requester: nodeEchoRequester(), authMode: 'WithinHeaders' }){{^isSearchClient}}.{{{initMethod}}}({{#hasRegionalHost}} {region:'us'} {{/hasRegionalHost}}){{/isSearchClient}};
3125

3226
const qpResult = (await qpClient.customGet({
3327
path: '1/foo',
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{{^autoCreateClient}}const client = {{/autoCreateClient}}{{client}}('{{parametersWithDataTypeMap.appId.value}}','{{parametersWithDataTypeMap.apiKey.value}}',{{#hasRegionalHost}}'{{parametersWithDataTypeMap.region.value}}',{{/hasRegionalHost}}{ {{#useEchoRequester}}requester: nodeEchoRequester(),{{/useEchoRequester}}{{#hasCustomHosts}}hosts:[{{#customHosts}}{ url: 'localhost', port: {{port}}, accept: 'readWrite', protocol: 'http' },{{/customHosts}}]{{/hasCustomHosts}} });
1+
{{^autoCreateClient}}const client = {{/autoCreateClient}}{{{clientName}}}('{{parametersWithDataTypeMap.appId.value}}', '{{parametersWithDataTypeMap.apiKey.value}}', { {{#useEchoRequester}}requester: nodeEchoRequester(),{{/useEchoRequester}}{{#hasCustomHosts}}hosts:[{{#customHosts}}{ url: 'localhost', port: {{port}}, accept: 'readWrite', protocol: 'http' },{{/customHosts}}]{{/hasCustomHosts}} }){{^isSearchClient}}.{{{initMethod}}}({{#hasRegionalHost}} {region:'{{{parametersWithDataTypeMap.region.value}}}'} {{/hasRegionalHost}}){{/isSearchClient}}

templates/javascript/tests/e2e/e2e.mustache

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { union } from '../helpers';
66
import * as dotenv from 'dotenv';
77

88
dotenv.config({path:'../../.env'});
9-
import { {{client}} } from '{{{import}}}';
9+
import { {{{clientName}}} } from '{{{importPackage}}}';
1010
import type { RequestOptions } from '@algolia/client-common';
1111

1212
if (!process.env.ALGOLIA_APPLICATION_ID) {
@@ -17,8 +17,7 @@ if (!process.env.{{e2eApiKey}}) {
1717
throw new Error("please provide an `{{e2eApiKey}}` env var for e2e tests");
1818
}
1919

20-
const client = {{client}}(process.env.ALGOLIA_APPLICATION_ID, process.env.{{e2eApiKey}}, {{#hasRegionalHost}}'{{{defaultRegion}}}'{{/hasRegionalHost}});
21-
20+
const client = {{{clientName}}}(process.env.ALGOLIA_APPLICATION_ID, process.env.{{e2eApiKey}}){{^isSearchClient}}.{{{initMethod}}}({{#hasRegionalHost}} {region:'{{{defaultRegion}}}'} {{/hasRegionalHost}}){{/isSearchClient}};
2221

2322
{{#blocksE2E}}
2423
describe('{{operationId}}', () => {

templates/javascript/tests/requests/requests.mustache

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
// {{generationBanner}}
22
import { describe, test, expect } from 'vitest';
33

4-
import { algoliasearch } from 'algoliasearch';
4+
import { {{{clientName}}} } from '{{{importPackage}}}';
55
import { nodeEchoRequester } from '@algolia/requester-testing';
66
import type { EchoResponse } from '@algolia/requester-testing';
77
import type { RequestOptions } from '@algolia/client-common';
88

99
const appId = process.env.ALGOLIA_APPLICATION_ID || 'test_app_id';
1010
const apiKey = process.env.ALGOLIA_SEARCH_KEY || 'test_api_key';
1111

12-
const algoliasearchClient = algoliasearch(appId, apiKey);
13-
const client = algoliasearchClient.{{{initMethod}}}({ {{#hasRegionalHost}}region:'{{{defaultRegion}}}',{{/hasRegionalHost}} options: { requester: nodeEchoRequester() }});
12+
const client = {{{clientName}}}(appId, apiKey, { requester: nodeEchoRequester() }){{^isSearchClient}}.{{{initMethod}}}({{#hasRegionalHost}} {region:'{{{defaultRegion}}}'} {{/hasRegionalHost}});{{/isSearchClient}};
1413

1514
{{#blocksRequests}}
1615
describe('{{operationId}}', () => {

0 commit comments

Comments
 (0)