### Question:
BSHTransactionParticipant extends SimpleLogSource implements TransactionParticipant, AbortParticipant, XmlConfigurable { public int prepare(long id, java.io.Serializable context) { LogEvent ev = new LogEvent(this, "prepare"); int result = ABORTED | READONLY; if (prepareMethod != null) { try { result = (Integer) executeMethod(prepareMethod, id, context, ev, "result"); } catch (Exception ex) { ev.addMessage(ex); } } else { result = defaultPrepare(id, context, ev); } ev.addMessage("result", Integer.toBinaryString(result)); if (trace) Logger.log(ev); return result; } BSHTransactionParticipant(); void abort(long id, java.io.Serializable context); void commit(long id, java.io.Serializable context); int prepare(long id, java.io.Serializable context); int prepareForAbort(long id, java.io.Serializable context); void setConfiguration(Element e);  }### Answer:
@Test public void testPrepare() throws Throwable { int result = new BSHTransactionParticipant().prepare(100L, new NotActiveException()); assertEquals(129, result, "result"); }