Sha256: af0a1ef0989b5514576048cbe82504563f6619d36feab37dd79173743e6f985a

Contents?: true

Size: 1.37 KB

Versions: 7

Compression:

Stored size: 1.37 KB

Contents

# -*- encoding : utf-8 -*-

describe Card::Set::Right::Email do
  context "<User>+*email" do
    before do
      @card = Card.fetch "u1+*email"
      @format = @card.format
    end

    it "should allow Wagn Bot to read" do
      Card::Auth.as_bot do
        expect(@format.render_raw).to eq("u1@user.com")
      end
    end

    it "should allow self to read" do
      Card::Auth.as Card["u1"] do
        expect(@format.render_raw).to eq("u1@user.com")
      end
    end

    it "should hide from other users" do
      expect(@card.ok?(:read)).to be_falsey
      expect(@format.render_raw).to match(/denied/)
    end
  end

  context "+*account+*email" do
    context "update" do
      before :each do
        @email_card = Card["u1"].account.email_card
      end

      it "should downcase email" do
        Card::Auth.as_bot do
          @email_card.update_attributes! content: "QuIrE@example.com"
          expect(@email_card.content).to eq("quire@example.com")
        end
      end

      it "should require valid email" do
        @email_card.update_attributes content: "boop"
        expect(@email_card.errors[:content].first)
          .to match(/must be valid address/)
      end

      it "should require unique email" do
        @email_card.update_attributes content: "joe@user.com"
        expect(@email_card.errors[:content].first).to match(/must be unique/)
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
card-1.19.6 mod/account/spec/set/right/email_spec.rb
card-1.19.5 mod/account/spec/set/right/email_spec.rb
card-1.19.4 mod/account/spec/set/right/email_spec.rb
card-1.19.3 mod/account/spec/set/right/email_spec.rb
card-1.19.2 mod/account/spec/set/right/email_spec.rb
card-1.19.1 mod/account/spec/set/right/email_spec.rb
card-1.19.0 mod/account/spec/set/right/email_spec.rb