### Summary

Hello,

We are developing a new custom collection that has the following deep module structure:

```
plugins/modules/
├── backup
│   ├── backint
│   │   ├── __init__.py
│   │   └── install.py
│   ├── configurator.py
│   ├── executor.py
│   ├── __init__.py
│   └── scheduler.py
├── certificates
│   ├── info.py
│   └── __init__.py
├── hdbuserstore
│   ├── editor.py
│   ├── info.py
│   └── __init__.py
├── __init__.py
├── parameters
│   ├── editor.py
│   ├── __init__.py
│   └── validator.py
├── procedure.py
├── pse
│   ├── certificates_info.py
│   └── __init__.py
└── query.py
```

So now if we run the command `ansible-test sanity --test ansible-doc`, it is failing with this error:

```
Running sanity test "ansible-doc"
ERROR: Output on stderr from ansible-doc is considered an error.

Command "ansible-doc -t module priejos.saphana.certificates_info priejos.saphana.configurator priejos.saphana.editor priejos.saphana.editor priejos.saphana.executor priejos.saphana.info priejos.saphana.info priejos.saphana.install priejos.saphana.procedure priejos.saphana.query priejos.saphana.scheduler priejos.saphana.validator" returned exit status 0.
>>> Standard Error
[WARNING]: module priejos.saphana.certificates_info not found in:
/dev/null:/tmp/ansible-test-2z8ljk2u/ansible/modules
[WARNING]: module priejos.saphana.configurator not found in:
/dev/null:/tmp/ansible-test-2z8ljk2u/ansible/modules
[WARNING]: module priejos.saphana.editor not found in: /dev/null:/tmp/ansible-
test-2z8ljk2u/ansible/modules
[WARNING]: module priejos.saphana.executor not found in: /dev/null:/tmp/ansible-
test-2z8ljk2u/ansible/modules
[WARNING]: module priejos.saphana.info not found in: /dev/null:/tmp/ansible-
test-2z8ljk2u/ansible/modules
[WARNING]: module priejos.saphana.install not found in: /dev/null:/tmp/ansible-
test-2z8ljk2u/ansible/modules
[WARNING]: module priejos.saphana.scheduler not found in: /dev/null:/tmp/ansible-
test-2z8ljk2u/ansible/modules
[WARNING]: module priejos.saphana.validator not found in: /dev/null:/tmp/ansible-
test-2z8ljk2u/ansible/modules
FATAL: The 1 sanity test(s) listed below (out of 1) failed. See error output above for details.
ansible-doc
```

The issue seems to be related to a bug in the way the class `ansible_test._internal.commands.sanity.ansible_doc.AnsibleDocTest` computes the module FQCN inside the method `test`. Indeed the issue is in the next `for` loop inside that method which is missing to add the rest of the module FQCN when appending values to dict `doc_targets` and `target_paths`:

```python
for plugin_type, plugin_path in data_context().content.plugin_paths.items():
    plugin_type = remap_types.get(plugin_type, plugin_type)

    for plugin_file_path in [target.name for target in targets.include if is_subdir(target.path, plugin_path)]:
        plugin_name = os.path.splitext(os.path.basename(plugin_file_path))[0]

        if plugin_name.startswith('_'):
            plugin_name = plugin_name[1:]

        doc_targets[plugin_type].append(data_context().content.prefix + plugin_name)
        target_paths[plugin_type][data_context().content.prefix + plugin_name] = plugin_file_path
```

You may be fixing this issue up with something like the next code excerpt which is taking into consideration the whole module FQCN:

```python
module_path = os.path.join(data_context().content.module_path, '')
for plugin_type, plugin_path in data_context().content.plugin_paths.items():
    plugin_type = remap_types.get(plugin_type, plugin_type)
    
    for plugin_file_path in [target.name for target in targets.include if is_subdir(target.path, plugin_path)]:
        plugin_path_noext = os.path.splitext(plugin_file_path)[0]
        plugin_name_parts = plugin_path_noext.replace(module_path, '', 1).split('/')
        plugin_ctx, plugin_name = plugin_name_parts[:-1], plugin_name_parts[-1]
    
        if plugin_name.startswith('_'):
            plugin_name = plugin_name[1:]
        
        if plugin_ctx:
            plugin_full_ctx = data_context().content.prefix + '.'.join(plugin_ctx) + '.'
        else:
            plugin_full_ctx = data_context().content.prefix
        plugin_full_name = plugin_full_ctx + plugin_name
        
        doc_targets[plugin_type].append(plugin_full_name)
        target_paths[plugin_type][plugin_full_name] = plugin_file_path
```

Thanks in advanced for your support.

