Skip to content

Commit

Permalink
fix: base url (#102)
Browse files Browse the repository at this point in the history
  • Loading branch information
Himenon authored Mar 20, 2023
1 parent 895f7a7 commit 3857267
Show file tree
Hide file tree
Showing 16 changed files with 1,101 additions and 1,060 deletions.
1 change: 1 addition & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ jobs:
- name: Test & Build
run: |
pnpm build
pnpm test:code:gen
pnpm test
env:
CI: true
3 changes: 3 additions & 0 deletions jest.config.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
/**
* @type {import("@jest/types").Config.InitialOptions}
*/
module.exports = {
automock: false,
moduleFileExtensions: ["js", "json", "jsx", "ts", "tsx", "node"],
Expand Down
20 changes: 13 additions & 7 deletions jest.snapshot.config.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,23 @@
/**
* @type {import("@jest/types").Config.InitialOptions}
*/
module.exports = {
automock: false,
globals: {
"ts-jest": {
tsconfig: "tsconfig.test.json",
diagnostics: false,
},
},
moduleFileExtensions: ["js", "json", "jsx", "ts", "tsx", "node"],
roots: ["<rootDir>/test"],
testEnvironment: "node",
testMatch: ["**/__tests__/**/*.[jt]s?(x)", "**/?(*.)+(spec|test).[tj]s?(x)"],
transform: {
"^.+\\.tsx?$": "ts-jest",
"^.+\\.(t|j)sx?$": [
"@swc/jest",
{
jsc: {
parser :{
syntax: "typescript"
}
}
},
],
},
unmockedModulePathPatterns: ["<rootDir>/node_modules/*"],
};
2 changes: 1 addition & 1 deletion src/code-templates/_shared/MethodBody/PathParameter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ const generateUrlVariableStatement = (
expression: "this",
}),
function: factory.Identifier.create({
name: "baseUrl",
name: "_baseUrl",
}),
};
return factory.VariableStatement.create({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,26 @@ export const create = (factory: TsGenerator.Factory.Type, list: CodeGenerator.Pa
}),
],
body: factory.Block.create({
statements: [returnValue],
statements: [
factory.VariableStatement.create({
declarationList: factory.VariableDeclarationList.create({
flag: "const",
declarations: [
factory.VariableDeclaration.create({
name: "_baseUrl",
initializer: factory.CallExpression.create({
expression: factory.PropertyAccessExpression.create({
expression: "baseUrl",
name: "replace",
}),
argumentsArray: [factory.RegularExpressionLiteral.create({ text: "/\\/$/" }), factory.StringLiteral.create({ text: "" })],
}),
}),
],
}),
}),
returnValue,
],
multiLine: true,
}),
});
Expand Down
2 changes: 0 additions & 2 deletions src/internal/TsGenerator/factory/IndexSignatureDeclaration.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,10 @@ export const create =
({ factory }: Pick<ts.TransformationContext, "factory">): Factory["create"] =>
(params: Params$Create): ts.IndexSignatureDeclaration => {
const node = factory.createIndexSignature(
undefined,
undefined,
// TODO Feature Development: Refactoring
[
factory.createParameterDeclaration(
undefined,
undefined,
undefined,
factory.createIdentifier(params.name),
Expand Down
1 change: 0 additions & 1 deletion src/internal/TsGenerator/factory/ParameterDeclaration.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ export const create =
return;
})();
const node = factory.createParameterDeclaration(
undefined,
modifiers,
undefined,
factory.createIdentifier(params.name),
Expand Down
2 changes: 1 addition & 1 deletion src/meta.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
export const Name = "@himenon/openapi-typescript-code-generator";
export const Version = "0.22.1";
export const Version = "0.22.2";
25 changes: 13 additions & 12 deletions test/__tests__/functional/__snapshots__/argo-rollout-test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -3830,92 +3830,93 @@ export interface ApiClient<RequestOption> {
request: <T = SuccessResponses>(httpMethod: HttpMethod, url: string, headers: ObjectLike | any, requestBody: ObjectLike | any, queryParameters: QueryParameters | undefined, options?: RequestOption) => Promise<T>;
}
export const createClient = <RequestOption>(apiClient: ApiClient<RequestOption>, baseUrl: string) => {
const _baseUrl = baseUrl.replace(/\\/$/, "");
return {
RolloutService_GetNamespace: (option?: RequestOption): Promise<Response$RolloutService_GetNamespace$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/namespace\`;
const url = _baseUrl + \`/api/v1/namespace\`;
const headers = {
Accept: "application/json"
};
return apiClient.request("GET", url, headers, undefined, undefined, option);
},
RolloutService_ListRolloutInfos: (params: Params$RolloutService_ListRolloutInfos, option?: RequestOption): Promise<Response$RolloutService_ListRolloutInfos$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/info\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/info\`;
const headers = {
Accept: "application/json"
};
return apiClient.request("GET", url, headers, undefined, undefined, option);
},
RolloutService_WatchRolloutInfos: (params: Params$RolloutService_WatchRolloutInfos, option?: RequestOption): Promise<Response$RolloutService_WatchRolloutInfos$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/info/watch\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/info/watch\`;
const headers = {
Accept: "application/json"
};
return apiClient.request("GET", url, headers, undefined, undefined, option);
},
RolloutService_AbortRollout: (params: Params$RolloutService_AbortRollout, option?: RequestOption): Promise<Response$RolloutService_AbortRollout$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/abort\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/abort\`;
const headers = {
"Content-Type": "application/json",
Accept: "application/json"
};
return apiClient.request("PUT", url, headers, params.requestBody, undefined, option);
},
RolloutService_GetRolloutInfo: (params: Params$RolloutService_GetRolloutInfo, option?: RequestOption): Promise<Response$RolloutService_GetRolloutInfo$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/info\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/info\`;
const headers = {
Accept: "application/json"
};
return apiClient.request("GET", url, headers, undefined, undefined, option);
},
RolloutService_WatchRolloutInfo: (params: Params$RolloutService_WatchRolloutInfo, option?: RequestOption): Promise<Response$RolloutService_WatchRolloutInfo$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/info/watch\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/info/watch\`;
const headers = {
Accept: "application/json"
};
return apiClient.request("GET", url, headers, undefined, undefined, option);
},
RolloutService_PromoteRollout: (params: Params$RolloutService_PromoteRollout, option?: RequestOption): Promise<Response$RolloutService_PromoteRollout$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/promote\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/promote\`;
const headers = {
"Content-Type": "application/json",
Accept: "application/json"
};
return apiClient.request("PUT", url, headers, params.requestBody, undefined, option);
},
RolloutService_RestartRollout: (params: Params$RolloutService_RestartRollout, option?: RequestOption): Promise<Response$RolloutService_RestartRollout$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/restart\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/restart\`;
const headers = {
"Content-Type": "application/json",
Accept: "application/json"
};
return apiClient.request("PUT", url, headers, params.requestBody, undefined, option);
},
RolloutService_RetryRollout: (params: Params$RolloutService_RetryRollout, option?: RequestOption): Promise<Response$RolloutService_RetryRollout$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/retry\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.name}/retry\`;
const headers = {
"Content-Type": "application/json",
Accept: "application/json"
};
return apiClient.request("PUT", url, headers, params.requestBody, undefined, option);
},
RolloutService_SetRolloutImage: (params: Params$RolloutService_SetRolloutImage, option?: RequestOption): Promise<Response$RolloutService_SetRolloutImage$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.rollout}/set/\${params.parameter.container}/\${params.parameter.image}/\${params.parameter.tag}\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.rollout}/set/\${params.parameter.container}/\${params.parameter.image}/\${params.parameter.tag}\`;
const headers = {
"Content-Type": "application/json",
Accept: "application/json"
};
return apiClient.request("PUT", url, headers, params.requestBody, undefined, option);
},
RolloutService_UndoRollout: (params: Params$RolloutService_UndoRollout, option?: RequestOption): Promise<Response$RolloutService_UndoRollout$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.rollout}/undo/\${params.parameter.revision}\`;
const url = _baseUrl + \`/api/v1/rollouts/\${params.parameter.namespace}/\${params.parameter.rollout}/undo/\${params.parameter.revision}\`;
const headers = {
"Content-Type": "application/json",
Accept: "application/json"
};
return apiClient.request("PUT", url, headers, params.requestBody, undefined, option);
},
RolloutService_Version: (option?: RequestOption): Promise<Response$RolloutService_Version$Status$200["application/json"]> => {
const url = baseUrl + \`/api/v1/version\`;
const url = _baseUrl + \`/api/v1/version\`;
const headers = {
Accept: "application/json"
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ export interface ApiClient<RequestOption> {
request: <T = SuccessResponses>(httpMethod: HttpMethod, url: string, headers: ObjectLike | any, requestBody: ObjectLike | any, queryParameters: QueryParameters | undefined, options?: RequestOption) => Promise<T>;
}
export const createClient = <RequestOption>(apiClient: ApiClient<RequestOption>, baseUrl: string) => {
const _baseUrl = baseUrl.replace(/\\/$/, "");
return {};
};
type ClientFunction<RequestOption> = typeof createClient<RequestOption>;
Expand Down
Loading

0 comments on commit 3857267

Please sign in to comment.