@Test
  public void testResourceSchemaSanity() throws Exception {
    TestUtil.displayTestTile("testResourceSchemaSanity");

    QName objectClassQname =
        new QName(ResourceTypeUtil.getResourceNamespace(resourceType), "AccountObjectClass");
    ObjectClassComplexTypeDefinition accountDefinition =
        resourceSchema.findObjectClassDefinition(objectClassQname);
    assertNotNull("No object class definition " + objectClassQname, accountDefinition);
    assertEquals(
        "Object class " + objectClassQname + " is not account",
        ShadowKindType.ACCOUNT,
        accountDefinition.getKind());
    assertTrue(
        "Object class " + objectClassQname + " is not default account",
        accountDefinition.isDefaultInAKind());
    assertFalse("Object class " + objectClassQname + " is empty", accountDefinition.isEmpty());
    assertFalse("Object class " + objectClassQname + " is empty", accountDefinition.isIgnored());

    Collection<? extends ResourceAttributeDefinition> identifiers =
        accountDefinition.getIdentifiers();
    assertNotNull("Null identifiers for " + objectClassQname, identifiers);
    assertFalse("Empty identifiers for " + objectClassQname, identifiers.isEmpty());
    // TODO

    ResourceAttributeDefinition attributeDefinition =
        accountDefinition.findAttributeDefinition(ConnectorFactoryIcfImpl.ICFS_UID);
    assertNotNull(
        "No definition for attribute " + ConnectorFactoryIcfImpl.ICFS_UID, attributeDefinition);
    assertTrue(
        "Attribute " + ConnectorFactoryIcfImpl.ICFS_UID + " in not an identifier",
        attributeDefinition.isIdentifier(accountDefinition));
    assertTrue(
        "Attribute " + ConnectorFactoryIcfImpl.ICFS_UID + " in not in identifiers list",
        identifiers.contains(attributeDefinition));
  }