          call_command("makemigrations", "migrations", merge=True, interactive=False, stdout=stdout)
          self.assertIn("Merging migrations", stdout.getvalue())
          self.assertIn("Branch 0002_second", stdout.getvalue())
          self.assertIn("Branch 0002_conflicting_second", stdout.getvalue())
  
      @override_system_checks([])
      @override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations_no_default"})
      def test_makemigrations_dry_run(self):
 
</s> remove         call_command("makemigrations", "migrations", merge=True, stdout=stdout)
 </s> add         call_command("makemigrations", "migrations", merge=True, interactive=False, stdout=stdout) </s> remove         Makes sure that makemigrations properly merges the conflicting migrations.
 </s> add         Makes sure that makemigrations properly merges the conflicting migrations with --noinput. </s> remove     @override_system_checks([])
    @override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations_conflict"})
    def test_makemigrations_merge_basic(self):
        """
        Makes sure that makemigrations doesn't error if you ask for
        merge mode with a conflict present. Doesn't test writing of the merge
        file, as that requires temp directories.
        """
        try:
            call_command("makemigrations", merge=True, verbosity=0)
        except CommandError:
            self.fail("Makemigrations errored in merge mode with conflicts")

 </s> add 
        merge_file = os.path.join(self.test_dir, 'test_migrations_conflict', '0003_merge.py')
        self.assertTrue(os.path.exists(merge_file))
        os.remove(merge_file)
        self.assertFalse(os.path.exists(merge_file))
        self.assertIn("Created new merge migration", stdout.getvalue())
          call_command("makemigrations", "migrations", merge=True, interactive=False, stdout=stdout)
          self.assertIn("Merging migrations", stdout.getvalue())
          self.assertIn("Branch 0002_second", stdout.getvalue())
          self.assertIn("Branch 0002_conflicting_second", stdout.getvalue())
        merge_file = os.path.join(self.test_dir, 'test_migrations_conflict', '0003_merge.py')
        self.assertTrue(os.path.exists(merge_file))
        os.remove(merge_file)
        self.assertFalse(os.path.exists(merge_file))
        self.assertIn("Created new merge migration", stdout.getvalue())
  
      @override_system_checks([])
      @override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations_no_default"})
      def test_makemigrations_dry_run(self):
keep keep keep add keep keep keep keep
 Fixed #22862 -- Added --noinput option to makemigrations.

Thanks artortenburger for the report. 
tests/migrations/test_commands.py