/** 
 * Test simple table and non-existent row cases.
 */
@Test public void testSimpleMissing() throws Exception {
  byte[] TABLE=Bytes.toBytes("testSimpleMissing");
  HTable ht=TEST_UTIL.createTable(TABLE,FAMILY);
  byte[][] ROWS=makeN(ROW,4);
  Get get=new Get(ROWS[0]);
  Result result=ht.get(get);
  assertEmptyResult(result);
  get=new Get(ROWS[0]);
  get.addFamily(FAMILY);
  result=ht.get(get);
  assertEmptyResult(result);
  get=new Get(ROWS[0]);
  get.addColumn(FAMILY,QUALIFIER);
  result=ht.get(get);
  assertEmptyResult(result);
  Scan scan=new Scan();
  result=getSingleScanResult(ht,scan);
  assertNullResult(result);
  scan=new Scan(ROWS[0]);
  result=getSingleScanResult(ht,scan);
  assertNullResult(result);
  scan=new Scan(ROWS[0],ROWS[1]);
  result=getSingleScanResult(ht,scan);
  assertNullResult(result);
  scan=new Scan();
  scan.addFamily(FAMILY);
  result=getSingleScanResult(ht,scan);
  assertNullResult(result);
  scan=new Scan();
  scan.addColumn(FAMILY,QUALIFIER);
  result=getSingleScanResult(ht,scan);
  assertNullResult(result);
  Put put=new Put(ROWS[2]);
  put.add(FAMILY,QUALIFIER,VALUE);
  ht.put(put);
  get=new Get(ROWS[1]);
  result=ht.get(get);
  assertEmptyResult(result);
  get=new Get(ROWS[0]);
  get.addFamily(FAMILY);
  result=ht.get(get);
  assertEmptyResult(result);
  get=new Get(ROWS[3]);
  get.addColumn(FAMILY,QUALIFIER);
  result=ht.get(get);
  assertEmptyResult(result);
  scan=new Scan(ROWS[3]);
  result=getSingleScanResult(ht,scan);
  assertNullResult(result);
  scan=new Scan(ROWS[0],ROWS[2]);
  result=getSingleScanResult(ht,scan);
  assertNullResult(result);
  get=new Get(ROWS[2]);
  result=ht.get(get);
  assertSingleResult(result,ROWS[2],FAMILY,QUALIFIER,VALUE);
  get=new Get(ROWS[2]);
  get.addFamily(FAMILY);
  result=ht.get(get);
  assertSingleResult(result,ROWS[2],FAMILY,QUALIFIER,VALUE);
  get=new Get(ROWS[2]);
  get.addColumn(FAMILY,QUALIFIER);
  result=ht.get(get);
  assertSingleResult(result,ROWS[2],FAMILY,QUALIFIER,VALUE);
  scan=new Scan();
  result=getSingleScanResult(ht,scan);
  assertSingleResult(result,ROWS[2],FAMILY,QUALIFIER,VALUE);
  scan=new Scan(ROWS[0],ROWS[3]);
  result=getSingleScanResult(ht,scan);
  assertSingleResult(result,ROWS[2],FAMILY,QUALIFIER,VALUE);
  scan=new Scan(ROWS[2],ROWS[3]);
  result=getSingleScanResult(ht,scan);
  assertSingleResult(result,ROWS[2],FAMILY,QUALIFIER,VALUE);
}
