967967 let ( :package_yml ) { package_dir . join ( 'package.yml' ) }
968968 let ( :package_todo_yml ) { package_dir . join ( 'package_todo.yml' ) }
969969
970- def build_pack ( public_path : 'app/public' , enforce_privacy : true , dependencies : [ ] , metadata : { } , config : { } )
970+ def build_pack ( public_path : 'app/public' , enforce_privacy : true , enforce_architecture : true , dependencies : [ ] , metadata : { } , config : { } )
971971 ParsePackwerk ::Package . new (
972972 name : package_dir . to_s ,
973973 enforce_dependencies : true ,
974974 enforce_privacy : enforce_privacy ,
975+ enforce_architecture : enforce_architecture ,
975976 public_path : public_path ,
976977 dependencies : dependencies ,
977978 metadata : metadata ,
@@ -985,6 +986,7 @@ def pack_as_hash(package)
985986 name : package . name ,
986987 enforce_dependencies : package . enforce_dependencies ,
987988 enforce_privacy : package . enforce_privacy ,
989+ enforce_architecture : package . enforce_architecture ,
988990 dependencies : package . dependencies ,
989991 metadata : package . metadata
990992 }
@@ -998,6 +1000,7 @@ def pack_as_hash(package)
9981000 expect ( package_yml . read ) . to eq <<~PACKAGEYML
9991001 enforce_dependencies: true
10001002 enforce_privacy: true
1003+ enforce_architecture: true
10011004 PACKAGEYML
10021005
10031006 expect ( all_packages . count ) . to eq 1
@@ -1015,6 +1018,7 @@ def pack_as_hash(package)
10151018 expect ( package_yml . read ) . to eq <<~PACKAGEYML
10161019 enforce_dependencies: true
10171020 enforce_privacy: true
1021+ enforce_architecture: true
10181022 public_path: other/path
10191023 PACKAGEYML
10201024
@@ -1033,6 +1037,7 @@ def pack_as_hash(package)
10331037 expect ( package_yml . read ) . to eq <<~PACKAGEYML
10341038 enforce_dependencies: true
10351039 enforce_privacy: strict
1040+ enforce_architecture: true
10361041 PACKAGEYML
10371042
10381043 expect ( all_packages . count ) . to eq 1
@@ -1050,6 +1055,7 @@ def pack_as_hash(package)
10501055 expect ( package_yml . read ) . to eq <<~PACKAGEYML
10511056 enforce_dependencies: true
10521057 enforce_privacy: true
1058+ enforce_architecture: true
10531059 dependencies:
10541060 - my_other_pack1
10551061 - my_other_pack2
@@ -1074,6 +1080,7 @@ def pack_as_hash(package)
10741080 expect ( package_yml . read ) . to eq <<~PACKAGEYML
10751081 enforce_dependencies: true
10761082 enforce_privacy: true
1083+ enforce_architecture: true
10771084 metadata:
10781085 owner: Mission > Team
10791086 protections:
@@ -1090,6 +1097,7 @@ def pack_as_hash(package)
10901097 write_file ( package_yml , <<~CONTENTS )
10911098 enforce_dependencies: true
10921099 enforce_privacy: true
1100+ enforce_architecture: true
10931101 public_path: other/path
10941102 dependencies:
10951103 - packs/package2
@@ -1108,6 +1116,7 @@ def pack_as_hash(package)
11081116 expect ( package_yml . read ) . to eq <<~PACKAGEYML
11091117 enforce_dependencies: true
11101118 enforce_privacy: true
1119+ enforce_architecture: true
11111120 public_path: other/path
11121121 PACKAGEYML
11131122 end
@@ -1128,6 +1137,7 @@ def pack_as_hash(package)
11281137 expect ( package_yml . read ) . to eq <<~PACKAGEYML
11291138 enforce_dependencies: true
11301139 enforce_privacy: true
1140+ enforce_architecture: true
11311141 my_special_key:
11321142 blah: 1
11331143 my_other_special_key: true
@@ -1138,12 +1148,12 @@ def pack_as_hash(package)
11381148 end
11391149 end
11401150
1141- context 'app does not use privacy checker ' do
1151+ context 'app does not use extensions ' do
11421152 let ( :write_packwerk_yml ) do
11431153 write_file ( 'packwerk.yml' , '{}' )
11441154 end
11451155
1146- let ( :package ) { build_pack ( enforce_privacy : false ) }
1156+ let ( :package ) { build_pack ( enforce_privacy : false , enforce_architecture : false ) }
11471157
11481158 it 'writes the right package' do
11491159 ParsePackwerk . write_package_yml! ( package )
0 commit comments