From b3eb977096b5ea177fdffd8fc9c61bcbbcfab49d Mon Sep 17 00:00:00 2001 From: Tim McIver Date: Sat, 14 Nov 2020 16:09:07 -0500 Subject: [PATCH] Fix HTTPure.Utils.replacePlus (#166) * Create failing test. * Fix code so failing test passes. --- src/HTTPure/Utils.purs | 2 +- test/Test/HTTPure/UtilsSpec.purs | 19 +++++++++++++++++++ test/Test/Main.purs | 2 ++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 test/Test/HTTPure/UtilsSpec.purs diff --git a/src/HTTPure/Utils.purs b/src/HTTPure/Utils.purs index 02c3e7d..c93a553 100644 --- a/src/HTTPure/Utils.purs +++ b/src/HTTPure/Utils.purs @@ -19,7 +19,7 @@ encodeURIComponent = unsafeEncodeURIComponent replacePlus :: String -> String replacePlus = - String.replace (String.Pattern "+") (String.Replacement "%20") + String.replaceAll (String.Pattern "+") (String.Replacement "%20") urlDecode :: String -> String diff --git a/test/Test/HTTPure/UtilsSpec.purs b/test/Test/HTTPure/UtilsSpec.purs new file mode 100644 index 0000000..b995b92 --- /dev/null +++ b/test/Test/HTTPure/UtilsSpec.purs @@ -0,0 +1,19 @@ +module Test.HTTPure.UtilsSpec where + +import Prelude + +import Data.Tuple as Tuple +import Foreign.Object as Object +import Test.Spec as Spec + +import HTTPure.Query as Query +import HTTPure.Utils as Utils + +import Test.HTTPure.TestHelpers as TestHelpers +import Test.HTTPure.TestHelpers ((?=)) + +utilsSpec :: TestHelpers.Test +utilsSpec = Spec.describe "replacePlus" do + Spec.it "should replace all pluses" do + Utils.replacePlus "HTTPPure+is+A+purescript+HTTP+server+framework" ?= + "HTTPPure%20is%20A%20purescript%20HTTP%20server%20framework" diff --git a/test/Test/Main.purs b/test/Test/Main.purs index f814827..490cc93 100644 --- a/test/Test/Main.purs +++ b/test/Test/Main.purs @@ -17,6 +17,7 @@ import Test.HTTPure.RequestSpec as RequestSpec import Test.HTTPure.ResponseSpec as ResponseSpec import Test.HTTPure.ServerSpec as ServerSpec import Test.HTTPure.StatusSpec as StatusSpec +import Test.HTTPure.UtilsSpec as UtilsSpec import Test.HTTPure.VersionSpec as VersionSpec import Test.HTTPure.IntegrationSpec as IntegrationSpec @@ -34,5 +35,6 @@ main = Aff.launchAff_ $ Runner.runSpec [ Reporter.specReporter ] $ Spec.describe ResponseSpec.responseSpec ServerSpec.serverSpec StatusSpec.statusSpec + UtilsSpec.utilsSpec VersionSpec.versionSpec IntegrationSpec.integrationSpec