/* * This file is part of LCMC written by Rasto Levrinc. * * Copyright (C) 2013, Rastislav Levrinc. * * The LCMC is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as published * by the Free Software Foundation; either version 2, or (at your option) * any later version. * * The LCMC is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with LCMC; see the file COPYING. If not, write to * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ package lcmc.robotest; import lcmc.cluster.domain.Cluster; import lcmc.logger.Logger; import lcmc.logger.LoggerFactory; import javax.inject.Inject; import javax.inject.Named; import javax.inject.Singleton; /** * This class is used to test the GUI. */ @Named @Singleton final class DrbdTest5 { @Inject private RoboTest roboTest; @Inject private DrbdTest1 drbdTest1; private static final Logger LOG = LoggerFactory.getLogger(DrbdTest5.class); void start(final Cluster cluster, final int blockDevY) { /* Two bds. */ roboTest.setSlowFactor(0.6f); roboTest.setAborted(false); /* multi */ LOG.info("start: create pvs"); roboTest.moveTo(334, blockDevY); roboTest.leftClick(); roboTest.moveTo(534, roboTest.getY()); roboTest.controlLeftClick(); roboTest.moveTo(334, blockDevY + 40); roboTest.controlLeftClick(); roboTest.moveTo(534, blockDevY + 40); roboTest.controlLeftClick(); drbdTest1.createPV(334, blockDevY); LOG.info("start: create vgs"); drbdTest1.createVGMulti(blockDevY); roboTest.sleepNoFactor(5000); LOG.info("start: create lvs"); roboTest.moveToGraph("VG vg00"); roboTest.sleepNoFactor(5000); drbdTest1.createLVMulti(); LOG.info("start: remove lvs"); roboTest.moveTo(334, blockDevY); roboTest.leftClick(); roboTest.moveTo(534, blockDevY); roboTest.controlLeftClick(); drbdTest1.lvRemoveMulti(); LOG.info("start: remove vgs"); roboTest.sleepNoFactor(5000); roboTest.moveToGraph("VG vg00"); roboTest.leftClick(); roboTest.moveTo(534, roboTest.getY()); roboTest.controlLeftClick(); roboTest.rightClick(); roboTest.sleep(1000); roboTest.moveTo("Remove selected VGs"); roboTest.leftClick(); roboTest.sleep(1000); roboTest.moveTo("Remove VG"); /* button */ roboTest.leftClick(); LOG.info("start: remove pvs"); roboTest.moveTo(334, blockDevY); roboTest.leftClick(); roboTest.moveTo(534, blockDevY); roboTest.controlLeftClick(); roboTest.moveTo(334, blockDevY + 40); roboTest.controlLeftClick(); roboTest.moveTo(534, blockDevY + 40); roboTest.controlLeftClick(); roboTest.rightClick(); roboTest.sleep(3000); roboTest.moveTo("Remove selected PVs"); roboTest.sleep(2000); roboTest.leftClick(); roboTest.moveTo(430, 90); roboTest.leftClick(); // reset selection /* single */ for (int i = 0; i < 2; i++) { LOG.info("start: create pv 1 " + i); drbdTest1.createPV(334, blockDevY); LOG.info("start: create pv 2 " + i); drbdTest1.createPV(534, blockDevY); LOG.info("start: create vg " + i); drbdTest1.createVG(cluster, blockDevY); roboTest.sleepNoFactor(10000); LOG.info("start: create lv" + i); roboTest.moveToGraph("VG vg0" + i); drbdTest1.createLV(cluster); LOG.info("start: resize lv" + i); roboTest.moveToGraph("vg0" + i + "/lvol0"); drbdTest1.resizeLV(cluster); } int offset = 0; for (int i = 0; i < 2; i++) { for (int j = 0; j < 2; j++) { roboTest.moveToGraph("vg0" + i + "/lvol0"); LOG.info("start: remove lv " + i + ' ' + j); drbdTest1.lvRemove(); roboTest.sleepNoFactor(10000); } LOG.info("start: remove vg " + i); roboTest.moveToGraph("VG vg0" + i); drbdTest1.vgRemove(cluster); roboTest.sleepNoFactor(10000); drbdTest1.pvRemove(334, blockDevY + offset); drbdTest1.pvRemove(534, blockDevY + offset); offset += 40; } } }