diff options
author | Thibaut Girka <thib@sitedethib.com> | 2020-11-12 22:13:57 +0100 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2020-11-12 22:13:57 +0100 |
commit | c077cdaba70eac154909cad412ece409acc2e688 (patch) | |
tree | 7d13d319ce62475de15014406635f32a8742ca4b /spec/models | |
parent | 67125534bc0fd48a45d6cb17a5c78712d8e87150 (diff) | |
parent | 9870b175b477bbc984fc7945f1ebe07e3f2b0053 (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: - `app/controllers/relationships_controller.rb`: Upstream changed a line too close to a glitch-soc only line related to glitch-soc's theming system. Applied upstream changes accordingly.
Diffstat (limited to 'spec/models')
-rw-r--r-- | spec/models/account_spec.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/spec/models/account_spec.rb b/spec/models/account_spec.rb index 98d29e6f3..75f628076 100644 --- a/spec/models/account_spec.rb +++ b/spec/models/account_spec.rb @@ -817,4 +817,27 @@ RSpec.describe Account, type: :model do include_examples 'AccountAvatar', :account include_examples 'AccountHeader', :account + + describe '#increment_count!' do + subject { Fabricate(:account) } + + it 'increments the count in multi-threaded an environment when account_stat is not yet initialized' do + subject + + increment_by = 15 + wait_for_start = true + + threads = Array.new(increment_by) do + Thread.new do + true while wait_for_start + Account.find(subject.id).increment_count!(:followers_count) + end + end + + wait_for_start = false + threads.each(&:join) + + expect(subject.reload.followers_count).to eq 15 + end + end end |