Skip to content

Commit d68089e

Browse files
authored
feat(specs): update predict client API URL (#1010)
1 parent e1832d7 commit d68089e

File tree

4 files changed

+23
-14
lines changed

4 files changed

+23
-14
lines changed

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

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,9 +88,16 @@ public Map<String, Object> postProcessSupportingFileData(Map<String, Object> obj
8888

8989
Object lambda = objs.get("lambda");
9090
List<CodegenServer> servers = (List<CodegenServer>) objs.get("servers");
91-
boolean hasRegionalHost = servers
92-
.stream()
93-
.anyMatch(server -> server.variables.stream().anyMatch(variable -> variable.name.equals("region")));
91+
CodegenServerVariable regionVariable = null;
92+
outerLoop:for (CodegenServer server : servers) {
93+
for (CodegenServerVariable var : server.variables) {
94+
if (var.name.equals("region")) {
95+
regionVariable = var;
96+
break outerLoop;
97+
}
98+
}
99+
}
100+
boolean hasRegionalHost = regionVariable != null;
94101

95102
Map<String, Object> bundle = objs;
96103
bundle.clear();
@@ -106,7 +113,9 @@ public Map<String, Object> postProcessSupportingFileData(Map<String, Object> obj
106113
bundle.put("client", Utils.createClientName(importClientName, language) + "Client");
107114
bundle.put("clientPrefix", Utils.createClientName(importClientName, language));
108115
bundle.put("hasRegionalHost", hasRegionalHost);
109-
bundle.put("defaultRegion", client.equals("predict") ? "ew" : "us");
116+
if (hasRegionalHost) {
117+
bundle.put("defaultRegion", regionVariable.defaultValue);
118+
}
110119
bundle.put("lambda", lambda);
111120

112121
ctsManager.addDataToBundle(bundle);

playground/javascript/node/predict.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ const apiKey =
1010
const userId = process.env.ALGOLIA_PREDICT_USER_ID || 'user1';
1111

1212
// Init client with appId and apiKey
13-
const client = predictClient(appId, apiKey, 'ew');
13+
const client = predictClient(appId, apiKey, 'eu');
1414

1515
async function testPredict() {
1616
try {

specs/predict/spec.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,17 @@ components:
1010
apiKey:
1111
$ref: '../common/securitySchemes.yml#/apiKey'
1212
servers:
13-
- url: https://predict-api-432xa6wemq-{region}.a.run.app
13+
- url: https://predict.{region}.algolia.com
1414
variables:
1515
region:
1616
enum:
17-
- ue
18-
- ew
19-
default: ew
17+
- eu
18+
- us
19+
default: eu
2020
description: >
2121
Region where your Predict data is stored and processed:
22-
* `ew` - europe-west
23-
* `ue` - us-east.
22+
* `eu` - Europe
23+
* `us` - United States.
2424
security:
2525
- appId: []
2626
apiKey: []

tests/CTS/client/predict/parameters.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"region": ""
1212
},
1313
"expected": {
14-
"error": "`region` is required and must be one of the following: ue, ew"
14+
"error": "`region` is required and must be one of the following: eu, us"
1515
}
1616
}
1717
]
@@ -28,7 +28,7 @@
2828
"region": "not_a_region"
2929
},
3030
"expected": {
31-
"error": "`region` is required and must be one of the following: ue, ew"
31+
"error": "`region` is required and must be one of the following: eu, us"
3232
}
3333
}
3434
]
@@ -42,7 +42,7 @@
4242
"parameters": {
4343
"appId": "my-app-id",
4444
"apiKey": "my-api-key",
45-
"region": "ew"
45+
"region": "eu"
4646
},
4747
"expected": {}
4848
}

0 commit comments

Comments
 (0)