From 8d7c4aebf4ff30b044d6d95b9f82b9dd29e176f3 Mon Sep 17 00:00:00 2001
From: David Taylor <david@taylorhq.com>
Date: Tue, 5 Sep 2023 20:56:03 +0100
Subject: [PATCH] DEV: Update application_helper_spec following 1bd00076
 (#23413)

The 'discourse' script will now include all its related webpack chunks. That means that, if you have compiled JS assets, this spec started failing. This commit switches the specs to use a different js file, which does not have associated webpack chunks.
---
 spec/helpers/application_helper_spec.rb | 40 ++++++++++++-------------
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/spec/helpers/application_helper_spec.rb b/spec/helpers/application_helper_spec.rb
index 74293e13614..396dff62dda 100644
--- a/spec/helpers/application_helper_spec.rb
+++ b/spec/helpers/application_helper_spec.rb
@@ -32,9 +32,9 @@ RSpec.describe ApplicationHelper do
       set_cdn_url "https://awesome.com"
 
       helper.request.env["HTTP_ACCEPT_ENCODING"] = "br"
-      link = helper.preload_script("discourse")
+      link = helper.preload_script("start-discourse")
 
-      expect(link).to eq(script_tag("https://awesome.com/brotli_asset/discourse.js"))
+      expect(link).to eq(script_tag("https://awesome.com/brotli_asset/start-discourse.js"))
     end
 
     context "with s3 CDN" do
@@ -48,8 +48,8 @@ RSpec.describe ApplicationHelper do
 
       it "deals correctly with subfolder" do
         set_subfolder "/community"
-        expect(helper.preload_script("discourse")).to include(
-          "https://s3cdn.com/assets/discourse.js",
+        expect(helper.preload_script("start-discourse")).to include(
+          "https://s3cdn.com/assets/start-discourse.js",
         )
       end
 
@@ -57,35 +57,35 @@ RSpec.describe ApplicationHelper do
         global_setting :s3_cdn_url, "https://s3cdn.com/s3_subpath"
         set_cdn_url "https://awesome.com"
         set_subfolder "/community"
-        expect(helper.preload_script("discourse")).to include(
-          "https://s3cdn.com/s3_subpath/assets/discourse.js",
+        expect(helper.preload_script("start-discourse")).to include(
+          "https://s3cdn.com/s3_subpath/assets/start-discourse.js",
         )
       end
 
       it "returns magic brotli mangling for brotli requests" do
         helper.request.env["HTTP_ACCEPT_ENCODING"] = "br"
-        link = helper.preload_script("discourse")
+        link = helper.preload_script("start-discourse")
 
-        expect(link).to eq(script_tag("https://s3cdn.com/assets/discourse.br.js"))
+        expect(link).to eq(script_tag("https://s3cdn.com/assets/start-discourse.br.js"))
       end
 
       it "gives s3 cdn if asset host is not set" do
-        link = helper.preload_script("discourse")
+        link = helper.preload_script("start-discourse")
 
-        expect(link).to eq(script_tag("https://s3cdn.com/assets/discourse.js"))
+        expect(link).to eq(script_tag("https://s3cdn.com/assets/start-discourse.js"))
       end
 
       it "can fall back to gzip compression" do
         helper.request.env["HTTP_ACCEPT_ENCODING"] = "gzip"
-        link = helper.preload_script("discourse")
-        expect(link).to eq(script_tag("https://s3cdn.com/assets/discourse.gz.js"))
+        link = helper.preload_script("start-discourse")
+        expect(link).to eq(script_tag("https://s3cdn.com/assets/start-discourse.gz.js"))
       end
 
       it "gives s3 cdn even if asset host is set" do
         set_cdn_url "https://awesome.com"
-        link = helper.preload_script("discourse")
+        link = helper.preload_script("start-discourse")
 
-        expect(link).to eq(script_tag("https://s3cdn.com/assets/discourse.js"))
+        expect(link).to eq(script_tag("https://s3cdn.com/assets/start-discourse.js"))
       end
 
       it "gives s3 cdn but without brotli/gzip extensions for theme tests assets" do
@@ -98,8 +98,8 @@ RSpec.describe ApplicationHelper do
 
       it "uses separate asset CDN if configured" do
         global_setting :s3_asset_cdn_url, "https://s3-asset-cdn.example.com"
-        expect(helper.preload_script("discourse")).to include(
-          "https://s3-asset-cdn.example.com/assets/discourse.js",
+        expect(helper.preload_script("start-discourse")).to include(
+          "https://s3-asset-cdn.example.com/assets/start-discourse.js",
         )
       end
     end
@@ -108,7 +108,7 @@ RSpec.describe ApplicationHelper do
   describe "add_resource_preload_list" do
     it "adds resources to the preload list when it's available" do
       @links_to_preload = []
-      add_resource_preload_list("/assets/discourse.js", "script")
+      add_resource_preload_list("/assets/start-discourse.js", "script")
       add_resource_preload_list("/assets/discourse.css", "style")
 
       expect(@links_to_preload.size).to eq(2)
@@ -116,7 +116,7 @@ RSpec.describe ApplicationHelper do
 
     it "doesn't add resources to the preload list when it's not available" do
       @links_to_preload = nil
-      add_resource_preload_list("/assets/discourse.js", "script")
+      add_resource_preload_list("/assets/start-discourse.js", "script")
       add_resource_preload_list("/assets/discourse.css", "style")
 
       expect(@links_to_preload).to eq(nil)
@@ -124,7 +124,7 @@ RSpec.describe ApplicationHelper do
 
     it "adds resources to the preload list when preload_script is called" do
       @links_to_preload = []
-      helper.preload_script("discourse")
+      helper.preload_script("start-discourse")
 
       expect(@links_to_preload.size).to eq(1)
     end
@@ -139,7 +139,7 @@ RSpec.describe ApplicationHelper do
     it "adds resources as the correct type" do
       @links_to_preload = []
       helper.discourse_stylesheet_link_tag(:desktop)
-      helper.preload_script("discourse")
+      helper.preload_script("start-discourse")
 
       expect(@links_to_preload[0]).to match(/as="style"/)
       expect(@links_to_preload[1]).to match(/as="script"/)