Sha256: 60dccfcc532090972409038f4d9d49a07e35eec795134dc103c3a3b6d07eb714

Contents?: true

Size: 1.21 KB

Versions: 2

Compression:

Stored size: 1.21 KB

Contents

$KCODE = 'U'

require File.join(File.dirname(__FILE__), '../generators/i18n_models/lib/translator')
include I18nModelsGeneratorModule

describe Translator do
  before(:each) do
    @translator = Translator.new 'ja'
  end

  describe 'when successfully translated' do
    before do
      res_200 = mock('res_200')
      res_200.stub!(:read).and_return('{"responseData": {"translatedText":"こんにちは"}, "responseDetails": null, "responseStatus": 200}')
    end

    it 'returns translated text' do
      @translator.translate('hello').should == 'こんにちは'
    end
  end

  describe 'when translation failed with error code' do
    before do
      res_500 = mock('res_500')
      res_500.stub!(:read).and_return('{"responseData": {"translatedText":"こんにちは?"}, "responseDetails": null, "responseStatus": 500}')
      OpenURI.stub!(:open_uri).and_return(res_500)
    end

    it 'returns the original text' do
      @translator.translate('hello').should == 'hello'
    end
  end

  describe 'when translation raised an error' do
    before do
      OpenURI.stub!(:open_uri).and_raise('ERROR!')
    end

    it 'returns the original text' do
      @translator.translate('hello').should == 'hello'
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
amatsuda-i18n_generators-0.1.0 spec/translator_spec.rb
amatsuda-i18n_generators-0.2.0 spec/translator_spec.rb