/*
* Copyright 2000-2016 Vaadin Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.tests.components;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.lessThanOrEqualTo;
import static org.hamcrest.core.Is.is;
import java.util.List;
import org.junit.Test;
import org.openqa.selenium.WebElement;
import com.vaadin.testbench.By;
import com.vaadin.tests.tb3.MultiBrowserTest;
/**
* Test to see if AbstractOrderedLayout displays captions correctly with
* expanding ratios.
*
* @author Vaadin Ltd
*/
public class AbstractOrderedLayoutWithCaptionsTest extends MultiBrowserTest {
@Test
public void CaptionHeightMeasuredCorrectly() {
openTestURL();
WebElement div = getDriver()
.findElement(By.cssSelector(".v-panel-content > div > div"));
String paddingTop = div.getCssValue("padding-top");
Integer paddingHeight = Integer
.parseInt(paddingTop.substring(0, paddingTop.length() - 2));
List<WebElement> children = getDriver()
.findElements(By.cssSelector(".v-panel-content .v-slot"));
assertThat(children.size(), is(3));
Integer neededHeight = children.get(0).getSize().getHeight()
+ children.get(2).getSize().getHeight();
assertThat(neededHeight, is(lessThanOrEqualTo(paddingHeight)));
}
}