All Downloads are FREE. Search and download functionalities are using the official Maven repository.

nz.ac.waikato.modeljunit.storytest.CalcTableModel Maven / Gradle / Ivy

Go to download

A tool for editing test parameters and suggesting additional parameter values. It provides several heuristics (including PairWise and MC/DC) for analyzing a set of input tuples and suggesting missing/extra values.

The newest version!
package nz.ac.waikato.modeljunit.storytest;

import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;

/**
 * A wrapper around a CalcTable to use it in JTable
 */
public class CalcTableModel
   extends AbstractTableModel
   implements TableModel, Observer
{
   /**
    * 
    */
   private static final long serialVersionUID = 1L;
   /** The backing table */
   private final CalcTable mTable;
   
   /**
    * Constructs a basic CalcTableModel using table
    */
   public CalcTableModel(CalcTable table)
   {
      mTable = table;
      mTable.registerObserver(this);
   }
   
   public Class getColumnClass(int column)
   {
      return String.class;
   }
   
   public int getRowCount()
   {
      return mTable.rows() + 2;
   }
   
   public int getColumnCount()
   {
      return mTable.columns();
   }
   
   public boolean isCellEditable(int row, int column)
   {
      return mTable.isEditable(column);
   }
   
   public void setValueAt(String aValue, int row, int column)
   {
      System.out.println("for some reason this isn't called at the moment");
      assert(false);
      System.out.println("set value" + row + "," + column);
      mTable.setValue(row, column, aValue);
   }
   
   public String getValueAt(int row, int column)
   {
      return row == 0 ? mTable.getColumnHeader(column) :
             row == 1 ? mTable.getTypeRange(column).toString() :
                        mTable.getValue(row - 2, column);
   }
   
   public String getColumnName(int column)
   {
      return mTable.getColumnHeader(column);
   }
   
   public void update()
   {
      fireTableStructureChanged();
   }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy