Problem/Motivation

The entity_share_test test module has a ton of dependencies and installs a ton of config. It's been made to hold ALL the config requirements for ALL the functional tests.

But only some tests need some of the config -- e.g. only the BlockFieldTest test needs block_field module and the config to set up the relevant fields. Some tests like ContentEntityReferenceTest barely need anything at all.

This makes the tests slower run run, and means that a developer debugging a single failing test needs to install ALL the dependencies.

Steps to reproduce

Proposed resolution

Ideally, instead of one test module, we'd have several, each one with a small set of dependencies -- entity_share_test_block_field, entity_share_test_path, entity_share_test_media, etc.

However, splitting up that config is going to be fiddly.

Instead, we can make all the config in entity_share_test optional, remove the dependencies, and then each test installs the modules it needs.

Preliminary work shows that a simple test like ContentEntityReferenceTest halves its execution time from 10 to 5 seconds.

Remaining tasks

User interface changes

API changes

Data model changes

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

joachim created an issue. See original summary.

joachim’s picture

Issue summary: View changes

  • joachim committed 84afa5fc on 4.0.x
    Issue #3541217: Fixed test module installs all the config config in each...
joachim’s picture

Status: Active » Fixed

  • joachim committed 615ab475 on 8.x-3.x
    Issue #3541217 by joachim:  Issue #3541217: Fixed test module installs...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.