@@ -8,71 +8,83 @@ describe("ModelDetailsDataProvider", () => {
88 const mockCliServer = mockedObject < CodeQLCliServer > ( { } ) ;
99
1010 describe ( "setState" , ( ) => {
11- it ( "should not emit onDidChangeTreeData event when state has not changed" , async ( ) => {
12- const externalApiUsages : ExternalApiUsage [ ] = [ ] ;
13- const dbItem = mockedObject < DatabaseItem > ( {
14- getSourceLocationPrefix : ( ) => "test" ,
15- } ) ;
11+ const hideModeledApis : boolean = false ;
12+ const externalApiUsages : ExternalApiUsage [ ] = [ ] ;
13+ const dbItem = mockedObject < DatabaseItem > ( {
14+ getSourceLocationPrefix : ( ) => "test" ,
15+ } ) ;
1616
17+ it ( "should not emit onDidChangeTreeData event when state has not changed" , async ( ) => {
1718 const dataProvider = new ModelDetailsDataProvider ( mockCliServer ) ;
18- await dataProvider . setState ( externalApiUsages , dbItem ) ;
19+ await dataProvider . setState ( externalApiUsages , dbItem , hideModeledApis ) ;
1920
2021 const onDidChangeTreeDataListener = jest . fn ( ) ;
2122 dataProvider . onDidChangeTreeData ( onDidChangeTreeDataListener ) ;
2223
23- await dataProvider . setState ( externalApiUsages , dbItem ) ;
24+ await dataProvider . setState ( externalApiUsages , dbItem , hideModeledApis ) ;
2425
2526 expect ( onDidChangeTreeDataListener ) . not . toHaveBeenCalled ( ) ;
2627 } ) ;
2728
2829 it ( "should emit onDidChangeTreeData event when externalApiUsages has changed" , async ( ) => {
29- const externalApiUsages1 : ExternalApiUsage [ ] = [ ] ;
3030 const externalApiUsages2 : ExternalApiUsage [ ] = [ ] ;
31- const dbItem = mockedObject < DatabaseItem > ( {
32- getSourceLocationPrefix : ( ) => "test" ,
33- } ) ;
3431
3532 const dataProvider = new ModelDetailsDataProvider ( mockCliServer ) ;
36- await dataProvider . setState ( externalApiUsages1 , dbItem ) ;
33+ await dataProvider . setState ( externalApiUsages , dbItem , hideModeledApis ) ;
3734
3835 const onDidChangeTreeDataListener = jest . fn ( ) ;
3936 dataProvider . onDidChangeTreeData ( onDidChangeTreeDataListener ) ;
4037
41- await dataProvider . setState ( externalApiUsages2 , dbItem ) ;
38+ await dataProvider . setState ( externalApiUsages2 , dbItem , hideModeledApis ) ;
4239
4340 expect ( onDidChangeTreeDataListener ) . toHaveBeenCalledTimes ( 1 ) ;
4441 } ) ;
4542
4643 it ( "should emit onDidChangeTreeData event when dbItem has changed" , async ( ) => {
47- const externalApiUsages : ExternalApiUsage [ ] = [ ] ;
48- const dbItem1 = mockedObject < DatabaseItem > ( {
49- getSourceLocationPrefix : ( ) => "test" ,
50- } ) ;
5144 const dbItem2 = mockedObject < DatabaseItem > ( {
5245 getSourceLocationPrefix : ( ) => "test" ,
5346 } ) ;
5447
5548 const dataProvider = new ModelDetailsDataProvider ( mockCliServer ) ;
56- await dataProvider . setState ( externalApiUsages , dbItem1 ) ;
49+ await dataProvider . setState ( externalApiUsages , dbItem , hideModeledApis ) ;
5750
5851 const onDidChangeTreeDataListener = jest . fn ( ) ;
5952 dataProvider . onDidChangeTreeData ( onDidChangeTreeDataListener ) ;
6053
61- await dataProvider . setState ( externalApiUsages , dbItem2 ) ;
54+ await dataProvider . setState ( externalApiUsages , dbItem2 , hideModeledApis ) ;
6255
6356 expect ( onDidChangeTreeDataListener ) . toHaveBeenCalledTimes ( 1 ) ;
6457 } ) ;
6558
6659 it ( "should emit onDidChangeTreeData event when hideModeledApis has changed" , async ( ) => {
67- const hideModeledApis = false ;
60+ const dataProvider = new ModelDetailsDataProvider ( mockCliServer ) ;
61+ await dataProvider . setState ( externalApiUsages , dbItem , hideModeledApis ) ;
62+
63+ const onDidChangeTreeDataListener = jest . fn ( ) ;
64+ dataProvider . onDidChangeTreeData ( onDidChangeTreeDataListener ) ;
65+
66+ await dataProvider . setState ( externalApiUsages , dbItem , ! hideModeledApis ) ;
67+
68+ expect ( onDidChangeTreeDataListener ) . toHaveBeenCalledTimes ( 1 ) ;
69+ } ) ;
70+
71+ it ( "should emit onDidChangeTreeData event when all entries have changed" , async ( ) => {
72+ const dbItem2 = mockedObject < DatabaseItem > ( {
73+ getSourceLocationPrefix : ( ) => "test" ,
74+ } ) ;
75+ const externalApiUsages2 : ExternalApiUsage [ ] = [ ] ;
6876
6977 const dataProvider = new ModelDetailsDataProvider ( mockCliServer ) ;
70- await dataProvider . setState ( undefined , undefined , hideModeledApis ) ;
78+ await dataProvider . setState ( externalApiUsages , dbItem , hideModeledApis ) ;
7179
7280 const onDidChangeTreeDataListener = jest . fn ( ) ;
7381 dataProvider . onDidChangeTreeData ( onDidChangeTreeDataListener ) ;
7482
75- await dataProvider . setState ( undefined , undefined , ! hideModeledApis ) ;
83+ await dataProvider . setState (
84+ externalApiUsages2 ,
85+ dbItem2 ,
86+ ! hideModeledApis ,
87+ ) ;
7688
7789 expect ( onDidChangeTreeDataListener ) . toHaveBeenCalledTimes ( 1 ) ;
7890 } ) ;
0 commit comments