Sha256: b97449fc4a77aa06c033c542dd791a1ab586016d0a6bf981ba82ce54c1e039ec

Contents?: true

Size: 1.68 KB

Versions: 9

Compression:

Stored size: 1.68 KB

Contents

require 'rails_helper'

RSpec.describe Org, type: :model do
  before do
    @org = Org.create!(lang_id: 1)
  end

  describe ".branches" do
    before do
      @branch_other = OrgBranch.create!(org_id: @org.id + 1, org_branch_type_id: 1)
      @branch  = OrgBranch.create!(org_id: @org.id, org_branch_type_id: 1)
      @branch2 = OrgBranch.create!(org_id: @org.id, org_branch_type_id: 1)
      @branch.add OrgMember.create!(org_id: @org.id, entried_on: Time.now)
    end

    it "includes no member branches" do
      expect(@org.branches.count).to eq(2)
    end
  end

  describe ".representative" do
    before do
      @member1 = OrgMember.create!(org_id: @org.id, entried_on: Time.now)
      @member0 = OrgMember.create!(org_id: @org.id, entried_on: Time.now)
      @director_type0 = OrgDirectorType.create!(org_id: @org.id, position: 0)
      @director_type1 = OrgDirectorType.create!(org_id: @org.id, position: 1)
    end

    context "count 0" do
      it "no director" do
        expect(@org.representative).to be_nil
      end

      it "no primary director_type member" do
        @member1.update(org_director_type_id: @director_type1.id)
        expect(@org.representative).to be_nil
      end
    end

    context "has director" do
      before do
        @member0.update(org_director_type_id: @director_type0.id)
        @member1.update(org_director_type_id: @director_type1.id)
      end

      it "count 1 with 1 member" do
        expect(@org.representative.id).to eq(@member0.id)
      end

      it "count 1 with 2 member" do
        @member1.update(org_director_type_id: @director_type0.id)
        expect(@org.representative.id).to eq([@member0,@member1].min_by(&:id).id)
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
we_bridge_rails_engine_orgs-0.1.16 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.15 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.14 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.13 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.12 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.11 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.10 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.9 spec/models/org_spec.rb
we_bridge_rails_engine_orgs-0.1.8 spec/models/org_spec.rb