From 7f78dc566a708ce3f98ba315685c79a37c4706f8 Mon Sep 17 00:00:00 2001 From: Jeff Ching Date: Mon, 19 Apr 2021 13:55:36 -0700 Subject: [PATCH] fix: adjust patch rule for Java LTS strategy (#857) --- __snapshots__/java-lts.js | 144 +++++++++--------- docs/java-releases.md | 7 +- src/releasers/java-lts.ts | 9 +- src/releasers/java/bump_type.ts | 8 +- src/releasers/java/version.ts | 13 +- src/updaters/java/versions-manifest.ts | 10 +- .../java-yoshi/released-lts-versions.txt | 8 + .../java-yoshi/versions-lts-snapshot.txt | 8 + test/releasers/java-lts.ts | 12 +- test/releasers/java/version.ts | 22 ++- 10 files changed, 141 insertions(+), 100 deletions(-) create mode 100644 test/releasers/fixtures/java-yoshi/released-lts-versions.txt create mode 100644 test/releasers/fixtures/java-yoshi/versions-lts-snapshot.txt diff --git a/__snapshots__/java-lts.js b/__snapshots__/java-lts.js index a6ec31f11..0ae5d3ef9 100644 --- a/__snapshots__/java-lts.js +++ b/__snapshots__/java-lts.js @@ -3,7 +3,7 @@ exports['JavaLTS creates a release PR against a feature branch: changes'] = ` filename: CHANGELOG.md # Changelog -### [0.20.4-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.4-sp.1) (1983-10-10) +### [0.20.3-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.3-sp.1) (1983-10-10) ### Bug Fixes @@ -31,16 +31,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-trace - 0.108.1-beta-sp.1 + 0.108.0-beta-sp.1 \`\`\` If you are using Gradle, add this to your dependencies \`\`\`Groovy -compile 'com.google.cloud:google-cloud-trace:0.108.1-beta-sp.1' +compile 'com.google.cloud:google-cloud-trace:0.108.0-beta-sp.1' \`\`\` If you are using SBT, add this to your dependencies \`\`\`Scala -libraryDependencies += "com.google.cloud" % "google-cloud-trace" % "0.108.1-beta-sp.1" +libraryDependencies += "com.google.cloud" % "google-cloud-trace" % "0.108.0-beta-sp.1" \`\`\` [//]: # ({x-version-update-end}) @@ -149,7 +149,7 @@ public final class GoogleUtils { // NOTE: toString() so compiler thinks it isn't a constant, so it won't inline it // {x-version-update-start:google-api-client:current} /** Current release version. */ - public static final String VERSION = "0.20.4-sp.1".toString(); + public static final String VERSION = "0.20.3-sp.1".toString(); // {x-version-update-end:google-api-client:current} // NOTE: Integer instead of int so compiler thinks it isn't a constant, so it won't inline it @@ -211,11 +211,11 @@ filename: versions.txt # Format: # module:released-version:current-version -google-cloud-trace:0.108.1-beta-sp.1:0.108.1-beta-sp.1 -grpc-google-cloud-trace-v1:0.73.1-sp.1:0.73.1-sp.1 -grpc-google-cloud-trace-v2:0.73.1-sp.1:0.73.1-sp.1 -proto-google-cloud-trace-v1:0.73.1-sp.1:0.73.1-sp.1 -proto-google-cloud-trace-v2:0.73.1-sp.1:0.73.1-sp.1 +google-cloud-trace:0.108.0-beta-sp.1:0.108.0-beta-sp.1 +grpc-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.1 +grpc-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.1 +proto-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.1 +proto-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.1 filename: pom.xml @@ -223,7 +223,7 @@ filename: pom.xml com.google.cloud google-cloud-trace-parent pom - 0.108.1-beta-sp.1 + 0.108.0-beta-sp.1 Google Cloud Trace Parent https://github.com/googleapis/java-core @@ -387,22 +387,22 @@ filename: pom.xml com.google.api.grpc proto-google-cloud-trace-v1 - 0.73.1-sp.1 + 0.73.0-sp.1 com.google.api.grpc proto-google-cloud-trace-v2 - 0.73.1-sp.1 + 0.73.0-sp.1 com.google.api.grpc grpc-google-cloud-trace-v1 - 0.73.1-sp.1 + 0.73.0-sp.1 com.google.api.grpc grpc-google-cloud-trace-v2 - 0.73.1-sp.1 + 0.73.0-sp.1 @@ -572,11 +572,11 @@ exports['JavaLTS creates a release PR against a feature branch: options'] = ` upstreamOwner: googleapis upstreamRepo: java-trace -title: chore(1.x): release 0.20.4-sp.1 +title: chore(1.x): release 0.20.3-sp.1 branch: release-please/branches/1.x description: :robot: I have created a release \\*beep\\* \\*boop\\* --- -### [0.20.4-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.4-sp.1) (1983-10-10) +### [0.20.3-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.3-sp.1) (1983-10-10) ### Bug Fixes @@ -589,7 +589,7 @@ This PR was generated with [Release Please](https://github.com/googleapis/releas primary: 1.x force: true fork: false -message: chore(1.x): release 0.20.4-sp.1 +message: chore(1.x): release 0.20.3-sp.1 ` exports['JavaLTS creates a release PR: changes'] = ` @@ -597,7 +597,7 @@ exports['JavaLTS creates a release PR: changes'] = ` filename: CHANGELOG.md # Changelog -### [0.20.4-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.4-sp.1) (1983-10-10) +### [0.20.3-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.3-sp.1) (1983-10-10) ### Bug Fixes @@ -625,16 +625,16 @@ If you are using Maven, add this to your pom.xml file com.google.cloud google-cloud-trace - 0.108.1-beta-sp.1 + 0.108.0-beta-sp.1 \`\`\` If you are using Gradle, add this to your dependencies \`\`\`Groovy -compile 'com.google.cloud:google-cloud-trace:0.108.1-beta-sp.1' +compile 'com.google.cloud:google-cloud-trace:0.108.0-beta-sp.1' \`\`\` If you are using SBT, add this to your dependencies \`\`\`Scala -libraryDependencies += "com.google.cloud" % "google-cloud-trace" % "0.108.1-beta-sp.1" +libraryDependencies += "com.google.cloud" % "google-cloud-trace" % "0.108.0-beta-sp.1" \`\`\` [//]: # ({x-version-update-end}) @@ -743,7 +743,7 @@ public final class GoogleUtils { // NOTE: toString() so compiler thinks it isn't a constant, so it won't inline it // {x-version-update-start:google-api-client:current} /** Current release version. */ - public static final String VERSION = "0.20.4-sp.1".toString(); + public static final String VERSION = "0.20.3-sp.1".toString(); // {x-version-update-end:google-api-client:current} // NOTE: Integer instead of int so compiler thinks it isn't a constant, so it won't inline it @@ -805,11 +805,11 @@ filename: versions.txt # Format: # module:released-version:current-version -google-cloud-trace:0.108.1-beta-sp.1:0.108.1-beta-sp.1 -grpc-google-cloud-trace-v1:0.73.1-sp.1:0.73.1-sp.1 -grpc-google-cloud-trace-v2:0.73.1-sp.1:0.73.1-sp.1 -proto-google-cloud-trace-v1:0.73.1-sp.1:0.73.1-sp.1 -proto-google-cloud-trace-v2:0.73.1-sp.1:0.73.1-sp.1 +google-cloud-trace:0.108.0-beta-sp.1:0.108.0-beta-sp.1 +grpc-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.1 +grpc-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.1 +proto-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.1 +proto-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.1 filename: pom.xml @@ -817,7 +817,7 @@ filename: pom.xml com.google.cloud google-cloud-trace-parent pom - 0.108.1-beta-sp.1 + 0.108.0-beta-sp.1 Google Cloud Trace Parent https://github.com/googleapis/java-core @@ -981,22 +981,22 @@ filename: pom.xml com.google.api.grpc proto-google-cloud-trace-v1 - 0.73.1-sp.1 + 0.73.0-sp.1 com.google.api.grpc proto-google-cloud-trace-v2 - 0.73.1-sp.1 + 0.73.0-sp.1 com.google.api.grpc grpc-google-cloud-trace-v1 - 0.73.1-sp.1 + 0.73.0-sp.1 com.google.api.grpc grpc-google-cloud-trace-v2 - 0.73.1-sp.1 + 0.73.0-sp.1 @@ -1166,11 +1166,11 @@ exports['JavaLTS creates a release PR: options'] = ` upstreamOwner: googleapis upstreamRepo: java-trace -title: chore: release 0.20.4-sp.1 +title: chore: release 0.20.3-sp.1 branch: release-please/branches/master description: :robot: I have created a release \\*beep\\* \\*boop\\* --- -### [0.20.4-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.4-sp.1) (1983-10-10) +### [0.20.3-sp.1](https://www.github.com/googleapis/java-trace/compare/0.20.3...v0.20.3-sp.1) (1983-10-10) ### Bug Fixes @@ -1183,7 +1183,7 @@ This PR was generated with [Release Please](https://github.com/googleapis/releas primary: master force: true fork: false -message: chore: release 0.20.4-sp.1 +message: chore: release 0.20.3-sp.1 ` exports['JavaLTS creates a snapshot PR if an explicit release is requested, but a snapshot is needed: changes'] = ` @@ -1192,11 +1192,11 @@ filename: versions.txt # Format: # module:released-version:current-version -google-cloud-trace:0.108.0-beta:0.108.1-beta-SNAPSHOT -grpc-google-cloud-trace-v1:0.73.0:0.73.1-SNAPSHOT -grpc-google-cloud-trace-v2:0.73.0:0.73.1-SNAPSHOT -proto-google-cloud-trace-v1:0.73.0:0.73.1-SNAPSHOT -proto-google-cloud-trace-v2:0.73.0:0.73.1-SNAPSHOT +google-cloud-trace:0.108.0-beta-sp.1:0.108.0-beta-sp.2-SNAPSHOT +grpc-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT +grpc-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT +proto-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT +proto-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT filename: pom.xml @@ -1204,7 +1204,7 @@ filename: pom.xml com.google.cloud google-cloud-trace-parent pom - 0.108.1-beta-SNAPSHOT + 0.108.0-beta-sp.2-SNAPSHOT Google Cloud Trace Parent https://github.com/googleapis/java-core @@ -1368,22 +1368,22 @@ filename: pom.xml com.google.api.grpc proto-google-cloud-trace-v1 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT com.google.api.grpc proto-google-cloud-trace-v2 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT com.google.api.grpc grpc-google-cloud-trace-v1 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT com.google.api.grpc grpc-google-cloud-trace-v2 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT @@ -1553,7 +1553,7 @@ exports['JavaLTS creates a snapshot PR if an explicit release is requested, but upstreamOwner: googleapis upstreamRepo: java-trace -title: chore: release 0.20.4-SNAPSHOT +title: chore: release 0.20.3-sp.1-SNAPSHOT branch: release-please/branches/master description: :robot: I have created a release \\*beep\\* \\*boop\\* --- @@ -1565,7 +1565,7 @@ This PR was generated with [Release Please](https://github.com/googleapis/releas primary: master force: true fork: false -message: chore: release 0.20.4-SNAPSHOT +message: chore: release 0.20.3-sp.1-SNAPSHOT ` exports['JavaLTS creates a snapshot PR, when latest release sha is head: changes'] = ` @@ -1574,11 +1574,11 @@ filename: versions.txt # Format: # module:released-version:current-version -google-cloud-trace:0.108.0-beta:0.108.1-beta-SNAPSHOT -grpc-google-cloud-trace-v1:0.73.0:0.73.1-SNAPSHOT -grpc-google-cloud-trace-v2:0.73.0:0.73.1-SNAPSHOT -proto-google-cloud-trace-v1:0.73.0:0.73.1-SNAPSHOT -proto-google-cloud-trace-v2:0.73.0:0.73.1-SNAPSHOT +google-cloud-trace:0.108.0-beta:0.108.0-beta-sp.1-SNAPSHOT +grpc-google-cloud-trace-v1:0.73.0:0.73.0-sp.1-SNAPSHOT +grpc-google-cloud-trace-v2:0.73.0:0.73.0-sp.1-SNAPSHOT +proto-google-cloud-trace-v1:0.73.0:0.73.0-sp.1-SNAPSHOT +proto-google-cloud-trace-v2:0.73.0:0.73.0-sp.1-SNAPSHOT filename: pom.xml @@ -1586,7 +1586,7 @@ filename: pom.xml com.google.cloud google-cloud-trace-parent pom - 0.108.1-beta-SNAPSHOT + 0.108.0-beta-sp.1-SNAPSHOT Google Cloud Trace Parent https://github.com/googleapis/java-core @@ -1750,22 +1750,22 @@ filename: pom.xml com.google.api.grpc proto-google-cloud-trace-v1 - 0.73.1-SNAPSHOT + 0.73.0-sp.1-SNAPSHOT com.google.api.grpc proto-google-cloud-trace-v2 - 0.73.1-SNAPSHOT + 0.73.0-sp.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-trace-v1 - 0.73.1-SNAPSHOT + 0.73.0-sp.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-trace-v2 - 0.73.1-SNAPSHOT + 0.73.0-sp.1-SNAPSHOT @@ -1935,7 +1935,7 @@ exports['JavaLTS creates a snapshot PR, when latest release sha is head: options upstreamOwner: googleapis upstreamRepo: java-trace -title: chore: release 0.20.4-SNAPSHOT +title: chore: release 0.20.3-sp.1-SNAPSHOT branch: release-please/branches/master description: :robot: I have created a release \\*beep\\* \\*boop\\* --- @@ -1947,7 +1947,7 @@ This PR was generated with [Release Please](https://github.com/googleapis/releas primary: master force: true fork: false -message: chore: release 0.20.4-SNAPSHOT +message: chore: release 0.20.3-sp.1-SNAPSHOT ` exports['JavaLTS creates a snapshot PR: changes'] = ` @@ -1956,11 +1956,11 @@ filename: versions.txt # Format: # module:released-version:current-version -google-cloud-trace:0.108.0-beta:0.108.1-beta-SNAPSHOT -grpc-google-cloud-trace-v1:0.73.0:0.73.1-SNAPSHOT -grpc-google-cloud-trace-v2:0.73.0:0.73.1-SNAPSHOT -proto-google-cloud-trace-v1:0.73.0:0.73.1-SNAPSHOT -proto-google-cloud-trace-v2:0.73.0:0.73.1-SNAPSHOT +google-cloud-trace:0.108.0-beta-sp.1:0.108.0-beta-sp.2-SNAPSHOT +grpc-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT +grpc-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT +proto-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT +proto-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.2-SNAPSHOT filename: pom.xml @@ -1968,7 +1968,7 @@ filename: pom.xml com.google.cloud google-cloud-trace-parent pom - 0.108.1-beta-SNAPSHOT + 0.108.0-beta-sp.2-SNAPSHOT Google Cloud Trace Parent https://github.com/googleapis/java-core @@ -2132,22 +2132,22 @@ filename: pom.xml com.google.api.grpc proto-google-cloud-trace-v1 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT com.google.api.grpc proto-google-cloud-trace-v2 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT com.google.api.grpc grpc-google-cloud-trace-v1 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT com.google.api.grpc grpc-google-cloud-trace-v2 - 0.73.1-SNAPSHOT + 0.73.0-sp.2-SNAPSHOT @@ -2317,7 +2317,7 @@ exports['JavaLTS creates a snapshot PR: options'] = ` upstreamOwner: googleapis upstreamRepo: java-trace -title: chore: release 0.20.4-SNAPSHOT +title: chore: release 0.20.3-sp.1-SNAPSHOT branch: release-please/branches/master description: :robot: I have created a release \\*beep\\* \\*boop\\* --- @@ -2329,5 +2329,5 @@ This PR was generated with [Release Please](https://github.com/googleapis/releas primary: master force: true fork: false -message: chore: release 0.20.4-SNAPSHOT +message: chore: release 0.20.3-sp.1-SNAPSHOT ` diff --git a/docs/java-releases.md b/docs/java-releases.md index 820a96ca9..f3de3a16b 100644 --- a/docs/java-releases.md +++ b/docs/java-releases.md @@ -39,5 +39,8 @@ version with an associated major version bump. This is a special case versioning strategy where we adopt a custom versioning scheme and is meant to be used against an LTS branch. Consider an LTS branch cut from the -mainline at version `1.2.3`. The next version proposed will be `1.2.4-lts.1`, followed -by `1.2.4-lts.2`. +mainline at version `1.2.3`. The next version proposed will be `1.2.3-sp.1`, followed +by `1.2.3-lts.2`. + +For LTS releases, we use a special "lts-snapshot" bump which will make the version +following `1.2.3-sp.1` be `1.2.3-sp.2-SNAPSHOT`. diff --git a/src/releasers/java-lts.ts b/src/releasers/java-lts.ts index 1c37cbffb..4f8325100 100644 --- a/src/releasers/java-lts.ts +++ b/src/releasers/java-lts.ts @@ -29,7 +29,12 @@ export class JavaLTS extends JavaYoshi { _latestTag: GitHubTag | undefined, currentVersions: VersionsMap ): Promise { - const bumpType = this.snapshot ? 'snapshot' : 'lts'; + // Example versioning: + // 1.2.3 + // 1.2.3-sp.1-SNAPSHOT + // 1.2.3-sp.1 + // 1.2.3-sp.2-SNAPSHOT + const bumpType = this.snapshot ? 'lts-snapshot' : 'lts'; const newVersions: VersionsMap = new Map(); for (const [k, version] of currentVersions) { newVersions.set(k, Version.parse(version).bump(bumpType).toString()); @@ -42,7 +47,7 @@ export class JavaLTS extends JavaYoshi { latestTag: GitHubTag | undefined, _preRelease = false ): Promise { - const bumpType = this.snapshot ? 'snapshot' : 'lts'; + const bumpType = this.snapshot ? 'lts-snapshot' : 'lts'; const version = Version.parse( latestTag?.version ?? this.defaultInitialVersion() diff --git a/src/releasers/java/bump_type.ts b/src/releasers/java/bump_type.ts index c1eea4b2e..77d88f09c 100644 --- a/src/releasers/java/bump_type.ts +++ b/src/releasers/java/bump_type.ts @@ -14,7 +14,13 @@ import * as semver from 'semver'; -export type BumpType = 'major' | 'minor' | 'patch' | 'snapshot' | 'lts'; +export type BumpType = + | 'major' + | 'minor' + | 'patch' + | 'snapshot' + | 'lts' + | 'lts-snapshot'; export function maxBumpType(bumpTypes: BumpType[]): BumpType { if (bumpTypes.some(bumpType => bumpType === 'major')) { diff --git a/src/releasers/java/version.ts b/src/releasers/java/version.ts index 5441a3319..b2a5f195f 100644 --- a/src/releasers/java/version.ts +++ b/src/releasers/java/version.ts @@ -94,15 +94,22 @@ export class Version { break; case 'lts': if (this.lts) { - this.lts += 1; - } else { if (!this.snapshot) { - this.patch += 1; + this.lts += 1; } + } else { this.lts = 1; } this.snapshot = false; break; + case 'lts-snapshot': + if (this.lts) { + this.lts += 1; + } else { + this.lts = 1; + } + this.snapshot = true; + break; default: throw Error(`unsupported bump type: ${bumpType}`); } diff --git a/src/updaters/java/versions-manifest.ts b/src/updaters/java/versions-manifest.ts index e2bda15f7..7cd91c5da 100644 --- a/src/updaters/java/versions-manifest.ts +++ b/src/updaters/java/versions-manifest.ts @@ -33,20 +33,14 @@ export class VersionsManifest extends JavaUpdate { if (version.includes('SNAPSHOT')) { newLines.push( line.replace( - new RegExp( - `${packageName}:(.*):[0-9]+\\.[0-9]+\\.[0-9]+(-\\w+)?(-SNAPSHOT)?`, - 'g' - ), + new RegExp(`${packageName}:(.*):(.*)`, 'g'), `${packageName}:$1:${version}` ) ); } else { newLines.push( line.replace( - new RegExp( - `${packageName}:[0-9]+\\.[0-9]+\\.[0-9]+(-\\w+)?(-SNAPSHOT)?:[0-9]+\\.[0-9]+\\.[0-9]+(-\\w+)?(-SNAPSHOT)?`, - 'g' - ), + new RegExp(`${packageName}:(.*):(.*)`, 'g'), `${packageName}:${version}:${version}` ) ); diff --git a/test/releasers/fixtures/java-yoshi/released-lts-versions.txt b/test/releasers/fixtures/java-yoshi/released-lts-versions.txt new file mode 100644 index 000000000..d7d552f86 --- /dev/null +++ b/test/releasers/fixtures/java-yoshi/released-lts-versions.txt @@ -0,0 +1,8 @@ +# Format: +# module:released-version:current-version + +google-cloud-trace:0.108.0-beta-sp.1:0.108.0-beta-sp.1 +grpc-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.1 +grpc-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.1 +proto-google-cloud-trace-v1:0.73.0-sp.1:0.73.0-sp.1 +proto-google-cloud-trace-v2:0.73.0-sp.1:0.73.0-sp.1 \ No newline at end of file diff --git a/test/releasers/fixtures/java-yoshi/versions-lts-snapshot.txt b/test/releasers/fixtures/java-yoshi/versions-lts-snapshot.txt new file mode 100644 index 000000000..5b3c5536f --- /dev/null +++ b/test/releasers/fixtures/java-yoshi/versions-lts-snapshot.txt @@ -0,0 +1,8 @@ +# Format: +# module:released-version:current-version + +google-cloud-trace:0.108.0-beta:0.108.0-beta-sp.1-SNAPSHOT +grpc-google-cloud-trace-v1:0.73.0:0.73.0-sp.1-SNAPSHOT +grpc-google-cloud-trace-v2:0.73.0:0.73.0-sp.1-SNAPSHOT +proto-google-cloud-trace-v1:0.73.0:0.73.0-sp.1-SNAPSHOT +proto-google-cloud-trace-v2:0.73.0:0.73.0-sp.1-SNAPSHOT \ No newline at end of file diff --git a/test/releasers/java-lts.ts b/test/releasers/java-lts.ts index 2586bbcc2..b2bdb204e 100644 --- a/test/releasers/java-lts.ts +++ b/test/releasers/java-lts.ts @@ -86,7 +86,7 @@ describe('JavaLTS', () => { ); getFileContentsStub .withArgs('versions.txt', 'master') - .resolves(buildFileContent('versions.txt')); + .resolves(buildFileContent('versions-lts-snapshot.txt')); getFileContentsStub .withArgs('README.md', 'master') .resolves(buildFileContent('README.md')); @@ -168,7 +168,7 @@ describe('JavaLTS', () => { ); getFileContentsStub .withArgs('versions.txt', 'master') - .resolves(buildFileContent('released-versions.txt')); + .resolves(buildFileContent('released-lts-versions.txt')); getFileContentsStub .withArgs('README.md', 'master') .resolves(buildFileContent('README.md')); @@ -294,7 +294,7 @@ describe('JavaLTS', () => { ); getFileContentsStub .withArgs('versions.txt', 'master') - .resolves(buildFileContent('versions.txt')); + .resolves(buildFileContent('versions-lts-snapshot.txt')); getFileContentsStub.rejects( Object.assign(Error('not found'), {status: 404}) ); @@ -354,7 +354,7 @@ describe('JavaLTS', () => { ); getFileContentsStub .withArgs('versions.txt', 'master') - .resolves(buildFileContent('released-versions.txt')); + .resolves(buildFileContent('released-lts-versions.txt')); getFileContentsStub .withArgs('README.md', 'master') .resolves(buildFileContent('README.md')); @@ -439,7 +439,7 @@ describe('JavaLTS', () => { ); getFileContentsStub .withArgs('versions.txt', defaultBranch) - .resolves(buildFileContent('versions.txt')); + .resolves(buildFileContent('versions-lts-snapshot.txt')); getFileContentsStub .withArgs('README.md', defaultBranch) .resolves(buildFileContent('README.md')); @@ -524,7 +524,7 @@ describe('JavaLTS', () => { ); getFileContentsStub .withArgs('versions.txt', defaultBranch) - .resolves(buildFileContent('versions.txt')); + .resolves(buildFileContent('versions-lts-snapshot.txt')); getFileContentsStub .withArgs('README.md', defaultBranch) .resolves(buildFileContent('README.md')); diff --git a/test/releasers/java/version.ts b/test/releasers/java/version.ts index bdfae8e34..502807cd6 100644 --- a/test/releasers/java/version.ts +++ b/test/releasers/java/version.ts @@ -179,11 +179,21 @@ describe('Version', () => { const version = Version.parse('1.23.45').bump('lts'); expect(version.major).to.equal(1); expect(version.minor).to.equal(23); - expect(version.patch).to.equal(46); + expect(version.patch).to.equal(45); expect(version.extra).to.equal(''); expect(version.lts).to.equal(1); expect(version.snapshot).to.equal(false); - expect(version.toString()).to.equal('1.23.46-sp.1'); + expect(version.toString()).to.equal('1.23.45-sp.1'); + }); + it('should make an initial LTS snapshot bump', async () => { + const version = Version.parse('1.23.45').bump('lts-snapshot'); + expect(version.major).to.equal(1); + expect(version.minor).to.equal(23); + expect(version.patch).to.equal(45); + expect(version.extra).to.equal(''); + expect(version.lts).to.equal(1); + expect(version.snapshot).to.equal(true); + expect(version.toString()).to.equal('1.23.45-sp.1-SNAPSHOT'); }); it('should make an initial LTS bump on a SNAPSHOT', async () => { const version = Version.parse('1.23.45-SNAPSHOT').bump('lts'); @@ -199,14 +209,14 @@ describe('Version', () => { const version = Version.parse('1.23.45-beta').bump('lts'); expect(version.major).to.equal(1); expect(version.minor).to.equal(23); - expect(version.patch).to.equal(46); + expect(version.patch).to.equal(45); expect(version.extra).to.equal('-beta'); expect(version.lts).to.equal(1); expect(version.snapshot).to.equal(false); - expect(version.toString()).to.equal('1.23.46-beta-sp.1'); + expect(version.toString()).to.equal('1.23.45-beta-sp.1'); }); it('should make a snapshot on an LTS version', async () => { - const version = Version.parse('1.23.45-beta-sp.1').bump('snapshot'); + const version = Version.parse('1.23.45-beta-sp.1').bump('lts-snapshot'); expect(version.major).to.equal(1); expect(version.minor).to.equal(23); expect(version.patch).to.equal(45); @@ -216,7 +226,7 @@ describe('Version', () => { expect(version.toString()).to.equal('1.23.45-beta-sp.2-SNAPSHOT'); }); it('should make an LTS bump on an LTS version', async () => { - const version = Version.parse('1.23.45-beta-sp.1-SNAPSHOT').bump('lts'); + const version = Version.parse('1.23.45-beta-sp.2-SNAPSHOT').bump('lts'); expect(version.major).to.equal(1); expect(version.minor).to.equal(23); expect(version.patch).to.equal(45);