Cheers
Jose M. Prieto

### Issue Type

Bug Report

### Component Name

ansible-test sanity --test ansible-doc

### Ansible Version

```console
$ ansible --version
ansible [core 2.13.2]
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/users/priejos/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/sap/CEXIE/team/priejos/ansible_collections/roche/saphana/venv/lib64/python3.8/site-packages/ansible
  ansible collection location = /usr/sap/CEXIE/team/priejos
  executable location = /usr/sap/CEXIE/team/priejos/ansible_collections/roche/saphana/venv/bin/ansible
  python version = 3.8.11 (default, Jul 23 2021, 14:55:16) [GCC 9.1.1 20190605 (Red Hat 9.1.1-2)]
  jinja version = 3.1.2
  libyaml = True
```


### Configuration

```console
# if using a version older than ansible-core 2.12 you should omit the '-t all'
$ ansible-config dump --only-changed -t all
COLLECTIONS_PATHS(env: ANSIBLE_COLLECTIONS_PATH) = ['/usr/sap/CEXIE/team/priejos']
HOST_KEY_CHECKING(/etc/ansible/ansible.cfg) = False

CONNECTION:
==========

paramiko_ssh:
____________
host_key_checking(/etc/ansible/ansible.cfg) = False

ssh:
___
host_key_checking(/etc/ansible/ansible.cfg) = False
pipelining(/etc/ansible/ansible.cfg) = True
scp_if_ssh(/etc/ansible/ansible.cfg) = True
ssh_args(/etc/ansible/ansible.cfg) = -o ConnectionAttempts=20
```


### OS / Environment

$ lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: RedHatEnterpriseServer
Description:    Red Hat Enterprise Linux Server release 7.9 (Maipo)
Release:        7.9
Codename:       Maipo

### Steps to Reproduce

1. Try to have a deep module structure like the one I pasted in the summary section
2. Execute the ansible-doc sanity check like `ansible-test sanity --test ansible-doc`


### Expected Results

The sanity check `ansible-doc` to recognize the right module FQCN in a deep structure like shown in section "Summary".

### Actual Results

```console
$ ansible-test sanity --test ansible-doc -v --debug
Creating container database.
Read 5 sanity test ignore line(s) for Ansible 2.13 from: tests/sanity/ignore-2.13.txt
Running sanity test "ansible-doc"
Initializing "/tmp/ansible-test-7fr64tiv-injector" as the temporary injector directory.
Run command: ansible-doc -t module priejos.saphana.certificates_info priejos.saphana.configurator priejos.saphana.editor priejos.saphana.editor priejos.saphana.executor priejos.saphana.info priejos.saphana.info priejos.saphana.install priejos.saphana.procedure priejos.saphana.query priejos.saphana.scheduler priejos.saphana.validator
ERROR: Output on stderr from ansible-doc is considered an error.

Command "ansible-doc -t module priejos.saphana.certificates_info priejos.saphana.configurator priejos.saphana.editor priejos.saphana.editor priejos.saphana.executor priejos.saphana.info priejos.saphana.info priejos.saphana.install priejos.saphana.procedure priejos.saphana.query priejos.saphana.scheduler priejos.saphana.validator" returned exit status 0.
>>> Standard Error
[WARNING]: module priejos.saphana.certificates_info not found in:
/dev/null:/tmp/ansible-test-q8hhje7a/ansible/modules
[WARNING]: module priejos.saphana.configurator not found in:
/dev/null:/tmp/ansible-test-q8hhje7a/ansible/modules
[WARNING]: module priejos.saphana.editor not found in: /dev/null:/tmp/ansible-
test-q8hhje7a/ansible/modules
[WARNING]: module priejos.saphana.executor not found in: /dev/null:/tmp/ansible-
test-q8hhje7a/ansible/modules
[WARNING]: module priejos.saphana.info not found in: /dev/null:/tmp/ansible-
test-q8hhje7a/ansible/modules
[WARNING]: module priejos.saphana.install not found in: /dev/null:/tmp/ansible-
test-q8hhje7a/ansible/modules
[WARNING]: module priejos.saphana.scheduler not found in: /dev/null:/tmp/ansible-
test-q8hhje7a/ansible/modules
[WARNING]: module priejos.saphana.validator not found in: /dev/null:/tmp/ansible-
test-q8hhje7a/ansible/modules
FATAL: The 1 sanity test(s) listed below (out of 1) failed. See error output above for details.
ansible-doc
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
"""Sanity test for ansible-doc."""
from __future__ import annotations
import collections
import os
import re
from . import (
    DOCUMENTABLE_PLUGINS,
    SanitySingleVersion,