@@ -14,6 +14,7 @@ import {
14
14
import { PreferencesController } from './user/PreferencesController' ;
15
15
import {
16
16
NetworkController ,
17
+ NetworkControllerMessenger ,
17
18
NetworksChainId ,
18
19
} from './network/NetworkController' ;
19
20
import { AssetsContractController } from './assets/AssetsContractController' ;
@@ -87,25 +88,46 @@ class BarController extends BaseController<never, BarControllerState> {
87
88
}
88
89
89
90
describe ( 'ComposableController' , ( ) => {
91
+ let networkMessenger : NetworkControllerMessenger ;
92
+ let messenger : any ;
93
+
94
+ beforeEach ( ( ) => {
95
+ const _messenger = new ControllerMessenger ( ) ;
96
+
97
+ networkMessenger = _messenger . getRestricted ( {
98
+ name : 'NetworkController' ,
99
+ allowedEvents : [ 'NetworkController:stateChange' ] ,
100
+ allowedActions : [ ] ,
101
+ } ) ;
102
+
103
+ messenger = _messenger . getRestricted < string , any , any > ( {
104
+ name : 'ComposableController' ,
105
+ allowedEvents : [ 'NetworkController:stateChange' ] ,
106
+ allowedActions : [ ] ,
107
+ } ) ;
108
+ } ) ;
109
+
90
110
afterEach ( ( ) => {
91
111
sinon . restore ( ) ;
92
112
} ) ;
93
113
94
114
describe ( 'BaseController' , ( ) => {
95
115
it ( 'should compose controller state' , ( ) => {
96
116
const preferencesController = new PreferencesController ( ) ;
97
- const networkController = new NetworkController ( ) ;
117
+ const networkController = new NetworkController ( {
118
+ messenger : networkMessenger ,
119
+ } ) ;
98
120
const assetContractController = new AssetsContractController ( {
99
121
onPreferencesStateChange : ( listener ) =>
100
122
preferencesController . subscribe ( listener ) ,
101
123
onNetworkStateChange : ( listener ) =>
102
- networkController . subscribe ( listener ) ,
124
+ messenger . subscribe ( 'NetworkController:stateChange' , listener ) ,
103
125
} ) ;
104
126
const collectiblesController = new CollectiblesController ( {
105
127
onPreferencesStateChange : ( listener ) =>
106
128
preferencesController . subscribe ( listener ) ,
107
129
onNetworkStateChange : ( listener ) =>
108
- networkController . subscribe ( listener ) ,
130
+ messenger . subscribe ( 'NetworkController:stateChange' , listener ) ,
109
131
getERC721AssetName : assetContractController . getERC721AssetName . bind (
110
132
assetContractController ,
111
133
) ,
@@ -130,17 +152,21 @@ describe('ComposableController', () => {
130
152
onPreferencesStateChange : ( listener ) =>
131
153
preferencesController . subscribe ( listener ) ,
132
154
onNetworkStateChange : ( listener ) =>
133
- networkController . subscribe ( listener ) ,
155
+ messenger . subscribe ( 'NetworkController:stateChange' , listener ) ,
134
156
} ) ;
135
- const controller = new ComposableController ( [
136
- new AddressBookController ( ) ,
137
- collectiblesController ,
138
- assetContractController ,
139
- new EnsController ( ) ,
140
- networkController ,
141
- preferencesController ,
142
- tokensController ,
143
- ] ) ;
157
+ const controller = new ComposableController (
158
+ [
159
+ new AddressBookController ( ) ,
160
+ collectiblesController ,
161
+ assetContractController ,
162
+ new EnsController ( ) ,
163
+ networkController ,
164
+ preferencesController ,
165
+ tokensController ,
166
+ ] ,
167
+ messenger ,
168
+ ) ;
169
+
144
170
expect ( controller . state ) . toStrictEqual ( {
145
171
AddressBookController : { addressBook : { } } ,
146
172
AssetsContractController : { } ,
@@ -183,18 +209,20 @@ describe('ComposableController', () => {
183
209
184
210
it ( 'should compose flat controller state' , ( ) => {
185
211
const preferencesController = new PreferencesController ( ) ;
186
- const networkController = new NetworkController ( ) ;
212
+ const networkController = new NetworkController ( {
213
+ messenger : networkMessenger ,
214
+ } ) ;
187
215
const assetContractController = new AssetsContractController ( {
188
216
onPreferencesStateChange : ( listener ) =>
189
217
preferencesController . subscribe ( listener ) ,
190
218
onNetworkStateChange : ( listener ) =>
191
- networkController . subscribe ( listener ) ,
219
+ messenger . subscribe ( 'NetworkController:stateChange' , listener ) ,
192
220
} ) ;
193
221
const collectiblesController = new CollectiblesController ( {
194
222
onPreferencesStateChange : ( listener ) =>
195
223
preferencesController . subscribe ( listener ) ,
196
224
onNetworkStateChange : ( listener ) =>
197
- networkController . subscribe ( listener ) ,
225
+ messenger . subscribe ( 'NetworkController:stateChange' , listener ) ,
198
226
getERC721AssetName : assetContractController . getERC721AssetName . bind (
199
227
assetContractController ,
200
228
) ,
@@ -219,17 +247,20 @@ describe('ComposableController', () => {
219
247
onPreferencesStateChange : ( listener ) =>
220
248
preferencesController . subscribe ( listener ) ,
221
249
onNetworkStateChange : ( listener ) =>
222
- networkController . subscribe ( listener ) ,
250
+ messenger . subscribe ( 'NetworkController:stateChange' , listener ) ,
223
251
} ) ;
224
- const controller = new ComposableController ( [
225
- new AddressBookController ( ) ,
226
- collectiblesController ,
227
- assetContractController ,
228
- new EnsController ( ) ,
229
- networkController ,
230
- preferencesController ,
231
- tokensController ,
232
- ] ) ;
252
+ const controller = new ComposableController (
253
+ [
254
+ new AddressBookController ( ) ,
255
+ collectiblesController ,
256
+ assetContractController ,
257
+ new EnsController ( ) ,
258
+ networkController ,
259
+ preferencesController ,
260
+ tokensController ,
261
+ ] ,
262
+ messenger ,
263
+ ) ;
233
264
expect ( controller . flatState ) . toStrictEqual ( {
234
265
addressBook : { } ,
235
266
allCollectibleContracts : { } ,
0 commit comments