Sha256: bca23a22a9e179b1217cb92be18d1c3954ce333f5e180ca2344ccd9deb799443

Contents?: true

Size: 1.46 KB

Versions: 5

Compression:

Stored size: 1.46 KB

Contents

require 'spec_helper'

module Hubstats
  describe User, :type => :model do
    before do
      User.destroy_all()
    end

    it 'should create and return a user' do
      user = build(:user_hash, id: 10)
      expect(User.create_or_update(user).id).to eq(10)
    end

    it 'should update a user based off id' do
      user1 = User.create_or_update(build(:user_hash, login: 'johnappleseed', id: 10))
      user2 = User.create_or_update(build(:user_hash, login: 'johndoe', id: 10))
      expect(user1).to eq(user2)
      expect(user2.login).to eq("johndoe")
      expect(user1.login).not_to eq("johnapplesdeed")
    end

    it 'should find the team that this user belongs to' do
      team = create(:team)
      user = create(:user, login: 'janedoe', id: 11)
      team.users << user
      expect(user.login).to eq('janedoe')
      expect(user.team).to eq(team)
    end

    it 'should find first team that this user belongs to' do
      team1 = create(:team, name: "sad")
      team2 = create(:team, name: "happy")
      user = create(:user, login: 'janedoe', id: 11)
      team1.users << user
      team2.users << user
      expect(user.login).to eq('janedoe')
      expect(user.team).to eq(team1)
    end

    it 'should return no team if the hubstats bool is false' do
      team = create(:team, hubstats: false)
      user = create(:user, login: 'janedoe', id: 11)
      team.users << user
      expect(user.login).to eq('janedoe')
      expect(user.team).to eq(nil)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
hubstats-0.5.4 spec/models/hubstats/user_spec.rb
hubstats-0.5.3 spec/models/hubstats/user_spec.rb
hubstats-0.5.2 spec/models/hubstats/user_spec.rb
hubstats-0.5.1 spec/models/hubstats/user_spec.rb
hubstats-0.5.0 spec/models/hubstats/user_spec.rb