File tree Expand file tree Collapse file tree 3 files changed +66
-0
lines changed
app/src/__tests__/components Expand file tree Collapse file tree 3 files changed +66
-0
lines changed Original file line number Diff line number Diff line change 1+ import React from 'react' ;
2+ import { renderWithProviders } from 'util/tests' ;
3+ import SubServerStatus from 'components/common/SubServerStatus' ;
4+
5+ describe ( 'SubServer Status Component' , ( ) => {
6+ const render = ( isDisabled : boolean , errorMessage ?: string ) => {
7+ const cmp = (
8+ < SubServerStatus isDisabled = { isDisabled } errorMessage = { errorMessage } />
9+ ) ;
10+ return renderWithProviders ( cmp ) ;
11+ } ;
12+
13+ it ( 'should display disabled' , ( ) => {
14+ const { getByText } = render ( true ) ;
15+ expect ( getByText ( 'This subserver is turned off so this interface is not accessible.' ) ) . toBeInTheDocument ( ) ;
16+ } ) ;
17+
18+ it ( 'should display error' , ( ) => {
19+ const { getByText } = render ( false ) ;
20+ expect ( getByText ( 'This subserver encountered an error and failed to start up.' ) ) . toBeInTheDocument ( ) ;
21+ } ) ;
22+
23+ it ( 'should match error message' , ( ) => {
24+ const { getByText } = render ( false , 'Test error message' ) ;
25+ expect ( getByText ( 'Test error message' ) ) . toBeInTheDocument ( ) ;
26+ } ) ;
27+ } ) ;
Original file line number Diff line number Diff line change @@ -216,5 +216,24 @@ describe('LoopPage component', () => {
216216 expect ( store . settingsStore . channelSort . field ) . toBeUndefined ( ) ;
217217 expect ( store . settingsStore . channelSort . descending ) . toBe ( true ) ;
218218 } ) ;
219+
220+ it ( 'should display subserver disabled message' , ( ) => {
221+ const { getByText, store } = render ( ) ;
222+
223+ const disableLoop = store . subServerStore . serverStatus . subServersMap . map ( ( subServer ) => {
224+ const [ service , status ] = subServer ;
225+
226+ if ( service === 'loop' ) {
227+ status . disabled = true ;
228+ }
229+
230+ return [ service , status ] ;
231+ } ) ;
232+
233+ store . subServerStore . serverStatus . subServersMap = disableLoop ;
234+ render ( ) ;
235+
236+ expect ( getByText ( 'This subserver is turned off so this interface is not accessible.' ) ) . toBeInTheDocument ( ) ;
237+ } ) ;
219238 } ) ;
220239} ) ;
Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ describe('PoolPage', () => {
1010
1111 beforeEach ( async ( ) => {
1212 store = createStore ( ) ;
13+ await store . fetchAllData ( ) ;
1314 } ) ;
1415
1516 const render = ( ) => {
@@ -27,4 +28,23 @@ describe('PoolPage', () => {
2728 fireEvent . click ( getByText ( 'download.svg' ) ) ;
2829 expect ( saveAs ) . toBeCalledWith ( expect . any ( Blob ) , 'leases.csv' ) ;
2930 } ) ;
31+
32+ it ( 'should display subserver disabled message' , ( ) => {
33+ const { getByText, store } = render ( ) ;
34+
35+ const disablePool = store . subServerStore . serverStatus . subServersMap . map ( ( subServer ) => {
36+ const [ service , status ] = subServer ;
37+
38+ if ( service === 'pool' ) {
39+ status . disabled = true ;
40+ }
41+
42+ return [ service , status ] ;
43+ } ) ;
44+
45+ store . subServerStore . serverStatus . subServersMap = disablePool ;
46+ render ( ) ;
47+
48+ expect ( getByText ( 'This subserver is turned off so this interface is not accessible.' ) ) . toBeInTheDocument ( ) ;
49+ } ) ;
3050} ) ;
You can’t perform that action at this time.
0 commit comments