Class TestHelpers


  • public final class TestHelpers
    extends Object
    Bag of utility methods useful to connector tests.
    • Method Detail

      • fillConfiguration

        public static void fillConfiguration​(Configuration config,
                                             Map<String,​? extends Object> configData)
        Fills a configuration bean with data from the given map. The map keys are configuration property names and the values are configuration property values.
        Parameters:
        config - the configuration bean.
        configData - the map with configuration data.
      • createDummyMessages

        public static ConnectorMessages createDummyMessages()
        Creates an dummy message catalog ideal for unit testing. All messages are formatted as follows:

        message-key: arg0.toString(), ..., argn.toString

        Returns:
        A dummy message catalog.
      • searchToList

        public static List<ConnectorObject> searchToList​(SearchOp<?> search,
                                                         ObjectClass objectClass,
                                                         Filter filter)
        Performs a raw, unfiltered search at the SPI level, eliminating duplicates from the result set.
        Parameters:
        search - The search SPI
        objectClass - The object class - passed through to connector so it may be null if the connecor allowing it to be null. (This is convenient for unit tests, but will not be the case in general)
        filter - The filter to search on
        Returns:
        The list of results.
      • searchToList

        public static List<ConnectorObject> searchToList​(SearchOp<?> search,
                                                         ObjectClass objectClass,
                                                         Filter filter,
                                                         OperationOptions options)
        Performs a raw, unfiltered search at the SPI level, eliminating duplicates from the result set.
        Parameters:
        search - The search SPI
        objectClass - The object class - passed through to connector so it may be null if the connecor allowing it to be null. (This is convenient for unit tests, but will not be the case in general)
        filter - The filter to search on
        options - The options - may be null - will be cast to an empty OperationOptions
        Returns:
        The list of results.
      • search

        public static void search​(SearchOp<?> search,
                                  ObjectClass objectClass,
                                  Filter filter,
                                  ResultsHandler handler,
                                  OperationOptions options)
        Performs a raw, unfiltered search at the SPI level, eliminating duplicates from the result set.
        Parameters:
        search - The search SPI
        objectClass - The object class - passed through to connector so it may be null if the connecor allowing it to be null. (This is convenient for unit tests, but will not be the case in general)
        filter - The filter to search on
        handler - The result handler
        options - The options - may be null - will be cast to an emptyOperationOptions
      • getProperties

        public static PropertyBag getProperties​(Class<?> clazz)
        Loads Property bag for the specified class. The properties are loaded as classpath resources using the class argument as root prefix. Optional system property 'testConfig' is used to specify another configuration path for properties. The following algorithm is used to load the properties in bag
        • loader.getResource(prefix + "/config/config.groovy")
        • loader.getResource(prefix + "/config/" + cfg + "/config.groovy") optionally where cfg is passed configuration
        • loader.getResource(prefix + "/config-private/config.groovy")
        • loader.getResource(prefix + "/config-private/" + cfg + "/config.groovy") optionally where cfg is passed configuration
        Context classloader is used to load the resources.
        Parameters:
        clazz - Class which FQN is used as root prefix for loading of properties
        Returns:
        Bag of properties for specified class and optionally passed configuration
        Throws:
        IllegalStateException - if context classloader is null
      • getProperties

        public static PropertyBag getProperties​(Class<?> clazz,
                                                String environment)
        Loads Property bag for the specified class. The properties are loaded as classpath resources using the class argument as root prefix. Optional system property 'testConfig' is used to specify another configuration path for properties. The following algorithm is used to load the properties in bag
        • loader.getResource(prefix + "/config/config.groovy")
        • loader.getResource(prefix + "/config/" + cfg + "/config.groovy") optionally where cfg is passed configuration
        • loader.getResource(prefix + "/config-private/config.groovy")
        • loader.getResource(prefix + "/config-private/" + cfg + "/config.groovy") optionally where cfg is passed configuration
        Context classloader is used to load the resources.
        Parameters:
        clazz - Class which FQN is used as root prefix for loading of properties
        environment - Environment name (Optional)
        Returns:
        Bag of properties for specified class and optionally passed configuration
        Throws:
        IllegalStateException - if context classloader is null