@Test public void parseFromColumn() throws Exception { final KeyValue column = mock(KeyValue.class); when(column.key()).thenReturn(new byte[] {0, 0, 1, 0, 0, 1, 0, 0, 1}); when(column.value()) .thenReturn( storage.getColumn( new byte[] {0, 0, 1, 0, 0, 1, 0, 0, 1}, NAME_FAMILY, "ts_meta".getBytes(MockBase.ASCII()))); final TSMeta meta = TSMeta.parseFromColumn(tsdb, column, false).joinUninterruptibly(); assertNotNull(meta); assertEquals("000001000001000001", meta.getTSUID()); assertNull(meta.getMetric()); }
@Test(expected = NoSuchUniqueId.class) public void parseFromColumnWithUIDMetaNSU() throws Exception { class ErrBack implements Callback<Object, Exception> { @Override public Object call(Exception e) throws Exception { Throwable ex = e; while (ex.getClass().equals(DeferredGroupException.class)) { ex = ex.getCause(); } throw (Exception) ex; } } final KeyValue column = mock(KeyValue.class); when(column.key()).thenReturn(new byte[] {0, 0, 1, 0, 0, 1, 0, 0, 2}); when(column.value()) .thenReturn( ("{\"tsuid\":\"000001000001000002\",\"" + "description\":\"Description\",\"notes\":\"Notes\",\"created\":1328140800," + "\"custom\":null,\"units\":\"\",\"retention\":42,\"max\":1.0,\"min\":" + "\"NaN\",\"displayName\":\"Display\",\"dataType\":\"Data\"}") .getBytes(MockBase.ASCII())); TSMeta.parseFromColumn(tsdb, column, true).addErrback(new ErrBack()).joinUninterruptibly(); }