11// @ts -nocheck this file is broken while the VersionsHistory is unclear
22import { describe , expect , it } from 'vitest' ;
33
4- import { fullReleaseConfig , LANGUAGES } from '../../common.js' ;
54import { generateLanguageVersionsHistory } from '../versionsHistory.js' ;
65
76describe ( 'generateLanguageVersionsHistory' , ( ) => {
8- LANGUAGES . forEach ( ( lang ) => {
9- if ( ! ( 'versionsHistory' in fullReleaseConfig ) ) {
10- fullReleaseConfig . versionsHistory = { } ;
11- }
12-
13- // @ts -expect-error
14- fullReleaseConfig . versionsHistory [ lang ] = { } ;
15- } ) ;
16-
177 describe ( 'no new releases' , ( ) => {
188 it ( 'parses version of the same minor' , ( ) => {
19- generateLanguageVersionsHistory (
9+ const versions = generateLanguageVersionsHistory (
2010 [
2111 '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ,
2212 '1.2.5 Tue Jan 2 14:17:11 2024 +0000' ,
@@ -27,32 +17,24 @@ describe('generateLanguageVersionsHistory', () => {
2717 { current : '1.2.7' , next : null , releaseType : null } ,
2818 ) ;
2919
30- // @ts -expect-error
31- expect ( fullReleaseConfig . versionsHistory . csharp ) . toEqual ( {
20+ expect ( versions ) . toEqual ( {
3221 '1.2.4' : {
3322 releaseDate : '2023-12-28' ,
34- supportEnd : '2024-01-02' ,
35- supportStatus : 'inactive' ,
3623 } ,
3724 '1.2.5' : {
3825 releaseDate : '2024-01-02' ,
39- supportEnd : '2024-01-02' ,
40- supportStatus : 'inactive' ,
4126 } ,
4227 '1.2.6' : {
4328 releaseDate : '2024-01-02' ,
44- supportEnd : '2024-01-04' ,
45- supportStatus : 'inactive' ,
4629 } ,
4730 '1.2.7' : {
4831 releaseDate : '2024-01-04' ,
49- supportStatus : 'active' ,
5032 } ,
5133 } ) ;
5234 } ) ;
5335
5436 it ( 'parses version of different same minor' , ( ) => {
55- generateLanguageVersionsHistory (
37+ const versions = generateLanguageVersionsHistory (
5638 [
5739 '1.1.4 Thu Dec 28 15:48:25 2023 +0000' ,
5840 '1.2.5 Tue Jan 2 14:17:11 2024 +0000' ,
@@ -63,84 +45,18 @@ describe('generateLanguageVersionsHistory', () => {
6345 { current : '1.4.7' , next : null , releaseType : null } ,
6446 ) ;
6547
66- // @ts -expect-error
67- expect ( fullReleaseConfig . versionsHistory . javascript ) . toEqual ( {
48+ expect ( versions ) . toEqual ( {
6849 '1.1.4' : {
6950 releaseDate : '2023-12-28' ,
70- supportEnd : '2026-01-02' ,
71- supportStart : '2024-01-02' ,
72- supportStatus : 'maintenance' ,
7351 } ,
7452 '1.2.5' : {
7553 releaseDate : '2024-01-02' ,
76- supportEnd : '2026-01-02' ,
77- supportStart : '2024-01-02' ,
78- supportStatus : 'maintenance' ,
7954 } ,
8055 '1.3.6' : {
8156 releaseDate : '2024-01-02' ,
82- supportEnd : '2026-01-04' ,
83- supportStart : '2024-01-04' ,
84- supportStatus : 'maintenance' ,
8557 } ,
8658 '1.4.7' : {
8759 releaseDate : '2024-01-04' ,
88- supportStatus : 'active' ,
89- } ,
90- } ) ;
91- } ) ;
92-
93- it ( 'ignores versions older than 2 years' , ( ) => {
94- generateLanguageVersionsHistory (
95- [
96- 'v1.0.9 Thu Dec 28 15:48:25 2011 +0000' ,
97- 'v1.1.4 Thu Dec 28 15:48:25 2021 +0000' ,
98- 'v1.4.7 Tue Jan 2 14:17:11 2024 +0000' ,
99- ] ,
100- 'php' ,
101- { current : '1.4.7' , next : null , releaseType : null } ,
102- ) ;
103-
104- // @ts -expect-error
105- expect ( fullReleaseConfig . versionsHistory . php ) . toEqual ( {
106- '1.1.4' : {
107- releaseDate : '2021-12-28' ,
108- supportEnd : '2026-01-02' ,
109- supportStart : '2024-01-02' ,
110- supportStatus : 'maintenance' ,
111- } ,
112- '1.4.7' : {
113- releaseDate : '2024-01-02' ,
114- supportStatus : 'active' ,
115- } ,
116- } ) ;
117- } ) ;
118-
119- it ( 'overrides the previously stored versions and sanitize v prefixed versions' , ( ) => {
120- // @ts -expect-error
121- fullReleaseConfig . versionsHistory . go = { '0.1.2' : { releaseDate : '2014-01-04' , supportStatus : 'active' } } ;
122-
123- generateLanguageVersionsHistory (
124- [ 'v1.1.4 Thu Dec 28 15:48:25 2023 +0000' , 'v1.4.7 Tue Jan 2 14:17:11 2024 +0000' ] ,
125- 'go' ,
126- {
127- current : '1.4.7' ,
128- next : null ,
129- releaseType : null ,
130- } ,
131- ) ;
132-
133- // @ts -expect-error
134- expect ( fullReleaseConfig . versionsHistory . go ) . toEqual ( {
135- '1.1.4' : {
136- releaseDate : '2023-12-28' ,
137- supportEnd : '2026-01-02' ,
138- supportStart : '2024-01-02' ,
139- supportStatus : 'maintenance' ,
140- } ,
141- '1.4.7' : {
142- releaseDate : '2024-01-02' ,
143- supportStatus : 'active' ,
14460 } ,
14561 } ) ;
14662 } ) ;
@@ -152,82 +68,66 @@ describe('generateLanguageVersionsHistory', () => {
15268 end . setFullYear ( start . getFullYear ( ) + 2 ) ;
15369
15470 it ( 'same version as active version' , ( ) => {
155- generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'dart' , {
71+ const versions = generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'dart' , {
15672 next : '1.2.4' ,
15773 current : '1.2.4' ,
15874 releaseType : 'minor' ,
15975 } ) ;
16076
161- // @ts -expect-error
162- expect ( fullReleaseConfig . versionsHistory . dart ) . toEqual ( {
77+ expect ( versions ) . toEqual ( {
16378 '1.2.4' : {
16479 releaseDate : '2023-12-28' ,
165- supportStatus : 'active' ,
16680 } ,
16781 } ) ;
16882 } ) ;
16983
17084 it ( 'new major: sets the new release as active, sets the last tag as maintenance' , ( ) => {
171- generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'dart' , {
85+ const versions = generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'dart' , {
17286 next : '2.0.0' ,
17387 current : '1.2.4' ,
17488 releaseType : 'major' ,
17589 } ) ;
17690
177- // @ts -expect-error
178- expect ( fullReleaseConfig . versionsHistory . dart ) . toEqual ( {
91+ expect ( versions ) . toEqual ( {
17992 '1.2.4' : {
18093 releaseDate : '2023-12-28' ,
181- supportEnd : end . toISOString ( ) . split ( 'T' ) [ 0 ] ,
182- supportStart : start . toISOString ( ) . split ( 'T' ) [ 0 ] ,
183- supportStatus : 'maintenance' ,
18494 } ,
18595 '2.0.0' : {
18696 releaseDate : start . toISOString ( ) . split ( 'T' ) [ 0 ] ,
187- supportStatus : 'active' ,
18897 } ,
18998 } ) ;
19099 } ) ;
191100
192101 it ( 'new minor: sets the new release as active, sets the last tag as maintenance' , ( ) => {
193- generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'kotlin' , {
102+ const versions = generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'kotlin' , {
194103 next : '1.3.0' ,
195104 current : '1.2.4' ,
196105 releaseType : 'minor' ,
197106 } ) ;
198107
199- // @ts -expect-error
200- expect ( fullReleaseConfig . versionsHistory . kotlin ) . toEqual ( {
108+ expect ( versions ) . toEqual ( {
201109 '1.2.4' : {
202110 releaseDate : '2023-12-28' ,
203- supportEnd : end . toISOString ( ) . split ( 'T' ) [ 0 ] ,
204- supportStart : start . toISOString ( ) . split ( 'T' ) [ 0 ] ,
205- supportStatus : 'maintenance' ,
206111 } ,
207112 '1.3.0' : {
208113 releaseDate : start . toISOString ( ) . split ( 'T' ) [ 0 ] ,
209- supportStatus : 'active' ,
210114 } ,
211115 } ) ;
212116 } ) ;
213117
214118 it ( 'new patch: sets the new release as active, sets the last tag as inactive' , ( ) => {
215- generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'swift' , {
119+ const versions = generateLanguageVersionsHistory ( [ '1.2.4 Thu Dec 28 15:48:25 2023 +0000' ] , 'swift' , {
216120 next : '1.2.5' ,
217121 current : '1.2.4' ,
218122 releaseType : 'patch' ,
219123 } ) ;
220124
221- // @ts -expect-error
222- expect ( fullReleaseConfig . versionsHistory . swift ) . toEqual ( {
125+ expect ( versions ) . toEqual ( {
223126 '1.2.4' : {
224127 releaseDate : '2023-12-28' ,
225- supportEnd : start . toISOString ( ) . split ( 'T' ) [ 0 ] ,
226- supportStatus : 'inactive' ,
227128 } ,
228129 '1.2.5' : {
229130 releaseDate : start . toISOString ( ) . split ( 'T' ) [ 0 ] ,
230- supportStatus : 'active' ,
231131 } ,
232132 } ) ;
233133 } ) ;
0 commit comments