@@ -76,6 +76,35 @@ describe("widgets/beszel/component", () => {
7676 expect ( screen . queryByText ( "beszel.updated" ) ) . toBeNull ( ) ;
7777 } ) ;
7878
79+ it ( "renders optional fields" , ( ) => {
80+ useWidgetAPI . mockReturnValue ( {
81+ data : {
82+ totalItems : 1 ,
83+ items : [
84+ {
85+ id : "sys1" ,
86+ name : "MySystem" ,
87+ status : "up" ,
88+ updated : 123 ,
89+ info : { cpu : 10 , mp : 20 , dp : 30 , b : 40 , bb : 14.5 } ,
90+ } ,
91+ ] ,
92+ } ,
93+ error : undefined ,
94+ } ) ;
95+
96+ const service = {
97+ widget : { type : "beszel" , systemId : "sys1" , fields : [ "name" , "disk" , "network" ] } ,
98+ } ;
99+ const { container } = renderWithProviders ( < Component service = { service } /> , { settings : { hideErrors : false } } ) ;
100+
101+ expect ( service . widget . fields ) . toEqual ( [ "name" , "disk" , "network" ] ) ;
102+ expect ( container . querySelectorAll ( ".service-block" ) ) . toHaveLength ( 3 ) ;
103+ expectBlockValue ( container , "beszel.name" , "MySystem" ) ;
104+ expectBlockValue ( container , "beszel.disk" , 30 ) ;
105+ expectBlockValue ( container , "beszel.network" , 14.5 ) ;
106+ } ) ;
107+
79108 it ( "renders error when systemId is not found" , ( ) => {
80109 useWidgetAPI . mockReturnValue ( {
81110 data : { totalItems : 1 , items : [ { id : "sys1" , name : "MySystem" , status : "up" , info : { } } ] } ,
0 commit comments