Skip to content

Commit 6d5aeb3

Browse files
committed
fix: export files should use version without revision
1 parent 0e94d38 commit 6d5aeb3

File tree

4 files changed

+24
-17
lines changed

4 files changed

+24
-17
lines changed

src/strategies/export-rest-document.strategy.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import {
2525
ZippableDocument,
2626
} from '../types'
2727
import { REST_DOCUMENT_TYPE } from '../apitypes'
28-
import { getDocumentTitle } from '../utils'
28+
import { getDocumentTitle, getSplittedVersionKey } from '../utils'
2929
import { OpenApiExtensionKey } from '@netcracker/qubership-apihub-api-unifier'
3030
import { removeOasExtensions } from '../utils/removeOasExtensions'
3131
import {
@@ -67,12 +67,13 @@ export class ExportRestDocumentStrategy implements BuilderStrategy {
6767
async execute(config: ExportRestDocumentBuildConfig, buildResult: BuildResult, contexts: BuildTypeContexts): Promise<BuildResult> {
6868
const { builderContext } = contexts
6969
const { rawDocumentResolver, templateResolver, packageResolver } = builderContext(config)
70-
const { packageId, version, documentId, format, allowedOasExtensions } = config
70+
const { packageId, version: versionWithRevision, documentId, format, allowedOasExtensions } = config
71+
const [version] = getSplittedVersionKey(versionWithRevision)
7172

7273
const file = await rawDocumentResolver(
73-
version,
74+
versionWithRevision,
7475
packageId,
75-
documentId, //document.slug,
76+
documentId,
7677
)
7778
const { name: packageName } = await packageResolver(packageId)
7879

src/strategies/export-rest-operations-group.strategy.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import {
3030
} from '../types'
3131
import { DocumentGroupStrategy } from './document-group.strategy'
3232
import { MergedDocumentGroupStrategy } from './merged-document-group.strategy'
33-
import { EXPORT_FORMAT_TO_FILE_FORMAT, getDocumentTitle } from '../utils'
33+
import { EXPORT_FORMAT_TO_FILE_FORMAT, getDocumentTitle, getSplittedVersionKey } from '../utils'
3434
import { OpenApiExtensionKey } from '@netcracker/qubership-apihub-api-unifier'
3535
import { BUILD_TYPE } from '../consts'
3636
import { isRestDocument, REST_DOCUMENT_TYPE } from '../apitypes'
@@ -57,7 +57,8 @@ export class ExportRestOperationsGroupStrategy implements BuilderStrategy {
5757
}
5858

5959
async function exportMergedDocument(config: ExportRestOperationsGroupBuildConfig, buildResult: BuildResult, contexts: BuildTypeContexts): Promise<BuildResult> {
60-
const { packageId, version, groupName, format = JSON_EXPORT_GROUP_FORMAT, allowedOasExtensions } = config
60+
const { packageId, version: versionWithRevision, groupName, format = JSON_EXPORT_GROUP_FORMAT, allowedOasExtensions } = config
61+
const [version] = getSplittedVersionKey(versionWithRevision)
6162
const { templateResolver, packageResolver } = contexts.builderContext(config)
6263
const { name: packageName } = await packageResolver(packageId)
6364

@@ -96,7 +97,8 @@ async function exportMergedDocument(config: ExportRestOperationsGroupBuildConfig
9697
}
9798

9899
async function exportReducedDocuments(config: ExportRestOperationsGroupBuildConfig, buildResult: BuildResult, contexts: BuildTypeContexts): Promise<BuildResult> {
99-
const { packageId, version, groupName, format = JSON_EXPORT_GROUP_FORMAT, allowedOasExtensions } = config
100+
const { packageId, version: versionWithRevision, groupName, format = JSON_EXPORT_GROUP_FORMAT, allowedOasExtensions } = config
101+
const [version] = getSplittedVersionKey(versionWithRevision)
100102
const { templateResolver, packageResolver } = contexts.builderContext(config)
101103
const { name: packageName } = await packageResolver(packageId)
102104

src/strategies/export-version.strategy.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import {
2626
ResolvedVersionDocument,
2727
ZippableDocument,
2828
} from '../types'
29-
import { getDocumentTitle } from '../utils'
29+
import { getDocumentTitle, getSplittedVersionKey } from '../utils'
3030
import {
3131
createCommonStaticExportDocuments,
3232
createExportDocument,
@@ -94,17 +94,18 @@ export class ExportVersionStrategy implements BuilderStrategy {
9494
async execute(config: ExportVersionBuildConfig, buildResult: BuildResult, contexts: BuildTypeContexts): Promise<BuildResult> {
9595
const { builderContext } = contexts
9696
const { versionDocumentsResolver, rawDocumentResolver, templateResolver, packageResolver } = builderContext(config)
97-
const { packageId, version, format = JSON_EXPORT_GROUP_FORMAT, allowedOasExtensions } = config
97+
const { packageId, version: versionWithRevision, format = JSON_EXPORT_GROUP_FORMAT, allowedOasExtensions } = config
98+
const [version] = getSplittedVersionKey(versionWithRevision)
9899
const { name: packageName } = await packageResolver(packageId)
99100

100101
const { documents } = await versionDocumentsResolver(
101-
version,
102+
versionWithRevision,
102103
packageId,
103104
) ?? { documents: [] }
104105

105106
const generatedHtmlExportDocuments: ZippableDocument[] = []
106107
const transformedDocuments = await Promise.all(documents.map(async document => {
107-
const file = await rawDocumentResolver(version, packageId, document.slug)
108+
const file = await rawDocumentResolver(versionWithRevision, packageId, document.slug)
108109
return await createTransformedDocument(document, file, format, packageName, version, generatedHtmlExportDocuments, templateResolver, allowedOasExtensions)
109110
}))
110111

test/export.test.ts

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,12 @@ const groupToOperationIdsMap2 = {
3838
],
3939
}
4040

41+
const REGULAR_VERSION = 'regular-version@123'
42+
const SINGLE_DOCUMENT_VERSION = 'single-document-version@24'
43+
4144
const COMMON_GROUP_EXPORT_CONFIG = {
4245
packageId: 'export',
43-
version: 'regular-version',
46+
version: REGULAR_VERSION,
4447
groupName: GROUP_NAME,
4548
}
4649

@@ -61,8 +64,8 @@ const COMMON_MERGED_GROUP_EXPORT_CONFIG: Partial<ExportRestOperationsGroupBuildC
6164
describe('Export test', () => {
6265
beforeAll(async () => {
6366
pkg = LocalRegistry.openPackage('export')
64-
await pkg.publish(pkg.packageId, {version: 'regular-version'})
65-
await pkg.publish(pkg.packageId, {version: 'single-document-version', files: [{fileId: '1.yaml'}]})
67+
await pkg.publish(pkg.packageId, {version: REGULAR_VERSION})
68+
await pkg.publish(pkg.packageId, {version: SINGLE_DOCUMENT_VERSION, files: [{fileId: '1.yaml'}]})
6669

6770
editor = await Editor.openProject(pkg.packageId, pkg)
6871

@@ -138,7 +141,7 @@ describe('Export test', () => {
138141

139142
test('should export single document version to html', async () => {
140143
const result = await editor.run({
141-
version: 'single-document-version',
144+
version: SINGLE_DOCUMENT_VERSION,
142145
buildType: BUILD_TYPE.EXPORT_VERSION,
143146
format: 'html',
144147
})
@@ -148,7 +151,7 @@ describe('Export test', () => {
148151

149152
test('should export single document version to json', async () => {
150153
const result = await editor.run({
151-
version: 'single-document-version',
154+
version: SINGLE_DOCUMENT_VERSION,
152155
buildType: BUILD_TYPE.EXPORT_VERSION,
153156
format: 'json',
154157
})
@@ -158,7 +161,7 @@ describe('Export test', () => {
158161

159162
test('should export single document version to yaml', async () => {
160163
const result = await editor.run({
161-
version: 'single-document-version',
164+
version: SINGLE_DOCUMENT_VERSION,
162165
buildType: BUILD_TYPE.EXPORT_VERSION,
163166
format: 'yaml',
164167
})

0 commit comments

Comments
 (0)