001 package org.springframework.richclient.table.renderer; 002 003 import java.awt.Component; 004 import java.util.Locale; 005 006 import javax.swing.JTable; 007 import javax.swing.table.TableColumnModel; 008 009 import junit.framework.TestCase; 010 011 import org.springframework.context.support.MessageSourceAccessor; 012 import org.springframework.context.support.StaticMessageSource; 013 014 /** 015 * @author Xavier Breton 016 */ 017 public class EnumTableCellRendererTests extends TestCase { 018 019 public enum Numbers { 020 021 ONE, 022 TWO, 023 THREE, 024 FOUR, 025 FIVE, 026 SIX, 027 SEVEN, 028 EIGHT, 029 NINE, 030 TEN; 031 032 } 033 034 private EnumTableCellRenderer tetcr; 035 036 public void testGetTableCellRendererComponent() { 037 StaticMessageSource messageSource = new StaticMessageSource(); 038 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.ONE", Locale.getDefault(), "one"); 039 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.TWO", Locale.getDefault(), "two"); 040 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.THREE", Locale.getDefault(), "three"); 041 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.FOUR", Locale.getDefault(), "four"); 042 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.FIVE", Locale.getDefault(), "five"); 043 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.SIX", Locale.getDefault(), "six"); 044 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.SEVEN", Locale.getDefault(), "seven"); 045 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.EIGHT", Locale.getDefault(), "eight"); 046 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.NINE", Locale.getDefault(), "nine"); 047 messageSource.addMessage("org.springframework.richclient.table.renderer.EnumTableCellRendererTests$Numbers.TEN", Locale.getDefault(), "ten"); 048 MessageSourceAccessor msa = new MessageSourceAccessor(messageSource); 049 tetcr = new EnumTableCellRenderer(msa); 050 Object[][] rowData = { 051 { Numbers.ONE }, 052 { Numbers.TWO }, 053 { Numbers.THREE }, 054 { Numbers.FOUR }, 055 { Numbers.FIVE }, 056 { Numbers.SIX }, 057 { Numbers.SEVEN }, 058 { Numbers.EIGHT }, 059 { Numbers.NINE }, 060 { Numbers.TEN } 061 }; 062 Object[] columnNames = { "Numbers" }; 063 JTable table = new JTable(rowData, columnNames); 064 TableColumnModel tcm = table.getColumnModel(); 065 tcm.getColumn(0).setCellRenderer(tetcr); 066 tetcr.getTableCellRendererComponent(table, Numbers.SEVEN, false, false, 6, 0); 067 Component component = tetcr.getTableCellRendererComponent(table, Numbers.SEVEN, false, false, 6, 0); 068 assertTrue(component instanceof EnumTableCellRenderer); 069 } 070 }