- LOCAL_DOMAIN=cb6e6126.ngrok.io
- LOCAL_HTTPS=true
- RAILS_ENV=test
- - CXX=g++-4.8
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true
- PARALLEL_TEST_PROCESSORS=2
+ - "PATH=$HOME:$PATH"
addons:
postgresql: 9.4
- ubuntu-toolchain-r-test
- trusty-media
packages:
- - g++-4.8
- ffmpeg
+ - g++-6
+ - libprotobuf-dev
+ - protobuf-compiler
rvm:
- 2.3.4
before_script:
- bundle exec rake parallel:create parallel:load_schema parallel:prepare
- bundle exec rails assets:precompile
+ - ln -s /usr/bin/x86_64-linux-gnu-g++-6 "$HOME/g++"
script:
- bundle exec parallel_test spec/ --group-by filesize --type rspec
libxml2-dev \
libxslt-dev \
python \
- build-base" \
+ build-base \
+ protobuf-dev" \
&& apk -U upgrade && apk add \
$BUILD_DEPS \
nodejs@edge \
file \
imagemagick@edge \
ca-certificates \
+ protobuf \
&& npm install -g npm@3 && npm install -g yarn \
&& update-ca-certificates \
&& rm -rf /tmp/* /var/cache/apk/*
gem 'paperclip-av-transcoder'
gem 'addressable'
-gem 'cld2', require: 'cld'
+gem 'cld3', '~> 3.1.0'
gem 'devise'
gem 'devise-two-factor'
gem 'doorkeeper'
rack-test (>= 0.5.4)
xpath (~> 2.0)
chunky_png (1.3.8)
- cld2 (1.0.3)
- ffi (~> 1.9.3)
+ cld3 (3.1.0)
+ ffi (>= 1.1.0, < 1.10.0)
climate_control (0.1.0)
cocaine (0.5.8)
climate_control (>= 0.0.3, < 1.0)
capistrano-rbenv
capistrano-yarn
capybara
- cld2
+ cld3 (~> 3.1.0)
devise
devise-two-factor
doorkeeper
redis-tools \
postgresql \
postgresql-contrib \
+ protobuf-compiler \
yarn \
+ libprotobuf-dev \
libreadline-dev \
-y
def initialize(text, account = nil)
@text = text
@account = account
+ @identifier = CLD3::NNetLanguageIdentifier.new(1, 2048)
end
def to_iso_s
private
def detected_language_code
- detected_language[:code].to_sym if detected_language_reliable?
+ result.language.to_sym if detected_language_reliable?
end
- def detected_language
- @_detected_language ||= CLD.detect_language(text_without_urls)
+ def result
+ @result ||= @identifier.find_language(text_without_urls)
end
def detected_language_reliable?
- detected_language[:reliable]
+ result.reliable?
end
def text_without_urls
end
describe 'when language can\'t be detected' do
- it 'confirm language engine cant detect' do
- result = CLD.detect_language('')
- expect(result[:reliable]).to be false
+ it 'uses default locale when sent an empty document' do
+ result = described_class.new('').to_iso_s
+ expect(result).to eq :en
end
describe 'because of a URL' do
it 'uses default locale when sent just a URL' do
string = 'http://example.com/media/2kFTgOJLXhQf0g2nKB4'
- cld_result = CLD.detect_language(string)[:code]
+ cld_result = CLD3::NNetLanguageIdentifier.new(0, 2048).find_language(string)
expect(cld_result).not_to eq :en
result = described_class.new(string).to_iso_s