Sha256: 4e9593be2e78654fa4c9afca3d3833754efaa3bc2a14ee88910274b09a3d628f

Contents?: true

Size: 1.53 KB

Versions: 8

Compression:

Stored size: 1.53 KB

Contents

require 'spec_helper'

describe Dune::Admin::UserConcern do
  subject { User }

  describe ".by_email" do
    before do
      @u = create(:user, email: 'foo@bar.com')
      create(:user, email: 'another_email@bar.com')
    end
    subject{ User.by_email 'foo@bar' }
    it{ should == [@u] }
  end

  describe ".by_name" do
    before do
      @u = create(:user, name: 'Foo Bar')
      create(:user, name: 'Baz Qux')
    end
    subject{ User.by_name 'Bar' }
    it{ should == [@u] }
  end

  describe ".by_id" do
    before do
      @u = create(:user)
      create(:user)
    end
    subject{ User.by_id @u.id }
    it{ should == [@u] }
  end

  describe ".by_key" do
    before do
      b = create(:contribution)
      @u = b.user
      b.key = 'abc'
      b.save!
      b = create(:contribution, user: @u)
      b.key = 'abcde'
      b.save!
      b = create(:contribution)
      b.key = 'def'
      b.save!
    end
    subject{ User.by_key 'abc' }
    it{ should == [@u] }
  end

  describe ".has_credits" do
    subject{ User.has_credits }
    let(:failed_project){ create(:project, state: 'online') }
    let(:successful_project){ create(:project, state: 'online') }

    context "when he has credits in the user_total" do
      before do
        b = create(:contribution, state: 'confirmed', value: 100, project: failed_project)
        failed_project.update_attributes state: 'failed'
        @u = b.user
        b = create(:contribution, state: 'confirmed', value: 100, project: successful_project)
      end
      it{ should == [@u] }
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
dune-admin-1.2.7 spec/models/dune/admin/user_concern_spec.rb
dune-admin-1.2.6 spec/models/dune/admin/user_concern_spec.rb
dune-admin-1.2.5 spec/models/dune/admin/user_concern_spec.rb
dune-admin-1.2.4 spec/models/dune/admin/user_concern_spec.rb
dune-admin-1.2.3 spec/models/dune/admin/user_concern_spec.rb
dune-admin-1.0.0 spec/models/dune/admin/user_concern_spec.rb
dune-admin-1.2.1 spec/models/dune/admin/user_concern_spec.rb
dune-admin-1.2.0 spec/models/dune/admin/user_concern_spec.rb