@Override protected void setUp() throws Exception { super.setUp(); doc = new DefaultStyledDocument( new StyleContext() { private static final long serialVersionUID = 1L; @Override public Color getBackground(AttributeSet as) { getBackground = true; return super.getBackground(as); } @Override public Font getFont(AttributeSet as) { getFont = true; return super.getFont(as); } @Override public Color getForeground(AttributeSet as) { getForeground = true; return super.getForeground(as); } }); styles = (StyleContext) doc.getAttributeContext(); attrSet = styles.getEmptySet(); }
public void testStyleChanged() { final Style[] changed = new Style[1]; doc = new DefaultStyledDocument() { private static final long serialVersionUID = 1L; @Override protected void styleChanged(final Style style) { changed[0] = style; super.styleChanged(style); } }; styles = (StyleContext) doc.getAttributeContext(); final NamedStyle aStyle = (NamedStyle) doc.addStyle(STYLE_NAME, null); assertEquals(0, styles.getChangeListeners().length); assertEquals(0, aStyle.listenerList.getListenerCount()); final DocumentListener listener = new DocumentListener() { public void insertUpdate(DocumentEvent e) {} public void removeUpdate(DocumentEvent e) {} public void changedUpdate(DocumentEvent e) {} }; doc.addDocumentListener(listener); assertEquals(1, styles.getChangeListeners().length); assertEquals(1, aStyle.listenerList.getListenerCount()); final NamedStyle anotherStyle = (NamedStyle) styles.addStyle("otherStyle", aStyle); assertEquals(1, anotherStyle.listenerList.getListenerCount()); final NamedStyle nullStyle = (NamedStyle) styles.addStyle(null, null); assertEquals(0, nullStyle.listenerList.getListenerCount()); assertNull(changed[0]); aStyle.addAttribute("key", "value"); assertSame(aStyle, changed[0]); doc.removeDocumentListener(listener); assertEquals(0, styles.getChangeListeners().length); assertEquals(0, aStyle.listenerList.getListenerCount()); assertEquals(0, anotherStyle.listenerList.getListenerCount()); }