@@ -6,27 +6,37 @@ import { applyAndroidGradleProperties } from '../src/android/gradleProperties';
66import { applyAndroidProjectBuildGradle } from '../src/android/projectBuildGradle' ;
77import { applyAndroidSettingsGradle } from '../src/android/settingsGradle' ;
88import { mergeContents } from '../src/utils/generateCode' ;
9- import { setConfig } from '../src/utils/config' ;
109
1110const readFixture = ( fixturePath : string ) : string =>
1211 fs . readFileSync ( path . join ( __dirname , 'fixtures' , fixturePath ) , 'utf8' ) ;
1312
14- describe ( 'Android transforms' , ( ) => {
15- beforeEach ( ( ) => {
16- setConfig ( 'demo-app-key' , 'demo-channel' , 'com.demo.app' , false , undefined ) ;
17- } ) ;
13+ const TEST_APP_KEY = 'demo-app-key' ;
14+ const TEST_CHANNEL = 'demo-channel' ;
15+ const TEST_PACKAGE_NAME = 'com.demo.app' ;
1816
17+ describe ( 'Android transforms' , ( ) => {
1918 it ( 'should inject app/build.gradle for enabled vendors and remain idempotent' , ( ) => {
2019 const vendorChannels = {
2120 fcm : { enabled : true } ,
2221 huawei : { enabled : true } ,
2322 xiaomi : { appId : 'xiaomi-id' , appKey : 'xiaomi-key' } ,
2423 } ;
25- setConfig ( 'demo-app-key' , 'demo-channel' , 'com.demo.app' , false , vendorChannels ) ;
2624
2725 const fixture = readFixture ( 'android/app-build.gradle.fixture' ) ;
28- const transformed = applyAndroidAppBuildGradle ( fixture , vendorChannels ) ;
29- const repeated = applyAndroidAppBuildGradle ( transformed , vendorChannels ) ;
26+ const transformed = applyAndroidAppBuildGradle (
27+ fixture ,
28+ vendorChannels ,
29+ TEST_PACKAGE_NAME ,
30+ TEST_APP_KEY ,
31+ TEST_CHANNEL
32+ ) ;
33+ const repeated = applyAndroidAppBuildGradle (
34+ transformed ,
35+ vendorChannels ,
36+ TEST_PACKAGE_NAME ,
37+ TEST_APP_KEY ,
38+ TEST_CHANNEL
39+ ) ;
3040
3141 expect ( transformed ) . toContain ( 'defaultConfig {' ) ;
3242 expect ( transformed ) . toContain ( 'manifestPlaceholders += [' ) ;
@@ -45,9 +55,21 @@ describe('Android transforms', () => {
4555 huawei : { enabled : true } ,
4656 oppo : { appId : 'oppo-id' , appKey : 'oppo-key' , appSecret : 'oppo-secret' } ,
4757 } ;
48- const enabled = applyAndroidAppBuildGradle ( fixture , vendorConfig ) ;
58+ const enabled = applyAndroidAppBuildGradle (
59+ fixture ,
60+ vendorConfig ,
61+ TEST_PACKAGE_NAME ,
62+ TEST_APP_KEY ,
63+ TEST_CHANNEL
64+ ) ;
4965
50- const disabled = applyAndroidAppBuildGradle ( enabled , undefined ) ;
66+ const disabled = applyAndroidAppBuildGradle (
67+ enabled ,
68+ undefined ,
69+ TEST_PACKAGE_NAME ,
70+ TEST_APP_KEY ,
71+ TEST_CHANNEL
72+ ) ;
5173
5274 expect ( disabled ) . toContain ( `implementation project(':jpush-react-native')` ) ;
5375 expect ( disabled ) . not . toContain ( `com.google.firebase:firebase-messaging` ) ;
@@ -97,7 +119,13 @@ describe('Android transforms', () => {
97119 comment : '//' ,
98120 } ) . contents ;
99121
100- const upgraded = applyAndroidAppBuildGradle ( withLegacyFileTree , undefined ) ;
122+ const upgraded = applyAndroidAppBuildGradle (
123+ withLegacyFileTree ,
124+ undefined ,
125+ TEST_PACKAGE_NAME ,
126+ TEST_APP_KEY ,
127+ TEST_CHANNEL
128+ ) ;
101129
102130 expect ( upgraded ) . not . toContain ( '@generated begin jpush-ndk-config' ) ;
103131 expect ( upgraded ) . not . toContain ( '@generated begin jpush-libs-filetree' ) ;
@@ -130,7 +158,6 @@ describe('Android transforms', () => {
130158 expect ( enabled ) . toContain ( `https://developer.hihonor.com/repo` ) ;
131159 expect ( repeated ) . toBe ( enabled ) ;
132160
133- setConfig ( 'demo-app-key' , 'demo-channel' , 'com.demo.app' , false , undefined ) ;
134161 const disabled = applyAndroidProjectBuildGradle ( enabled ) ;
135162
136163 expect ( disabled ) . not . toContain ( `com.google.gms:google-services` ) ;
@@ -140,12 +167,11 @@ describe('Android transforms', () => {
140167 } ) ;
141168
142169 it ( 'should remove legacy project/build.gradle generated sections during upgrade' , ( ) => {
143- setConfig ( 'demo-app-key' , 'demo-channel' , 'com.demo.app' , false , {
170+ const vendorChannels = {
144171 fcm : { enabled : true } ,
145172 huawei : { enabled : true } ,
146173 honor : { appId : 'honor-id' } ,
147- } ) ;
148-
174+ } ;
149175 const fixture = readFixture ( 'android/project-build.gradle.fixture' ) ;
150176 const withLegacyBuildscriptHuawei = mergeContents ( {
151177 src : fixture ,
@@ -189,7 +215,10 @@ describe('Android transforms', () => {
189215 comment : '//' ,
190216 } ) . contents ;
191217
192- const upgraded = applyAndroidProjectBuildGradle ( withLegacyHonorAllprojects ) ;
218+ const upgraded = applyAndroidProjectBuildGradle (
219+ withLegacyHonorAllprojects ,
220+ vendorChannels
221+ ) ;
193222
194223 expect ( upgraded ) . not . toContain ( '@generated begin jpush-huawei-maven-buildscript' ) ;
195224 expect ( upgraded ) . not . toContain ( '@generated begin jpush-honor-maven-buildscript' ) ;
@@ -227,11 +256,9 @@ describe('Android transforms', () => {
227256 } ) ;
228257
229258 it ( 'should add gradle.properties compatibility only for Huawei' , ( ) => {
230- setConfig ( 'demo-app-key' , 'demo-channel' , 'com.demo.app' , false , {
259+ const withHuawei = applyAndroidGradleProperties ( [ ] , {
231260 huawei : { enabled : true } ,
232261 } ) ;
233-
234- const withHuawei = applyAndroidGradleProperties ( [ ] ) ;
235262 expect ( withHuawei ) . toEqual ( [
236263 {
237264 type : 'property' ,
@@ -240,8 +267,7 @@ describe('Android transforms', () => {
240267 } ,
241268 ] ) ;
242269
243- setConfig ( 'demo-app-key' , 'demo-channel' , 'com.demo.app' , false , undefined ) ;
244- const withoutHuawei = applyAndroidGradleProperties ( withHuawei ) ;
270+ const withoutHuawei = applyAndroidGradleProperties ( withHuawei , undefined ) ;
245271 expect ( withoutHuawei ) . toBe ( withHuawei ) ;
246272 } ) ;
247273} ) ;
0 commit comments