### Question:
TipManager extends AbstractMongoManager { public BseTip toBseTip(User user) { BseTip.Builder builder = BseTip.newBuilder(); for ( TipPojo tipPojo : dataList ) { if ( tipPojo != null ) { boolean sendTip = true; if ( user != null ) { if ( tipPojo.getChannel() != null ) { if ( user.getChannel().contains(tipPojo.getChannel()) ) { sendTip = true; } else { sendTip = false; } long currentMillis = System.currentTimeMillis(); if ( sendTip ) { if ( tipPojo.getStartMillis() > 0 ) { if ( tipPojo.getStartMillis() < currentMillis ) { sendTip = true; } else { sendTip = false; } } } if ( sendTip ) { if ( tipPojo.getEndMillis() > 0 ) { if ( tipPojo.getEndMillis() > currentMillis ) { sendTip = true; } else { sendTip = false; } } } } } if ( sendTip ) { String resTip = tipPojo.getTip(); if ( Constant.I18N_ENABLE ) { Locale locale = GameContext.getInstance().getLocaleThreadLocal().get(); resTip = GameResourceManager.getInstance().getGameResource( "tips_tip_".concat(String.valueOf(tipPojo.getId())), locale, tipPojo.getTip()); } builder.addTips(tipPojo.getTip()); } } } return builder.build(); } TipManager(); static TipManager getInstance(); void reload(); List<TipPojo> getTips(); BseTip toBseTip(User user);  }### Answer:
@Test public void testToBseTip() { BseTip bseTip = TipManager.getInstance().toBseTip(null); assertTrue(bseTip.getTipsCount()>=12); System.out.println(bseTip.getSerializedSize()); }