Sha256: e91240b3abfa40c642ebd84d6138c08778b7aeb4b5e6eaadb1812d71d83c13e7

Contents?: true

Size: 1.21 KB

Versions: 34

Compression:

Stored size: 1.21 KB

Contents

require File.expand_path("../../../base", __FILE__)

require "vagrant/util/presence"

describe Vagrant::Util::Presence do
  subject { described_class }

  describe "#presence" do
    it "returns false for nil" do
      expect(subject.presence(nil)).to be(false)
    end

    it "returns false for false" do
      expect(subject.presence(false)).to be(false)
    end

    it "returns false for an empty string" do
      expect(subject.presence("")).to be(false)
    end

    it "returns false for a string with null bytes" do
      expect(subject.presence("\u0000")).to be(false)
    end

    it "returns false for an empty array" do
      expect(subject.presence([])).to be(false)
    end

    it "returns false for an array with nil values" do
      expect(subject.presence([nil, nil])).to be(false)
    end

    it "returns false for an empty hash" do
      expect(subject.presence({})).to be(false)
    end

    it "returns true for true" do
      expect(subject.presence(true)).to be(true)
    end

    it "returns the object for an object" do
      obj = Object.new
      expect(subject.presence(obj)).to be(obj)
    end

    it "returns the class for a class" do
      expect(subject.presence(String)).to be(String)
    end
  end
end

Version data entries

34 entries across 30 versions & 6 rubygems

Version Path
tamtam-vagrant-reload-1.2.1 vendor/cache/vagrant-2092df529ae7/test/unit/vagrant/util/presence_test.rb
vagrant-aws-mkubenka-0.7.2.pre.24 vendor/bundle/ruby/2.7.0/bundler/gems/vagrant-22795b161bf6/test/unit/vagrant/util/presence_test.rb
vagrant-packet-0.1.2 vendor/bundle/ruby/2.4.0/bundler/gems/vagrant-04f7215b5e3f/test/unit/vagrant/util/presence_test.rb
vagrant-packet-0.1.2 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-04f7215b5e3f/test/unit/vagrant/util/presence_test.rb
vagrant-packet-0.1.2 vendor/bundle/ruby/2.5.0/bundler/gems/vagrant-04f7215b5e3f/test/unit/vagrant/util/presence_test.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-04f7215b5e3f/test/unit/vagrant/util/presence_test.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/bundler/gems/vagrant-04f7215b5e3f/test/unit/vagrant/util/presence_test.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/bundler/gems/vagrant-04f7215b5e3f/test/unit/vagrant/util/presence_test.rb
vagrant-aws-detiber-0.7.2.pre.4 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/test/unit/vagrant/util/presence_test.rb
vagrant-aws-detiber-0.7.2.pre.3 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/test/unit/vagrant/util/presence_test.rb
vagrant-aws-detiber-0.7.2.pre.2 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/test/unit/vagrant/util/presence_test.rb
vagrant-unbundled-2.0.2.0 test/unit/vagrant/util/presence_test.rb
vagrant-unbundled-2.0.1.0 test/unit/vagrant/util/presence_test.rb
vagrant-aws-mkubenka-0.7.2.pre.22 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-f3fdbf414272/test/unit/vagrant/util/presence_test.rb
vagrant-aws-mkubenka-0.7.2.pre.16 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-1ee58c40e3f5/test/unit/vagrant/util/presence_test.rb
vagrant-unbundled-2.0.0.1 test/unit/vagrant/util/presence_test.rb
vagrant-unbundled-1.9.8.1 test/unit/vagrant/util/presence_test.rb
vagrant-unbundled-1.9.7.1 test/unit/vagrant/util/presence_test.rb
vagrant-aws-mkubenka-0.7.2.pre.14 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-5333e60e2d38/test/unit/vagrant/util/presence_test.rb
vagrant-aws-mkubenka-0.7.2.pre.11 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-5333e60e2d38/test/unit/vagrant/util/presence_test.rb