public void assertFullSessionBean(String ejbName, JBossSessionBeanMetaData session, Mode mode) {
   assertId(ejbName, session);
   assertMappedName(ejbName, session.getMappedName());
   assertClass(ejbName, "Home", session.getHome());
   assertClass(ejbName, "Remote", session.getRemote());
   assertClass(ejbName, "LocalHome", session.getLocalHome());
   assertClass(ejbName, "Local", session.getLocal());
   assertClasses(ejbName, "BusinessLocal", 2, session.getBusinessLocals());
   assertClasses(ejbName, "BusinessRemote", 2, session.getBusinessRemotes());
   assertClass(ejbName, "ServiceEndpoint", session.getServiceEndpoint());
   assertClass(ejbName, "EjbClass", session.getEjbClass());
   assertEquals(SessionType.Stateless, session.getSessionType());
   assertNamedMethod(ejbName + "TimeoutMethod", 2, session.getTimeoutMethod());
   assertInitMethods(ejbName, 2, session.getInitMethods());
   assertRemoveMethods(ejbName, 3, session.getRemoveMethods());
   assertEquals(TransactionManagementType.CONTAINER, session.getTransactionType());
   assertAroundInvokes(ejbName, 2, session.getAroundInvokes());
   assertLifecycleCallbacks(ejbName, "PostActivate", 2, session.getPostActivates());
   assertLifecycleCallbacks(ejbName, "PrePassivate", 2, session.getPrePassivates());
   assertEnvironment(ejbName, session.getJndiEnvironmentRefsGroup(), true, mode);
   assertContainerTransactions(ejbName, 6, 6, session.getContainerTransactions());
   assertMethodPermissions(
       ejbName, ejbName + "MethodPermission", 3, 3, session.getMethodPermissions());
   assertExcludeList(ejbName, 5, 5, session.getExcludeList());
   assertSecurityRoleRefs(ejbName, 2, session.getSecurityRoleRefs());
   assertSecurityIdentity(ejbName, "SecurityIdentity", session.getSecurityIdentity(), true, mode);
 }