1c91115b9fb07e26dd6f985348afd7619c95174f
[cfb.git] / test / net / jaekl / cfb / db / TableMock.java
1 package net.jaekl.cfb.db;
2
3 import java.util.ArrayList;
4
5 import static org.junit.Assert.*;
6
7 public class TableMock extends Table {
8
9         private ArrayList<Row> m_rows;
10         
11         public TableMock(String name, Column[] columns) {
12                 super(name, columns);
13                 m_rows = new ArrayList<Row>();
14         }
15         
16         public TableMock(Table table) {
17                 this(table.m_name, table.m_columns.toArray(new Column[table.m_columns.size()]));
18         }
19         
20         protected ArrayList<Row> mock_getRows() { return m_rows; }
21
22         public boolean mock_hasColumn(Column expectedCol) {
23                 for (Column col : m_columns) {
24                         if (col.equals(expectedCol)) {
25                                 return true;
26                         }
27                 }
28                 return false;
29         }
30         
31         public Column[] mock_getColumns() { 
32                 return m_columns.toArray(new Column[m_columns.size()]);
33         }
34         
35         public void mock_insert(Row row) {
36                 assertEquals(getNumColumns(), row.getNumColumns());
37                 for (int i = 0; i < getNumColumns(); ++i) {
38                         assertEquals(getColumn(i).getType(), row.getColumn(i).getType());
39                 }
40                 m_rows.add(row);
41         }
42 }