001package de.cuioss.test.jsf.renderer;
002
003import javax.faces.component.UIComponent;
004
005import org.jdom2.Element;
006
007/**
008 * This interface defines the testing of implicit single attribute contracts.
009 *
010 * @author Oliver Wolff
011 */
012public interface RendererAttributeAssert {
013
014    /**
015     * @return the name of the attribute to be checked
016     */
017    String getAttributeName();
018
019    /**
020     * Sets the attribute to be tested into the given component
021     *
022     * @param component where the attribute is to be applied to,
023     */
024    void applyAttribute(UIComponent component);
025
026    /**
027     * Asserts in the given render-result that the attribute was set properly
028     *
029     * @param element to be checked
030     */
031    void assertAttributeSet(Element element);
032}