Sha256: 89c5db2c2d642a0b74f6f31121cf7ad8344820c3e30a5a984c37f43ef7eba86d

Contents?: true

Size: 1.71 KB

Versions: 9

Compression:

Stored size: 1.71 KB

Contents

require "minitest/autorun"
require "fog/brightbox"

describe Fog::Brightbox::Storage, ".escape" do
  describe "when only excluded characters are used" do
    it "escapes no letters" do
      str = ("A".."Z").to_a.join
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal str, escaped

      str = ("a".."z").to_a.join
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal str, escaped
    end

    it "escapes no numbers" do
      str = ("0".."9").to_a.join
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal str, escaped
    end

    it "does not escape dashes" do
      str = "test-pattern123"
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal str, escaped
    end

    it "does not escape dots" do
      str = "sample.demo"
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal str, escaped
    end

    it "does not escape underscores" do
      str = "file_name"
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal str, escaped
    end
  end

  describe "when escaped characters are included" do
    it "escapes those forward slashes" do
      str = "test/pattern/123.txt"
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal "test%2Fpattern%2F123.txt", escaped
    end

    it "escapes those backslashes" do
      str = "test\\pattern\\123.txt"
      escaped = Fog::Brightbox::Storage.escape(str)
      assert_equal "test%5Cpattern%5C123.txt", escaped
    end
  end

  describe "when additional characters are excluded" do
    it "escapes those characters" do
      str = "test/pattern/123.txt"
      escaped = Fog::Brightbox::Storage.escape(str, "/")
      assert_equal "test/pattern/123.txt", escaped
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
fog-brightbox-1.12.0 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.11.0 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.10.0 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.9.1 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.9.0 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.8.2 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.8.1 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.8.0 spec/fog/brightbox/storage/escape_spec.rb
fog-brightbox-1.7.3 spec/fog/brightbox/storage/escape_spec.rb