'`makemigrations --merge --dry-run` writes the merge migration file to
stdout with `verbosity == 3` (#24427).'

def test_makemigration_merge_dry_run_verbosity_3(self):

    out = io.StringIO()
    with self.temporary_migration_module(module='migrations.test_migrations_conflict') as migration_dir:
        call_command('makemigrations', 'migrations', name='merge', dry_run=True, merge=True, interactive=False, stdout=out, verbosity=3)
        merge_file = os.path.join(migration_dir, '0003_merge.py')
        self.assertFalse(os.path.exists(merge_file))
    output = out.getvalue()
    self.assertIn('Merging    migrations', output)
    self.assertIn('Branch    0002_second', output)
    self.assertIn('Branch    0002_conflicting_second', output)
    self.assertNotIn('Created    new    merge    migration', output)
    self.assertIn('class    Migration(migrations.Migration):', output)
    self.assertIn('dependencies    =    [', output)
    self.assertIn("('migrations',    '0002_second')", output)
    self.assertIn("('migrations',    '0002_conflicting_second')", output)
    self.assertIn('operations    =    [', output)
    self.assertIn(']', output)
