@@ -13,10 +13,11 @@ import {
1313 PreferencesProvider ,
1414} from 'compass-preferences-model/provider' ;
1515import { createSandboxFromDefaultPreferences } from 'compass-preferences-model' ;
16+ import type { CollectionProps } from 'mongodb-collection-model' ;
1617import type { DatabaseProps } from 'mongodb-database-model' ;
1718
18- function createDatabase ( name ) {
19- const db : Partial < DatabaseProps > = {
19+ function createDatabase ( name : string ) : DatabaseProps {
20+ const db : DatabaseProps = {
2021 _id : name ,
2122 name : name ,
2223 status : 'ready' as const ,
@@ -34,6 +35,7 @@ function createDatabase(name) {
3435 data_size : 1000 ,
3536 index_count : 25 ,
3637 index_size : 100 ,
38+ calculated_storage_size : undefined ,
3739 } ;
3840
3941 if ( db . storage_size !== undefined && db . free_storage_size !== undefined ) {
@@ -43,7 +45,10 @@ function createDatabase(name) {
4345 return db ;
4446}
4547
46- function createCollection ( name , props : any = { } ) {
48+ function createCollection (
49+ name : string ,
50+ props : Partial < CollectionProps > = { }
51+ ) : CollectionProps {
4752 const col = {
4853 _id : name ,
4954 name : name ,
@@ -79,6 +84,7 @@ function createCollection(name, props: any = {}) {
7984 free_storage_size : 1000 ,
8085 index_count : 15 ,
8186 index_size : 16 ,
87+ calculated_storage_size : undefined ,
8288 ...props ,
8389 } ;
8490
@@ -89,21 +95,24 @@ function createCollection(name, props: any = {}) {
8995 return col ;
9096}
9197
92- function createTimeSeries ( name , props : any = { } ) {
98+ function createTimeSeries (
99+ name : string ,
100+ props : Partial < CollectionProps > = { }
101+ ) : CollectionProps {
93102 return {
94103 ...createCollection ( name , props ) ,
95104 type : 'timeseries' as const ,
96105 } ;
97106}
98107
99- const dbs = [
108+ const dbs : DatabaseProps [ ] = [
100109 createDatabase ( 'foo' ) ,
101110 createDatabase ( 'bar' ) ,
102111 createDatabase ( 'buz' ) ,
103112 createDatabase ( 'bat' ) ,
104113] ;
105114
106- const colls = [
115+ const colls : CollectionProps [ ] = [
107116 createCollection ( 'foo.foo' , { storage_size : 1000 , free_storage_size : 1000 } ) , // 1000
108117 createCollection ( 'bar.bar' , { storage_size : 2000 , free_storage_size : 500 } ) , // 1500
109118 createCollection ( 'buz.buz' , { storage_size : 3000 , free_storage_size : 2000 } ) , // 1000
@@ -120,10 +129,16 @@ describe('databases and collections list', function () {
120129
121130 afterEach ( cleanup ) ;
122131
123- const renderDatabasesList = ( props ) => {
132+ const renderDatabasesList = (
133+ props : Partial < React . ComponentProps < typeof DatabasesList > >
134+ ) => {
124135 render (
125136 < PreferencesProvider value = { preferences } >
126- < DatabasesList { ...props } > </ DatabasesList >
137+ < DatabasesList
138+ databases = { [ ] }
139+ onDatabaseClick = { ( ) => { } }
140+ { ...props }
141+ > </ DatabasesList >
127142 </ PreferencesProvider >
128143 ) ;
129144 } ;
@@ -200,10 +215,17 @@ describe('databases and collections list', function () {
200215
201216 afterEach ( cleanup ) ;
202217
203- const renderCollectionsList = ( props ) => {
218+ const renderCollectionsList = (
219+ props : Partial < React . ComponentProps < typeof CollectionsList > >
220+ ) => {
204221 render (
205222 < PreferencesProvider value = { preferences } >
206- < CollectionsList { ...props } > </ CollectionsList >
223+ < CollectionsList
224+ onCollectionClick = { ( ) => { } }
225+ namespace = "db"
226+ collections = { [ ] }
227+ { ...props }
228+ > </ CollectionsList >
207229 </ PreferencesProvider >
208230 ) ;
209231 } ;
0 commit comments