コード例 #1
0
  /**
   * Verifies that all permissible values of IdPolicy can be obtained by looking up the business ID
   * state.
   *
   * @throws Exception
   */
  @Test
  public void testGetIdPolicyActionForState() throws Exception {
    PersonCreationIdPolicyImpl underTest = new PersonCreationIdPolicyImpl();

    Map<BusinessIdState, IdPolicyAction> policyActionMap =
        new HashMap<BusinessIdState, IdPolicyAction>();
    policyActionMap.put(EXISTS, ACCEPT);
    policyActionMap.put(DOES_NOT_EXIST, REJECT);
    policyActionMap.put(ANY, SUBSTITUTE);
    policyActionMap.put(null, REPLACE);

    underTest.setPolicyActionMap(policyActionMap);

    assertEquals(REPLACE, underTest.getIdPolicyActionForState(null));
    assertEquals(SUBSTITUTE, underTest.getIdPolicyActionForState(ANY));
    assertEquals(REJECT, underTest.getIdPolicyActionForState(DOES_NOT_EXIST));
    assertEquals(ACCEPT, underTest.getIdPolicyActionForState(EXISTS));

    // Clear the map
    policyActionMap.clear();
    underTest.setPolicyActionMap(policyActionMap);

    // note that null can be returned
    assertNull(underTest.getIdPolicyActionForState(EXISTS));
  }