@@ -78,8 +78,7 @@ describe( 'createRegistrySelector', () => {
78
78
expect ( registry . select ( uiStore ) . getElementCount ( ) ) . toBe ( 1 ) ;
79
79
} ) ;
80
80
81
- // Even without createSelector, this fails in trunk.
82
- it . skip ( 'can bind one selector to multiple registries' , ( ) => {
81
+ it ( 'can bind one selector to multiple registries (createRegistrySelector)' , ( ) => {
83
82
const registry1 = createRegistry ( ) ;
84
83
const registry2 = createRegistry ( ) ;
85
84
@@ -102,6 +101,26 @@ describe( 'createRegistrySelector', () => {
102
101
expect ( registry2 . select ( uiStore ) . getElementCount ( ) ) . toBe ( 1 ) ;
103
102
} ) ;
104
103
104
+ it ( 'can bind one selector to multiple registries (createRegistrySelector + createSelector)' , ( ) => {
105
+ const registry1 = createRegistry ( ) ;
106
+ registry1 . register ( elementsStore ) ;
107
+ registry1 . register ( uiStore ) ;
108
+ registry1 . dispatch ( elementsStore ) . add ( 'Carbon' ) ;
109
+
110
+ const registry2 = createRegistry ( ) ;
111
+ registry2 . register ( elementsStore ) ;
112
+ registry2 . register ( uiStore ) ;
113
+ registry2 . dispatch ( elementsStore ) . add ( 'Helium' ) ;
114
+
115
+ // Expects the `getFilteredElements` to be bound separately and independently to the two registries
116
+ expect ( registry1 . select ( uiStore ) . getFilteredElements ( ) ) . toEqual ( [
117
+ 'Carbon' ,
118
+ ] ) ;
119
+ expect ( registry2 . select ( uiStore ) . getFilteredElements ( ) ) . toEqual ( [
120
+ 'Helium' ,
121
+ ] ) ;
122
+ } ) ;
123
+
105
124
it ( 'can bind a memoized selector to a registry' , ( ) => {
106
125
const registry = createRegistry ( ) ;
107
126
registry . register ( elementsStore ) ;
0 commit comments