Pārlūkot izejas kodu

Do not filter statuses with unknown languages (#5045)

master
Akihiko Odaki pirms 6 gadiem
committed by Eugen Rochko
vecāks
revīzija
0de82dd316
2 mainītis faili ar 17 papildinājumiem un 1 dzēšanām
  1. +1
    -1
      app/models/status.rb
  2. +16
    -0
      spec/models/status_spec.rb

+ 1
- 1
app/models/status.rb Parādīt failu

@@ -146,7 +146,7 @@ class Status < ApplicationRecord

class << self
def not_in_filtered_languages(account)
where.not(language: account.filtered_languages)
where(language: nil).or where.not(language: account.filtered_languages)
end

def as_home_timeline(account)


+ 16
- 0
spec/models/status_spec.rb Parādīt failu

@@ -173,6 +173,22 @@ RSpec.describe Status, type: :model do
end
end

describe '.not_in_filtered_languages' do
context 'for accounts with language filters' do
let(:user) { Fabricate(:user, filtered_languages: ['en']) }

it 'does not include statuses in filtered languages' do
status = Fabricate(:status, language: 'en')
expect(Status.not_in_filtered_languages(user.account)).not_to include status
end

it 'includes status with unknown language' do
status = Fabricate(:status, language: nil)
expect(Status.not_in_filtered_languages(user.account)).to include status
end
end
end

describe '.as_home_timeline' do
let(:account) { Fabricate(:account) }
let(:followed) { Fabricate(:account) }


Notiek ielāde…
Atcelt
Saglabāt