]> git.proxmox.com Git - ceph.git/blob - ceph/src/pybind/mgr/dashboard/frontend/e2e/block/mirroring.e2e-spec.ts
3327cf161bbb6d7688a12afea6b3b3d1c2266e55
[ceph.git] / ceph / src / pybind / mgr / dashboard / frontend / e2e / block / mirroring.e2e-spec.ts
1 import { PoolPageHelper } from '../pools/pools.po';
2 import { MirroringPageHelper } from './mirroring.po';
3
4 describe('Mirroring page', () => {
5 let pools: PoolPageHelper;
6 let mirroring: MirroringPageHelper;
7
8 beforeAll(() => {
9 mirroring = new MirroringPageHelper();
10 pools = new PoolPageHelper();
11 });
12
13 afterEach(async () => {
14 await MirroringPageHelper.checkConsole();
15 });
16
17 describe('breadcrumb and tab tests', () => {
18 beforeAll(async () => {
19 await mirroring.navigateTo();
20 });
21
22 it('should open and show breadcrumb', async () => {
23 await mirroring.waitTextToBePresent(mirroring.getBreadcrumb(), 'Mirroring');
24 });
25
26 it('should show three tabs', async () => {
27 await expect(mirroring.getTabsCount()).toEqual(3);
28 });
29
30 it('should show text for all tabs', async () => {
31 await expect(mirroring.getTabText(0)).toEqual('Issues');
32 await expect(mirroring.getTabText(1)).toEqual('Syncing');
33 await expect(mirroring.getTabText(2)).toEqual('Ready');
34 });
35 });
36
37 describe('checks that edit mode functionality shows in the pools table', () => {
38 const poolName = 'mirroring_test';
39
40 beforeAll(async () => {
41 await pools.navigateTo('create'); // Need pool for mirroring testing
42 await pools.create(poolName, 8, 'rbd');
43 await pools.navigateTo();
44 await pools.exist(poolName, true);
45 });
46
47 it('tests editing mode for pools', async () => {
48 await mirroring.navigateTo();
49
50 await mirroring.editMirror(poolName, 'Pool');
51 await expect(mirroring.getFirstTableCellWithText('pool').isPresent()).toBe(true);
52 await mirroring.editMirror(poolName, 'Image');
53 await expect(mirroring.getFirstTableCellWithText('image').isPresent()).toBe(true);
54 await mirroring.editMirror(poolName, 'Disabled');
55 await expect(mirroring.getFirstTableCellWithText('disabled').isPresent()).toBe(true);
56 });
57
58 afterAll(async () => {
59 await pools.navigateTo();
60 await pools.delete(poolName);
61 });
62 });
63 });