##### SUMMARY

Support collection roles as integration test targets.

Now that https://github.com/ansible/ansible/issues/59462 has been merged, ansible-test can be updated to support running integration test targets that are collection roles.

The planned convention is to look for targets under `roles/test/` and allow use of target-specific plugins from `plugins/{plugin_type}/test/{target_name}/`.

##### ISSUE TYPE

Feature Idea

##### COMPONENT NAME

ansible-test

##### ADDITIONAL INFORMATION

This will allow integration test targets to be written using collections instead of pre-collection roles.
"""Command-line argument completion target base class."""
    __metaclass__ = abc.ABCMeta
    def __init__(self):
        self.name = None
        self.path = None
        self.base_path = None
        self.modules = tuple()
        self.aliases = tuple()
    def __eq__(self, other):
        if isinstance(other, CompletionTarget):
            return self.__repr__() == other.__repr__()
        return False
    def __ne__(self, other):
        return not self.__eq__(other)
    def __lt__(self, other):
        return self.name.__lt__(other.name)
    def __gt__(self, other):
        return self.name.__gt__(other.name)
    def __hash__(self):
        return hash(self.__repr__())
    def __repr__(self):
        if self.modules:
            return '%s (%s)' % (self.name, ', '.join(self.modules))
        return self.name
class DirectoryTarget(CompletionTarget):