@@ -106,6 +106,32 @@ suite('testing the javascript-npm data provider', async () => {
106106
107107 } ) ;
108108
109+ [
110+ { providerName : 'yarn-berry' , testCase : 'workspace_member' } ,
111+ ] . forEach ( ( { providerName, testCase } ) => {
112+ test ( `verify workspace member data for ${ providerName } - stack analysis` , async ( ) => {
113+ let expectedSbom = fs . readFileSync ( `test/providers/tst_manifests/${ providerName } /${ testCase } /stack_expected_sbom.json` ) . toString ( ) ;
114+ let listing = fs . readFileSync ( `test/providers/tst_manifests/${ providerName } /${ testCase } /listing_stack.json` ) . toString ( ) ;
115+
116+ const provider = await createMockProvider ( providerName , listing ) ;
117+ const manifestPath = `test/providers/tst_manifests/${ providerName } /${ testCase } /packages/member-a/package.json` ;
118+ let providedDataForStack = provider . provideStack ( manifestPath ) ;
119+
120+ compareSboms ( providedDataForStack . content , expectedSbom ) ;
121+ } ) . timeout ( 30000 ) ;
122+
123+ test ( `verify workspace member data for ${ providerName } - component analysis` , async ( ) => {
124+ let expectedSbom = fs . readFileSync ( `test/providers/tst_manifests/${ providerName } /${ testCase } /component_expected_sbom.json` ) . toString ( ) ;
125+ let listing = fs . readFileSync ( `test/providers/tst_manifests/${ providerName } /${ testCase } /listing_component.json` ) . toString ( ) ;
126+
127+ const provider = await createMockProvider ( providerName , listing ) ;
128+ const manifestPath = `test/providers/tst_manifests/${ providerName } /${ testCase } /packages/member-a/package.json` ;
129+ let providedDataForComponent = provider . provideComponent ( manifestPath ) ;
130+
131+ compareSboms ( providedDataForComponent . content , expectedSbom ) ;
132+ } ) . timeout ( 15000 ) ;
133+ } ) ;
134+
109135 [
110136 { providerName : 'npm' , testCase : 'workspace_member' } ,
111137 ] . forEach ( ( { providerName, testCase } ) => {
0 commit comments