def METHOD_NAME(client, phase, user2):
    module = phase.module
    module.is_draft = True
    module.description = ""
    module.save()
    organisation = module.project.organisation
    organisation.initiators.add(user2)
    module_publish_url = reverse(
        "a4dashboard:module-publish", kwargs={"module_slug": module.slug}
    )
    data = {"action": "publish"}
    # publishing incomplete modules has no effect
    client.login(username=user2, password="password")
    response = client.post(module_publish_url, data)
    assert redirect_target(response) == "project-edit"
    module.refresh_from_db()
    assert module.is_draft is True
    # complete module and publish it
    module.description = "module description"
    module.save()
    client.login(username=user2, password="password")
    response = client.post(module_publish_url, data)
    assert redirect_target(response) == "project-edit"
    module.refresh_from_db()
    assert module.is_draft is False