##### SUMMARY

When checking Ansible modules, the import sanity test should check modules twice, once with `__name__` set to `'__main__'` and once without, so that modules can be checked up to the point that `AnsibleModule` is instantiated.

This works correctly for Ansible 2.8 and earlier, but in Ansible 2.9 the checking with `__name__` set to  `'__main__'` no longer occurs.

##### ISSUE TYPE

Bug Report

##### COMPONENT NAME

ansible-test

##### ANSIBLE VERSION

2.9.0rc1

##### CONFIGURATION

N/A

##### OS / ENVIRONMENT

N/A

##### STEPS TO REPRODUCE

```
ansible-test coverage erase
ansible-test sanity --test import ping --docker -v --coverage --python 3.7
ansible-test coverage html
```

Look at the coverage results for the `ping` module and notice that under Ansible 2.8 and earlier the `__name__ == '__main__'` branch is covered, but under Ansible 2.9 it is not.

##### EXPECTED RESULTS

Ansible modules are checked with `__name__` set to `'__main__'` and not.

##### ACTUAL RESULTS

Ansible modules are checked only with `__name__` not set to `'__main__'`.

source = path
                line = ex.lineno or 0  
                offset = ex.offset or 0  
                message = str(ex)
                
                message = message.replace(' (%s, line %d)' % (os.path.basename(path), line), '')
            else:
                for result in results:
                    if result[0].startswith(filter_dir):
                        source = result[0][len(base_dir) + 1:].replace('test/lib/ansible_test/_data/sanity/import/', '')
                        line = result[1] or 0
                        break
                if not source:
                    
                    
                    source = path
                    message += ' (in %s:%d)' % (results[-1][0], results[-1][1] or 0)
            message = re.sub(r'\n *', ': ', message)
            error = '%s:%d:%d: %s: %s' % (source, line, offset, exc_type.__name__, message)
            report_message(error, messages)
    def run_if_really_module(module):
        
        if ('removed' not in module.ANSIBLE_METADATA['status'] and
                
                [attr for attr in
                 (frozenset(module.__dict__.keys()).difference(doc_keys))
                 if not (attr.startswith('__') and attr.endswith('__'))]):
            
            module.main()
    def calculate_python_module_name(path):