Skip to content

Commit ea0a70b

Browse files
authored
Merge pull request #1413 from RedisInsight/fe/feature/RI-3401_code-coverage
#RI-3401 - add tests, fix some paths to interfaces
2 parents 36ad5ad + 6ded51b commit ea0a70b

File tree

49 files changed

+266
-86
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+266
-86
lines changed

redisinsight/ui/src/components/database-list-modules/DatabaseListModules.spec.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ import React from 'react'
22
import { instance, mock } from 'ts-mockito'
33
import { RedisDefaultModules, DATABASE_LIST_MODULES_TEXT } from 'uiSrc/slices/interfaces'
44
import { fireEvent, render, act } from 'uiSrc/utils/test-utils'
5-
import { RedisModuleDto } from 'apiSrc/modules/instances/dto/database-instance.dto'
5+
import { AdditionalRedisModule } from 'apiSrc/modules/database/models/additional.redis.module'
66
import DatabaseListModules, { Props } from './DatabaseListModules'
77

88
const mockedProps = mock<Props>()
99

10-
const modulesMock: RedisModuleDto[] = [
10+
const modulesMock: AdditionalRedisModule[] = [
1111
{ name: RedisDefaultModules.AI },
1212
{ name: RedisDefaultModules.Bloom },
1313
{ name: RedisDefaultModules.Gears },

redisinsight/ui/src/components/database-list-modules/DatabaseListModules.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@ import RedisTimeSeriesLight from 'uiSrc/assets/img/modules/RedisTimeSeriesLight.
2828
import RedisTimeSeriesDark from 'uiSrc/assets/img/modules/RedisTimeSeriesDark.svg'
2929
import UnknownLight from 'uiSrc/assets/img/modules/UnknownLight.svg'
3030
import UnknownDark from 'uiSrc/assets/img/modules/UnknownDark.svg'
31-
import { RedisModuleDto } from 'apiSrc/modules/instances/dto/database-instance.dto'
31+
import { AdditionalRedisModule } from 'apiSrc/modules/database/models/additional.redis.module'
3232

3333
import styles from './styles.module.scss'
3434

3535
export interface Props {
3636
content?: JSX.Element
37-
modules: RedisModuleDto[]
37+
modules: AdditionalRedisModule[]
3838
inCircle?: boolean
3939
dark?: boolean
4040
highlight?: boolean

redisinsight/ui/src/components/database-overview/DatabaseOverview.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import RediStackLightMin from 'uiSrc/assets/img/modules/redistack/RediStackLight
1313
import RediStackLightLogo from 'uiSrc/assets/img/modules/redistack/RedisStackLogoLight.svg'
1414
import RediStackDarkLogo from 'uiSrc/assets/img/modules/redistack/RedisStackLogoDark.svg'
1515

16-
import { RedisModuleDto } from 'apiSrc/modules/instances/dto/database-instance.dto'
16+
import { AdditionalRedisModule } from 'apiSrc/modules/database/models/additional.redis.module'
1717
import { getResolutionLimits } from './utils/resolutionHelper'
1818
import { IMetric } from './components/OverviewMetrics'
1919
import DatabaseListModules from '../database-list-modules/DatabaseListModules'
@@ -23,7 +23,7 @@ import styles from './styles.module.scss'
2323
interface Props {
2424
windowDimensions: number
2525
metrics?: Array<IMetric>
26-
modules?: Array<RedisModuleDto>
26+
modules?: Array<AdditionalRedisModule>
2727
isRediStack?: boolean
2828
}
2929

redisinsight/ui/src/components/database-overview/components/MoreInfoPopover/MoreInfoPopover.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import parse from 'html-react-parser'
55
import { DATABASE_LIST_MODULES_TEXT } from 'uiSrc/slices/interfaces'
66

77
import { getModule, truncateText } from 'uiSrc/utils'
8-
import { RedisModuleDto } from 'apiSrc/modules/instances/dto/database-instance.dto'
8+
import { AdditionalRedisModule } from 'apiSrc/modules/database/models/additional.redis.module'
99

1010
import { IMetric } from '../OverviewMetrics'
1111

@@ -16,7 +16,7 @@ const ModulesInfoText = 'More information about Redis modules can be found <a cl
1616

1717
interface IProps {
1818
metrics: Array<IMetric>,
19-
modules: Array<RedisModuleDto>
19+
modules: Array<AdditionalRedisModule>
2020
}
2121

2222
const MoreInfoPopover = ({ metrics, modules }: IProps) => {

redisinsight/ui/src/components/global-subscriptions/CommonAppSubscription/CommonAppSubscription.spec.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ import { cloneDeep } from 'lodash'
33
import React from 'react'
44
import MockedSocket from 'socket.io-mock'
55
import socketIO from 'socket.io-client'
6-
import { NotificationsDto } from 'apiSrc/modules/notification/dto'
76
import { NotificationEvent } from 'uiSrc/constants/notifications'
87
import { setNewNotificationReceived, setLastReceivedNotification } from 'uiSrc/slices/app/notifications'
98
import { setIsConnected } from 'uiSrc/slices/app/socket-connection'
109
import { NotificationType } from 'uiSrc/slices/interfaces'
1110
import { cleanup, mockedStore, render } from 'uiSrc/utils/test-utils'
1211
import { SocketEvent } from 'uiSrc/constants'
12+
import { NotificationsDto } from 'apiSrc/modules/notification/dto'
1313

1414
import CommonAppSubscription from './CommonAppSubscription'
1515

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import React from 'react'
2+
import { render, screen } from 'uiSrc/utils/test-utils'
3+
4+
import JSONViewer from './JSONViewer'
5+
6+
describe('JSONViewer', () => {
7+
it('should render proper json', () => {
8+
const jsx = JSONViewer({ value: JSON.stringify({}) })
9+
render(jsx.value as React.ReactElement)
10+
11+
expect(jsx.isValid).toBeTruthy()
12+
expect(screen.queryByTestId('value-as-json')).toBeInTheDocument()
13+
})
14+
15+
it('should not render invalid json', () => {
16+
const jsx = JSONViewer({ value: 'zxc' })
17+
18+
expect(jsx.value).toEqual('zxc')
19+
expect(jsx.isValid).toBeFalsy()
20+
})
21+
})

redisinsight/ui/src/components/json-viewer/JSONViewer.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const JSONViewer = (props: Props) => {
1818

1919
return {
2020
value: (
21-
<div className={cx(styles.jsonViewer, { [styles.collapsed]: !expanded })} data-tesid="value-as-json">
21+
<div className={cx(styles.jsonViewer, { [styles.collapsed]: !expanded })} data-testid="value-as-json">
2222
<JSONPretty json={value} space={space} />
2323
</div>
2424
),

redisinsight/ui/src/components/notifications/components/EncryptionErrorContent.spec.tsx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { cloneDeep } from 'lodash'
22
import React from 'react'
3-
import { cleanup, mockedStore, render } from 'uiSrc/utils/test-utils'
3+
import { cleanup, mockedStore, render, fireEvent, screen } from 'uiSrc/utils/test-utils'
44
import EncryptionErrorContent from './EncryptionErrorContent'
55

66
let store: typeof mockedStore
@@ -22,4 +22,12 @@ describe('EncryptionErrorContent', () => {
2222
it('should render', () => {
2323
expect(render(<EncryptionErrorContent />)).toBeTruthy()
2424
})
25+
26+
it('should call onClose', () => {
27+
const onClose = jest.fn()
28+
render(<EncryptionErrorContent onClose={onClose} />)
29+
fireEvent.click(screen.getByTestId('toast-action-btn'))
30+
31+
expect(onClose).toBeCalled()
32+
})
2533
})

redisinsight/ui/src/electron/utils/ipcCheckUpdates.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import { omit } from 'lodash'
44
import { sendEventTelemetry, TelemetryEvent } from 'uiSrc/telemetry'
55
import { setElectronInfo, setReleaseNotesViewed } from 'uiSrc/slices/app/info'
66
import { addMessageNotification } from 'uiSrc/slices/app/notifications'
7-
import { GetServerInfoResponse } from 'apiSrc/dto/server.dto'
87
import successMessages from 'uiSrc/components/notifications/success-messages'
8+
import { GetServerInfoResponse } from 'apiSrc/modules/server/dto/server.dto'
99
import { ElectronStorageItem, IpcEvent } from '../constants'
1010

1111
export const ipcCheckUpdates = async (serverInfo: GetServerInfoResponse, dispatch: Dispatch<any>) => {

redisinsight/ui/src/mocks/handlers/analytics/clusterDetailsHandlers.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import { DatabaseInstanceResponse } from 'apiSrc/modules/instances/dto/database-instance.dto'
21
import { rest, RestHandler } from 'msw'
3-
import { ClusterDetails, HealthStatus, NodeRole } from 'apiSrc/modules/cluster-monitor/models'
42
import { ApiEndpoints } from 'uiSrc/constants'
53
import { getUrl } from 'uiSrc/utils'
64
import { getMswURL } from 'uiSrc/utils/test-utils'
5+
import { ClusterDetails, HealthStatus, NodeRole } from 'apiSrc/modules/cluster-monitor/models'
6+
import { Database as DatabaseInstanceResponse } from 'apiSrc/modules/database/models/database'
77

88
export const INSTANCE_ID_MOCK = 'instanceId'
99

0 commit comments

Comments
 (0)