/** * Finds the menu that can be used by the owner to control the participant. Hovers over it. Finds * the mute link and mute it. Then checks in the second participant page whether it is muted */ public void ownerMutesParticipantAndCheck() { System.err.println("Start ownerMutesParticipantAndCheck."); WebDriver owner = ConferenceFixture.getOwner(); WebElement elem = owner.findElement(By.xpath("//div[@class='remotevideomenu']/i[@class='fa fa-angle-down']")); Actions action = new Actions(owner); action.moveToElement(elem); action.perform(); TestUtils.waitForDisplayedElementByXPath( owner, "//ul[@class='popupmenu']/li/a[@class='mutelink']", 5); owner.findElement(By.xpath("//ul[@class='popupmenu']/li/a[@class='mutelink']")).click(); // and now check whether second participant is muted TestUtils.waitForElementByXPath( ConferenceFixture.getSecondParticipant(), "//span[@class='audioMuted']/i[@class='icon-mic-disabled']", 5); action.release(); }
/** * UnMutes once again the second participant and checks in the owner page does this change is * reflected. */ public void participantUnMutesAfterOwnerMutedHimAndCheck() { MeetUIUtils.clickOnToolbarButton(ConferenceFixture.getSecondParticipant(), "mute"); TestUtils.waitsForElementNotPresentByXPath( ConferenceFixture.getOwner(), "//span[@class='audioMuted']/i[@class='icon-mic-disabled']", 5); // lets give time to the ui to reflect the change in the ui of the owner TestUtils.waits(1000); }
/** * Closes the participant and leaves the owner alone in the room. Mutes the owner and then joins * new participant and checks the status of the mute icon. At the end unmutes to clear the state. */ public void muteOwnerBeforeSecondParticipantJoins() { System.err.println("Start muteOwnerBeforeSecondParticipantJoins."); WebDriver owner = ConferenceFixture.getOwner(); ConferenceFixture.close(ConferenceFixture.getSecondParticipant()); // just in case wait TestUtils.waitMillis(1000); MeetUIUtils.clickOnToolbarButton(owner, "toolbar_button_mute"); WebDriver secondParticipant = ConferenceFixture.startSecondParticipant(); MeetUtils.waitForParticipantToJoinMUC(secondParticipant, 15); MeetUtils.waitForIceConnected(secondParticipant); MeetUIUtils.assertMuteIconIsDisplayed( secondParticipant, owner, true, // should be muted false, // audio "owner"); // now lets unmute unMuteOwnerAndCheck(); }
/** Mutes the owner and checks at other participant is this is visible. */ public void muteOwnerAndCheck() { toggleMuteAndCheck( "muteOwnerAndCheck", ConferenceFixture.getOwner(), "owner", ConferenceFixture.getSecondParticipant(), true); TestUtils.waitMillis(2000); }
/** * UnMutes once again the second participant and checks in the owner page does this change is * reflected. */ public void participantUnMutesAfterOwnerMutedHimAndCheck() { System.err.println("Start participantUnMutesAfterOwnerMutedHimAndCheck."); TestUtils.waitMillis(1000); MeetUIUtils.clickOnToolbarButton( ConferenceFixture.getSecondParticipant(), "toolbar_button_mute"); TestUtils.waitMillis(1000); MeetUIUtils.assertMuteIconIsDisplayed( ConferenceFixture.getOwner(), ConferenceFixture.getSecondParticipant(), false, // should be unmuted false, // audio "participant2"); // lets give time to the ui to reflect the change in the ui of the owner TestUtils.waitMillis(1000); }
/** * Closes the participant and leaves the owner alone in the room. Mutes the owner and then joins * new participant and checks the status of the mute icon. At the end unmutes to clear the state. */ public void muteOwnerBeforeSecondParticipantJoins() { ConferenceFixture.quit(ConferenceFixture.getSecondParticipant()); // just in case wait TestUtils.waits(1000); MeetUIUtils.clickOnToolbarButton(ConferenceFixture.getOwner(), "mute"); ConferenceFixture.startParticipant(); ConferenceFixture.checkParticipantToJoinRoom(ConferenceFixture.getSecondParticipant(), 10); ConferenceFixture.waitsParticipantToJoinConference(ConferenceFixture.getSecondParticipant()); TestUtils.waitsForElementByXPath( ConferenceFixture.getSecondParticipant(), "//span[@class='audioMuted']/i[@class='icon-mic-disabled']", 5); // now lets unmute unMuteOwnerAndCheck(); }
public void testCoordVar(NetcdfFile ncfile) { Variable lat = ncfile.findVariable("lat"); assert null != lat; assert lat.getShortName().equals("lat"); assert lat.getRank() == 1; assert lat.getSize() == 3; assert lat.getShape()[0] == 3; assert lat.getDataType() == DataType.FLOAT; assert !lat.isUnlimited(); assert lat.getDimension(0).equals(ncfile.findDimension("lat")); Attribute att = lat.findAttribute("units"); assert null != att; assert !att.isArray(); assert att.isString(); assert att.getDataType() == DataType.STRING; assert att.getStringValue().equals("degrees_north"); assert att.getNumericValue() == null; assert att.getNumericValue(3) == null; try { Array data = lat.read(); assert data.getRank() == 1; assert data.getSize() == 3; assert data.getShape()[0] == 3; assert data.getElementType() == float.class; IndexIterator dataI = data.getIndexIterator(); assert TestUtils.close(dataI.getDoubleNext(), 41.0); assert TestUtils.close(dataI.getDoubleNext(), 40.0); assert TestUtils.close(dataI.getDoubleNext(), 39.0); } catch (IOException io) { } }
public void readSlice(NetcdfFile ncfile, int[] origin, int[] shape, String name) throws IOException, InvalidRangeException { Variable v = ncfile.findVariable(name); Array data = v.read(origin, shape); assert data.getRank() == 3; assert data.getSize() == shape[0] * shape[1] * shape[2]; assert data.getShape()[0] == shape[0] : data.getShape()[0] + " " + shape[0]; assert data.getShape()[1] == shape[1]; assert data.getShape()[2] == shape[2]; assert data.getElementType() == double.class; Index tIndex = data.getIndex(); for (int i = 0; i < shape[0]; i++) for (int j = 0; j < shape[1]; j++) for (int k = 0; k < shape[2]; k++) { double val = data.getDouble(tIndex.set(i, j, k)); // System.out.println(" "+val); assert TestUtils.close(val, 100 * (i + origin[0]) + 10 * j + k) : val; } }
public void testReadData(NetcdfFile ncfile, String name) throws IOException { Variable v = ncfile.findVariable(name); assert null != v; assert v.getShortName().equals(name); assert v.getRank() == 3; assert v.getSize() == 36 : v.getSize(); assert v.getShape()[0] == 3; assert v.getShape()[1] == 3; assert v.getShape()[2] == 4; assert v.getDataType() == DataType.DOUBLE; assert !v.isCoordinateVariable(); assert v.getDimension(0) == ncfile.findDimension("time"); assert v.getDimension(1) == ncfile.findDimension("lat"); assert v.getDimension(2) == ncfile.findDimension("lon"); Array data = v.read(); assert data.getRank() == 3; assert data.getSize() == 36; assert data.getShape()[0] == 3; assert data.getShape()[1] == 3; assert data.getShape()[2] == 4; assert data.getElementType() == double.class; int[] shape = data.getShape(); Index tIndex = data.getIndex(); for (int i = 0; i < shape[0]; i++) for (int j = 0; j < shape[1]; j++) for (int k = 0; k < shape[2]; k++) { double val = data.getDouble(tIndex.set(i, j, k)); // System.out.println(" "+val); assert TestUtils.close(val, 100 * i + 10 * j + k) : val; } }