@@ -8,10 +8,6 @@ import {
88 runGradleWithProject ,
99} from "./gradle.js" ;
1010
11- // TODO: https://github.com/microsoft/react-native-test-app/issues/2206
12- const GRADLE_HANGS_ON_WINDOWS = process . platform === "win32" ;
13- const testOptions = { skip : GRADLE_HANGS_ON_WINDOWS } ;
14-
1511describe ( "test-app-util.gradle" , ( ) => {
1612 const defaultTestProject = "TestAppUtilTest" ;
1713
@@ -25,12 +21,10 @@ describe("test-app-util.gradle", () => {
2521 }
2622
2723 after ( ( ) => {
28- if ( ! testOptions . skip ) {
29- removeProject ( defaultTestProject ) ;
30- }
24+ removeProject ( defaultTestProject ) ;
3125 } ) ;
3226
33- it ( "getAppName() returns `displayName`" , testOptions , async ( ) => {
27+ it ( "getAppName() returns `displayName`" , async ( ) => {
3428 const { status, stdout } = await runGradle ( {
3529 "app.json" : JSON . stringify ( {
3630 name : "AppName" ,
@@ -46,7 +40,7 @@ describe("test-app-util.gradle", () => {
4640 match ( stdout , / g e t A p p N a m e \( \) = A p p D i s p l a y N a m e / ) ;
4741 } ) ;
4842
49- it ( "getApplicationId() returns default id" , testOptions , async ( ) => {
43+ it ( "getApplicationId() returns default id" , async ( ) => {
5044 const { status, stdout } = await runGradle ( {
5145 "app.json" : JSON . stringify ( {
5246 name : "AppName" ,
@@ -62,7 +56,7 @@ describe("test-app-util.gradle", () => {
6256 match ( stdout , / g e t A p p l i c a t i o n I d \( \) = c o m .m i c r o s o f t .r e a c t t e s t a p p / ) ;
6357 } ) ;
6458
65- it ( "getApplicationId() returns package name" , testOptions , async ( ) => {
59+ it ( "getApplicationId() returns package name" , async ( ) => {
6660 const { status, stdout } = await runGradle ( {
6761 "app.json" : JSON . stringify ( {
6862 name : "AppName" ,
@@ -81,140 +75,116 @@ describe("test-app-util.gradle", () => {
8175 match ( stdout , / g e t A p p l i c a t i o n I d \( \) = c o m .c o n t o s o .a p p l i c a t i o n .i d / ) ;
8276 } ) ;
8377
84- it (
85- "getPackageVersionNumber() returns `react-native` version as a number" ,
86- testOptions ,
87- async ( ) => {
88- const { status, stdout } = await runGradle ( {
89- "android/build.gradle" : buildGradle (
90- 'println("getPackageVersionNumber() = " + project.ext.getPackageVersionNumber("react-native", rootDir))'
91- ) ,
92- } ) ;
93-
94- const versionNumber = toVersionNumber ( reactNativeVersion ( ) ) ;
95-
96- equal ( status , 0 ) ;
97- match (
98- stdout ,
99- new RegExp ( `getPackageVersionNumber\\(\\) = ${ versionNumber } ` )
100- ) ;
101- }
102- ) ;
103-
104- it (
105- "getSigningConfigs() fails if `storeFile` is missing" ,
106- testOptions ,
107- async ( ) => {
108- const { status, stderr } = await runGradle ( {
109- "app.json" : JSON . stringify ( {
110- name : "AppName" ,
111- displayName : "AppDisplayName" ,
112- resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
113- android : { signingConfigs : { debug : { } } } ,
114- } ) ,
115- "android/build.gradle" : buildGradle (
116- 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
117- ) ,
118- } ) ;
119-
120- equal ( status , 1 ) ;
121- match ( stderr , / s t o r e F i l e .* i s m i s s i n g / ) ;
122- }
123- ) ;
124-
125- it (
126- "getSigningConfigs() skips empty `signingConfigs` config" ,
127- testOptions ,
128- async ( ) => {
129- const { status, stdout } = await runGradle ( {
130- "app.json" : JSON . stringify ( {
131- name : "AppName" ,
132- displayName : "AppDisplayName" ,
133- resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
134- android : { signingConfigs : { } } ,
135- } ) ,
136- "android/build.gradle" : buildGradle (
137- 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
138- ) ,
139- } ) ;
140-
141- equal ( status , 0 ) ;
142- match ( stdout , / g e t S i g n i n g C o n f i g s \( \) = \[ : \] / ) ;
143- }
144- ) ;
145-
146- it (
147- "getSigningConfigs() returns debug signing config" ,
148- testOptions ,
149- async ( ) => {
150- const { status, stdout } = await runGradle ( {
151- "app.json" : JSON . stringify ( {
152- name : "AppName" ,
153- displayName : "AppDisplayName" ,
154- resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
155- android : {
156- signingConfigs : {
157- debug : {
158- storeFile : "../README.md" ,
159- } ,
78+ it ( "getPackageVersionNumber() returns `react-native` version as a number" , async ( ) => {
79+ const { status, stdout } = await runGradle ( {
80+ "android/build.gradle" : buildGradle (
81+ 'println("getPackageVersionNumber() = " + project.ext.getPackageVersionNumber("react-native", rootDir))'
82+ ) ,
83+ } ) ;
84+
85+ const versionNumber = toVersionNumber ( reactNativeVersion ( ) ) ;
86+
87+ equal ( status , 0 ) ;
88+ match (
89+ stdout ,
90+ new RegExp ( `getPackageVersionNumber\\(\\) = ${ versionNumber } ` )
91+ ) ;
92+ } ) ;
93+
94+ it ( "getSigningConfigs() fails if `storeFile` is missing" , async ( ) => {
95+ const { status, stderr } = await runGradle ( {
96+ "app.json" : JSON . stringify ( {
97+ name : "AppName" ,
98+ displayName : "AppDisplayName" ,
99+ resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
100+ android : { signingConfigs : { debug : { } } } ,
101+ } ) ,
102+ "android/build.gradle" : buildGradle (
103+ 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
104+ ) ,
105+ } ) ;
106+
107+ equal ( status , 1 ) ;
108+ match ( stderr , / s t o r e F i l e .* i s m i s s i n g / ) ;
109+ } ) ;
110+
111+ it ( "getSigningConfigs() skips empty `signingConfigs` config" , async ( ) => {
112+ const { status, stdout } = await runGradle ( {
113+ "app.json" : JSON . stringify ( {
114+ name : "AppName" ,
115+ displayName : "AppDisplayName" ,
116+ resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
117+ android : { signingConfigs : { } } ,
118+ } ) ,
119+ "android/build.gradle" : buildGradle (
120+ 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
121+ ) ,
122+ } ) ;
123+
124+ equal ( status , 0 ) ;
125+ match ( stdout , / g e t S i g n i n g C o n f i g s \( \) = \[ : \] / ) ;
126+ } ) ;
127+
128+ it ( "getSigningConfigs() returns debug signing config" , async ( ) => {
129+ const { status, stdout } = await runGradle ( {
130+ "app.json" : JSON . stringify ( {
131+ name : "AppName" ,
132+ displayName : "AppDisplayName" ,
133+ resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
134+ android : {
135+ signingConfigs : {
136+ debug : {
137+ storeFile : "../README.md" ,
160138 } ,
161139 } ,
162- } ) ,
163- "android/build.gradle" : buildGradle (
164- 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
165- ) ,
166- } ) ;
167-
168- equal ( status , 0 ) ;
169- match (
170- stdout ,
171- / g e t S i g n i n g C o n f i g s \( \) = \[ d e b u g : \[ k e y A l i a s : a n d r o i d d e b u g k e y , k e y P a s s w o r d : a n d r o i d , s t o r e P a s s w o r d : a n d r o i d , s t o r e F i l e : .* \] \] /
172- ) ;
173- }
174- ) ;
175-
176- it (
177- "getSigningConfigs() returns release signing config" ,
178- testOptions ,
179- async ( ) => {
180- const { status, stdout } = await runGradle ( {
181- "app.json" : JSON . stringify ( {
182- name : "AppName" ,
183- displayName : "AppDisplayName" ,
184- resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
185- android : {
186- signingConfigs : {
187- release : {
188- storeFile : "../README.md" ,
189- } ,
140+ } ,
141+ } ) ,
142+ "android/build.gradle" : buildGradle (
143+ 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
144+ ) ,
145+ } ) ;
146+
147+ equal ( status , 0 ) ;
148+ match (
149+ stdout ,
150+ / g e t S i g n i n g C o n f i g s \( \) = \[ d e b u g : \[ k e y A l i a s : a n d r o i d d e b u g k e y , k e y P a s s w o r d : a n d r o i d , s t o r e P a s s w o r d : a n d r o i d , s t o r e F i l e : .* \] \] /
151+ ) ;
152+ } ) ;
153+
154+ it ( "getSigningConfigs() returns release signing config" , async ( ) => {
155+ const { status, stdout } = await runGradle ( {
156+ "app.json" : JSON . stringify ( {
157+ name : "AppName" ,
158+ displayName : "AppDisplayName" ,
159+ resources : [ "dist/res" , "dist/main.android.jsbundle" ] ,
160+ android : {
161+ signingConfigs : {
162+ release : {
163+ storeFile : "../README.md" ,
190164 } ,
191165 } ,
192- } ) ,
193- "android/build.gradle" : buildGradle (
194- 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
195- ) ,
196- } ) ;
197-
198- equal ( status , 0 ) ;
199- match (
200- stdout ,
201- / g e t S i g n i n g C o n f i g s \( \) = \[ r e l e a s e : \[ k e y A l i a s : a n d r o i d d e b u g k e y , k e y P a s s w o r d : a n d r o i d , s t o r e P a s s w o r d : a n d r o i d , s t o r e F i l e : .* \] \] /
202- ) ;
203- }
204- ) ;
205-
206- it (
207- "toVersionNumber() handles pre-release identifiers" ,
208- testOptions ,
209- async ( ) => {
210- const { status, stdout } = await runGradle ( {
211- "android/build.gradle" : buildGradle (
212- 'println("toVersionNumber() = " + project.ext.toVersionNumber("1.2.3-053c2b4be"))'
213- ) ,
214- } ) ;
215-
216- equal ( status , 0 ) ;
217- match ( stdout , new RegExp ( `toVersionNumber\\(\\) = ${ v ( 1 , 2 , 3 ) } ` ) ) ;
218- }
219- ) ;
166+ } ,
167+ } ) ,
168+ "android/build.gradle" : buildGradle (
169+ 'println("getSigningConfigs() = " + project.ext.getSigningConfigs())'
170+ ) ,
171+ } ) ;
172+
173+ equal ( status , 0 ) ;
174+ match (
175+ stdout ,
176+ / g e t S i g n i n g C o n f i g s \( \) = \[ r e l e a s e : \[ k e y A l i a s : a n d r o i d d e b u g k e y , k e y P a s s w o r d : a n d r o i d , s t o r e P a s s w o r d : a n d r o i d , s t o r e F i l e : .* \] \] /
177+ ) ;
178+ } ) ;
179+
180+ it ( "toVersionNumber() handles pre-release identifiers" , async ( ) => {
181+ const { status, stdout } = await runGradle ( {
182+ "android/build.gradle" : buildGradle (
183+ 'println("toVersionNumber() = " + project.ext.toVersionNumber("1.2.3-053c2b4be"))'
184+ ) ,
185+ } ) ;
186+
187+ equal ( status , 0 ) ;
188+ match ( stdout , new RegExp ( `toVersionNumber\\(\\) = ${ v ( 1 , 2 , 3 ) } ` ) ) ;
189+ } ) ;
220190} ) ;
0 commit comments