Sha256: 254cc48d6d100ae436f0a7e4cb279929b33f162dbc4d20f6ff77d503575090b7

Contents?: true

Size: 1.33 KB

Versions: 5

Compression:

Stored size: 1.33 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 "allows Wagn Bot to read" do
      Card::Auth.as_bot do
        expect(@format.render_raw).to eq("u1@user.com")
      end
    end

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

    it "hides 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 do
        @email_card = Card["u1"].account.email_card
      end

      it "downcases 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 "requires valid email" do
        @email_card.update_attributes content: "boop"
        expect(@email_card.errors[:content].first)
          .to match(/must be valid address/)
      end

      it "requires 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

5 entries across 5 versions & 1 rubygems

Version Path
card-1.92.2 mod/account/spec/set/right/email_spec.rb
card-1.92.1 mod/account/spec/set/right/email_spec.rb
card-1.92 mod/account/spec/set/right/email_spec.rb
card-1.91 mod/account/spec/set/right/email_spec.rb
card-1.21.0 mod/account/spec/set/right/email_spec.rb