termit 2.13.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,11 @@
1
+ {
2
+ "from": "pl",
3
+ "to": "en",
4
+ "items": [
5
+ {
6
+ "id": "81493155",
7
+ "text": "Ass",
8
+ "wordAlignment": "0:4-0:2"
9
+ }
10
+ ]
11
+ }
data/spec/spec_helper.rb CHANGED
@@ -22,6 +22,7 @@ RSpec.configure do |config|
22
22
  config.before(:suite) do
23
23
  $stderr = File.new(File.join(File.dirname(__FILE__), 'output.txt'), 'w')
24
24
  $stdout = File.new(File.join(File.dirname(__FILE__), 'output.txt'), 'w')
25
+
25
26
  end
26
27
 
27
28
  config.after(:suite) do
@@ -32,8 +33,11 @@ RSpec.configure do |config|
32
33
  File.delete(File.join(File.dirname(__FILE__), 'output.txt'))
33
34
  end
34
35
 
35
- #for nyan cat formatter
36
+
36
37
  config.before(:each) do
38
+ stub_request(:get, "https://www.bing.com/translator").with(:headers => {'Accept'=>'*/*; q=0.5, application/xml', 'Accept-Encoding'=>'gzip, deflate', 'User-Agent'=>'Ruby'}).to_return(:status => 200, :body => "", :headers => {})
39
+
40
+ #for nyan cat formatter
37
41
  sleep(0.10)
38
42
  end
39
43
  end
@@ -41,5 +45,5 @@ end
41
45
  VCR.configure do |c|
42
46
  c.cassette_library_dir = 'spec/fixtures/'
43
47
  c.hook_into :webmock
44
- c.allow_http_connections_when_no_cassette = true
48
+ c.allow_http_connections_when_no_cassette = false
45
49
  end
@@ -7,8 +7,8 @@ describe Termit::SoundResponseHandler do
7
7
  let(:location) { "#{File.expand_path('~')}/.termit" }
8
8
 
9
9
  it "saves and plays the sound file the sound file" do
10
- File.should_receive(:open).with("#{location}/sound_response.mpeg", "wb")
11
- Object.any_instance.should_receive(:system).with("mpg123 -q #{location}/sound_response.mpeg")
10
+ File.should_receive(:open).with("#{location}/sound_response.mp3", "wb")
11
+ Object.any_instance.should_receive(:system).with("mpg123 -q #{location}/sound_response.mp3")
12
12
  subject.call
13
13
  end
14
14
  end
@@ -7,7 +7,7 @@ describe Termit::SpeechSynthesizer do
7
7
  response = double 'fake_response', body: :binary_sound_file
8
8
  fetcher = double 'fake_fetcher', data: response
9
9
  handler = double 'fake_sound_handler', call: :nothing
10
- Termit::DataFetcher.stub(:new) { fetcher }
10
+ Termit::SoundFetcher.stub(:new) { fetcher }
11
11
  Termit::SoundResponseHandler.stub(:new) { handler }
12
12
  end
13
13
 
@@ -15,7 +15,7 @@ describe Termit::SpeechSynthesizer do
15
15
  it "executes correct service objects" do
16
16
  Termit::SpeechSynthesizer.any_instance.stub(:check_sound_player) { nil }
17
17
  Termit::SoundResponseHandler.should_receive(:new).with(:binary_sound_file)
18
- Termit::SpeechSynthesizer.new(target_lang: :en, text: 'your mother', voice: true).call
18
+ Termit::SpeechSynthesizer.new(target_lang: :en, source_lang: :pl, text: 'your mother', voice: true).call
19
19
  end
20
20
  end
21
21
 
@@ -25,7 +25,7 @@ describe Termit::SpeechSynthesizer do
25
25
  end
26
26
  it "executes correct service objects" do
27
27
  Termit::OutputManager.any_instance.should_receive(:display_player_error_and_quit)
28
- Termit::SpeechSynthesizer.new(target_lang: :en, text: 'your mother', voice: true).call
28
+ Termit::SpeechSynthesizer.new(target_lang: :en, source_lang: :pl, text: 'your mother', voice: true).call
29
29
  end
30
30
  end
31
31
  end
@@ -3,42 +3,14 @@ require 'spec_helper'
3
3
 
4
4
  describe Termit::TextResponseHandler do
5
5
  describe "call method" do
6
- context "no synonyms wanted" do
7
- let(:handler) do
8
- response_body = File.open('spec/fixtures/text_response_with_synonyms').read
9
- Termit::TextResponseHandler.new(response_body, false)
10
- end
11
-
12
- it "extracts data from HTTP response body" do
13
- expect($stdout).to receive(:puts).with("tyłek")
14
- handler.call
15
- end
6
+ let(:handler) do
7
+ response_body = File.open('spec/fixtures/text_response').read
8
+ Termit::TextResponseHandler.new(response_body)
16
9
  end
17
10
 
18
- context "synonyms wanted and available" do
19
- let(:handler) do
20
- response_body = File.open('spec/fixtures/text_response_with_synonyms').read
21
- Termit::TextResponseHandler.new(response_body, true)
22
- end
23
-
24
- it "extracts data from HTTP response body" do
25
- expect($stdout).to receive(:puts).with("tyłek")
26
- expect($stdout).to receive(:puts).with("osioł, tyłek, dupa, zadek")
27
- handler.call
28
- end
29
- end
30
-
31
- context "synonyms wanted and unavailable" do
32
- let(:handler) do
33
- response_body = File.open('spec/fixtures/text_response_without_synonyms').read
34
- Termit::TextResponseHandler.new(response_body, true)
35
- end
36
-
37
- it "extracts data from HTTP response body" do
38
- expect($stdout).to receive(:puts).with("będzie tam iść")
39
- expect($stdout).to receive(:puts).with(" ---")
40
- handler.call
41
- end
11
+ it "extracts data from HTTP response body" do
12
+ expect($stdout).to receive(:puts).with("Ass")
13
+ handler.call
42
14
  end
43
15
  end
44
16
  end
@@ -4,20 +4,20 @@ require 'spec_helper'
4
4
  describe Termit::TextTranslator do
5
5
  describe "translated_text" do
6
6
  it "translates text correctly" do
7
- VCR.use_cassette('google_1') do
7
+ VCR.use_cassette('bing_1') do
8
8
  translator = Termit::TextTranslator.new source_lang: :en, target_lang: :pl, text: 'hey cowboy where is your horse'
9
9
  translator.call
10
- expect(translator.text).to eq 'hej kowbojem , gdzie jest twój koń'
10
+ expect(translator.text).to eq 'Hej cowboy gdzie jest Twój koń'
11
11
  end
12
12
  end
13
13
  end
14
14
 
15
15
  describe "translated_text" do
16
16
  it "translates text correctly" do
17
- VCR.use_cassette('google_2') do
18
- translator = Termit::TextTranslator.new source_lang: :en, target_lang: :pl, text: 'ass', synonyms: true
17
+ VCR.use_cassette('bing_2') do
18
+ translator = Termit::TextTranslator.new source_lang: :en, target_lang: :pl, text: 'ass'
19
19
  translator.call
20
- expect(translator.text).to eq 'tyłek'
20
+ expect(translator.text).to eq 'Tyłek'
21
21
  end
22
22
  end
23
23
  end
@@ -6,7 +6,7 @@ describe Termit::UrlConstructor do
6
6
  context "when talk flag is set to false" do
7
7
  it "returns correctly formatted url" do
8
8
  url_formatter = Termit::UrlConstructor.new source_lang: :en, target_lang: :fr, text: 'your mother', talk: false
9
- url = "https://translate.google.com/translate_a/single?client=t&sl=en&tl=fr&hl=pl&dt=bd&dt=ex&dt=ld&dt=md&dt=qca&dt=rw&dt=rm&dt=ss&dt=t&dt=at&ie=UTF-8&oe=UTF-8&otf=2&srcrom=1&ssel=3&tsel=6&kc=2&tk=522578"
9
+ url = "https://www.bing.com/translator/api/Translate/TranslateArray?from=en&to=fr"
10
10
 
11
11
  expect(url_formatter.url).to eq(url)
12
12
  end
@@ -15,7 +15,7 @@ describe Termit::UrlConstructor do
15
15
  context "when talk flag is set to true" do
16
16
  it "returns correctly formatted url" do
17
17
  url_formatter = Termit::UrlConstructor.new target_lang: :fr, text: 'your mother', talk: true
18
- url = "https://translate.google.com/translate_tts?ie=UTF-8&tl=fr&total=1&idx=0&textlen=5&tk=735012&client=t"
18
+ url = "https://www.bing.com/translator/api/language/Speak?locale=fr-FR&gender=male&media=audio/mp3&text=your%20mother"
19
19
  expect(url_formatter.url).to eq(url)
20
20
  end
21
21
  end
@@ -12,7 +12,7 @@ describe Termit::UserInputParser do
12
12
  context "when user has specified the options" do
13
13
  it "without the -v flag" do
14
14
  parser = Termit::UserInputParser.new ['en', 'fr', 'your mother']
15
- expect(parser.options).to eq({ source_lang: :en, target_lang: :fr, text: 'your mother', talk: false, synonyms: false })
15
+ expect(parser.options).to eq({ source_lang: :en, target_lang: :fr, text: 'your mother', talk: false })
16
16
  end
17
17
 
18
18
  it "with the -v (version) flag it exit the program and displays version number" do
@@ -24,19 +24,14 @@ describe Termit::UserInputParser do
24
24
  end
25
25
 
26
26
 
27
- it "with -s (synonims) flag" do
28
- parser = Termit::UserInputParser.new ['en', 'fr', 'hey cowboy!', '-s']
29
- expect(parser.options).to eq({ source_lang: :en, target_lang: :fr, text: 'hey cowboy!', talk: false, synonyms: true })
30
- end
31
-
32
27
  it "with -t (talk) flag" do
33
28
  parser = Termit::UserInputParser.new ['en', 'fr', 'hey cowboy!', '-t']
34
- expect(parser.options).to eq({ source_lang: :en, target_lang: :fr, text: 'hey cowboy!', talk: true, synonyms: false })
29
+ expect(parser.options).to eq({ source_lang: :en, target_lang: :fr, text: 'hey cowboy!', talk: true })
35
30
  end
36
31
 
37
32
  it "with text as seperate ARGV array elements" do
38
33
  parser = Termit::UserInputParser.new ['en', 'fr', 'is', 'cowboy', 'here ?', '-t']
39
- expect(parser.options).to eq({ source_lang: :en, target_lang: :fr, text: 'is cowboy here ?', talk: true, synonyms: false })
34
+ expect(parser.options).to eq({ source_lang: :en, target_lang: :fr, text: 'is cowboy here ?', talk: true })
40
35
  end
41
36
 
42
37
  it "with incorrect language options format raiser error" do
data/termit.gemspec CHANGED
@@ -17,6 +17,7 @@ Gem::Specification.new do |gem|
17
17
  gem.require_paths = ["lib"]
18
18
  gem.license = "MIT"
19
19
  gem.add_dependency "delegate_it"
20
+ gem.add_dependency "rest-client"
20
21
  gem.add_development_dependency "rspec"
21
22
  gem.add_development_dependency "vcr"
22
23
  gem.add_development_dependency "webmock"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: termit
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.13.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - pawurb
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-13 00:00:00.000000000 Z
11
+ date: 2016-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: delegate_it
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rest-client
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rspec
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -127,20 +141,21 @@ files:
127
141
  - bin/termit
128
142
  - lib/termit.rb
129
143
  - lib/termit/can_output.rb
130
- - lib/termit/data_fetcher.rb
144
+ - lib/termit/data_fetcher_base.rb
131
145
  - lib/termit/main.rb
132
146
  - lib/termit/output_manager.rb
147
+ - lib/termit/sound_fetcher.rb
133
148
  - lib/termit/sound_response_handler.rb
134
149
  - lib/termit/speech_synthesizer.rb
150
+ - lib/termit/text_fetcher.rb
135
151
  - lib/termit/text_response_handler.rb
136
152
  - lib/termit/text_translator.rb
137
153
  - lib/termit/url_constructor.rb
138
154
  - lib/termit/user_input_parser.rb
139
155
  - lib/termit/version.rb
140
- - spec/fixtures/google_1.yml
141
- - spec/fixtures/google_2.yml
142
- - spec/fixtures/text_response_with_synonyms
143
- - spec/fixtures/text_response_without_synonyms
156
+ - spec/fixtures/bing_1.yml
157
+ - spec/fixtures/bing_2.yml
158
+ - spec/fixtures/text_response
144
159
  - spec/spec_helper.rb
145
160
  - spec/termit/main_spec.rb
146
161
  - spec/termit/output_manager_spec.rb
@@ -171,15 +186,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
186
  version: '0'
172
187
  requirements: []
173
188
  rubyforge_project:
174
- rubygems_version: 2.4.6
189
+ rubygems_version: 2.5.1
175
190
  signing_key:
176
191
  specification_version: 4
177
192
  summary: Google Translate in your terminal
178
193
  test_files:
179
- - spec/fixtures/google_1.yml
180
- - spec/fixtures/google_2.yml
181
- - spec/fixtures/text_response_with_synonyms
182
- - spec/fixtures/text_response_without_synonyms
194
+ - spec/fixtures/bing_1.yml
195
+ - spec/fixtures/bing_2.yml
196
+ - spec/fixtures/text_response
183
197
  - spec/spec_helper.rb
184
198
  - spec/termit/main_spec.rb
185
199
  - spec/termit/output_manager_spec.rb
@@ -1,35 +0,0 @@
1
- #encoding: UTF-8
2
- require 'net/http'
3
- require 'uri'
4
- require 'openssl'
5
-
6
- module Termit
7
- class DataFetcher
8
- include CanOutput
9
- delegate :display_no_internet_msg, to: :output_manager
10
-
11
- def initialize url, text
12
- @url = url
13
- @text = text
14
- end
15
-
16
- def data
17
- send_request
18
- end
19
-
20
- private
21
-
22
- def send_request
23
- uri = URI.parse @url
24
- http = Net::HTTP.new(uri.host, uri.port)
25
- query = "q=#{URI::encode(@text)}"
26
- url = "#{uri.request_uri}&#{query}"
27
- request = Net::HTTP::Get.new(url)
28
- http.use_ssl = true
29
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
30
- http.request(request)
31
- rescue SocketError
32
- display_no_internet_msg
33
- end
34
- end
35
- end
@@ -1,66 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://translate.google.com/translate_a/single?client=t&dt=at&hl=pl&ie=UTF-8&kc=2&oe=UTF-8&otf=2&q=hey%20cowboy%20where%20is%20your%20horse&sl=en&srcrom=1&ssel=3&tk=522578&tl=pl&tsel=6
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
18
- code: 200
19
- message: OK
20
- headers:
21
- X-Frame-Options:
22
- - SAMEORIGIN
23
- Date:
24
- - Tue, 25 Aug 2015 19:15:47 GMT
25
- Pragma:
26
- - no-cache
27
- Expires:
28
- - Fri, 01 Jan 1990 00:00:00 GMT
29
- Cache-Control:
30
- - no-cache, no-store, must-revalidate
31
- Content-Type:
32
- - application/json; charset=UTF-8
33
- X-Content-Type-Options:
34
- - nosniff
35
- Content-Disposition:
36
- - attachment; filename="f.txt"
37
- Server:
38
- - HTTP server (unknown)
39
- X-Xss-Protection:
40
- - 1; mode=block
41
- Transfer-Encoding:
42
- - chunked
43
- body:
44
- encoding: ASCII-8BIT
45
- string: !binary |-
46
- W1tbImhlaiBrb3dib2plbSAsIGdkemllIGplc3QgdHfDs2oga2/FhCIsImhl
47
- eSBjb3dib3kgd2hlcmUgaXMgeW91ciBob3JzZSIsLCwwXV0sLCJlbiIsLCxb
48
- WyJoZXkiLDEsW1siaGVqIiw5OTksdHJ1ZSxmYWxzZV0sWyJoZXkiLDAsdHJ1
49
- ZSxmYWxzZV0sWyJDemXFm8SHIiwwLHRydWUsZmFsc2VdXSxbWzAsM11dLCJo
50
- ZXkgY293Ym95IHdoZXJlIGlzIHlvdXIgaG9yc2UiLDAsMV0sWyJjb3dib3ki
51
- LDIsW1sia293Ym9qZW0iLDk1Myx0cnVlLGZhbHNlXSxbImtvd2JvaiIsMjcs
52
- dHJ1ZSxmYWxzZV0sWyJrb3dib2pza2llIiwxNyx0cnVlLGZhbHNlXSxbImtv
53
- d2JvanNraSIsMSx0cnVlLGZhbHNlXSxbIkNvd2JveSIsMCx0cnVlLGZhbHNl
54
- XV0sW1s0LDEwXV0sLDEsMl0sWyJ3aGVyZSIsMyxbWyIsIGdkemllIiw5NTMs
55
- ZmFsc2UsZmFsc2VdLFsiZ2R6aWUiLDEsZmFsc2UsZmFsc2VdXSxbWzExLDE2
56
- XV0sLDIsNF0sWyJpcyIsNCxbWyJqZXN0Iiw5NTIsdHJ1ZSxmYWxzZV0sWyJt
57
- YSIsMCx0cnVlLGZhbHNlXSxbInPEhSIsMCx0cnVlLGZhbHNlXSxbInRvIiww
58
- LHRydWUsZmFsc2VdLFsic2nEmSIsMCx0cnVlLGZhbHNlXV0sW1sxNywxOV1d
59
- LCw0LDVdLFsieW91ciBob3JzZSIsNSxbWyJ0d8OzaiBrb8WEIiw5OTQsdHJ1
60
- ZSxmYWxzZV0sWyJrb8WEIiwyLHRydWUsZmFsc2VdLFsic3dvamVnbyBrb25p
61
- YSIsMCx0cnVlLGZhbHNlXSxbImtvbmlhIiwwLHRydWUsZmFsc2VdLFsia29u
62
- aW93aSIsMCx0cnVlLGZhbHNlXV0sW1syMCwzMF1dLCw1LDddXSwwLjE3NTQ0
63
- NDU3LCxbWyJlbiJdLCxbMC4xNzU0NDQ1N11dXQ==
64
- http_version:
65
- recorded_at: Tue, 25 Aug 2015 19:15:47 GMT
66
- recorded_with: VCR 2.9.3
@@ -1,190 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://translate.google.com/translate_a/single?client=t&dt=at&hl=pl&ie=UTF-8&kc=2&oe=UTF-8&otf=2&q=ass&sl=en&srcrom=1&ssel=3&tk=522578&tl=pl&tsel=6
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
18
- code: 200
19
- message: OK
20
- headers:
21
- X-Frame-Options:
22
- - SAMEORIGIN
23
- Date:
24
- - Tue, 25 Aug 2015 19:15:48 GMT
25
- Pragma:
26
- - no-cache
27
- Expires:
28
- - Fri, 01 Jan 1990 00:00:00 GMT
29
- Cache-Control:
30
- - no-cache, no-store, must-revalidate
31
- Content-Type:
32
- - application/json; charset=UTF-8
33
- X-Content-Type-Options:
34
- - nosniff
35
- Content-Disposition:
36
- - attachment; filename="f.txt"
37
- Server:
38
- - HTTP server (unknown)
39
- X-Xss-Protection:
40
- - 1; mode=block
41
- Transfer-Encoding:
42
- - chunked
43
- body:
44
- encoding: ASCII-8BIT
45
- string: !binary |-
46
- W1tbInR5xYJlayIsImFzcyIsLCwwXSxbLCwsImFzIl1dLFtbInJ6ZWN6b3du
47
- aWsiLFsidHnFgmVrIiwiZHVwYSIsIm9zaW/FgiIsInphZGVrIl0sW1sidHnF
48
- gmVrIixbImJhY2tzaWRlIiwiYnVtIiwiYXJzZSIsImJvdHRvbSIsImJ1dHRv
49
- Y2tzIiwiYmVoaW5kIl0sLDAuMTkzODU4ODVdLFsiZHVwYSIsWyJhc3MiLCJm
50
- YW5ueSIsImFyc2UiXSwsMC4wNDAwMDUwMzJdLFsib3Npb8WCIixbImRvbmtl
51
- eSIsImFzcyIsImphY2thc3MiLCJidXJybyIsIm1va2UiLCJzdHVwaWQiXSws
52
- MC4wMzY5OTg2MDddLFsiemFkZWsiLFsiYnVtIiwiYXNzIiwiYmFja3NpZGUi
53
- LCJwb3N0ZXJpb3IiLCJidXR0b2NrIiwiYnV0dG9ja3MiXV1dLCJhc3MiLDFd
54
- XSwiZW4iLCwsW1siYXNzIiwxLFtbInR5xYJlayIsOTMwLHRydWUsZmFsc2Vd
55
- LFsiZHVwYSIsNjgsdHJ1ZSxmYWxzZV0sWyJvc2lvxYIiLDAsdHJ1ZSxmYWxz
56
- ZV0sWyJhcnNlIiwwLHRydWUsZmFsc2VdLFsiYXNzIiwwLHRydWUsZmFsc2Vd
57
- XSxbWzAsM11dLCJhc3MiLDAsMV1dLDAuOTY0Mjg1NzMsLFtbImVuIl0sLFsw
58
- Ljk2NDI4NTczXV0sLCxbWyJyemVjem93bmlrIixbW1siZG9ua2V5IiwiamFj
59
- a2FzcyIsImplbm55IiwiYnVycm8iXSwibV9lbl91czEyMjMzMjUuMDAxIl0s
60
- W1siZm9vbCIsImlkaW90IiwiZG9sdCIsInNpbXBsZXRvbiIsImltYmVjaWxl
61
- IiwiZGltd2l0IiwiaGFsZndpdCIsImR1bW15IiwiZHVtLWR1bSIsImxvb24i
62
- LCJqYWNrYXNzIiwiY3JldGluIiwiamVyayIsImZhdGhlYWQiLCJibG9ja2hl
63
- YWQiLCJqdWdoZWFkIiwiYm9vYiIsImJvem8iLCJidWZmb29uIiwibnVtYnNr
64
- dWxsIiwibnVtYm51dHMiLCJsdW1tb3giLCJrbnVja2xlLWRyYWdnZXIiLCJk
65
- dW5jZSIsIm1vcm9uIiwibWVhdGJhbGwiLCJkb29mdXMiLCJuaW5ueSIsIm5p
66
- bmNvbXBvb3AiLCJkaXBzdGljayIsImxhbWVicmFpbiIsImNodW1wIiwicGVh
67
- YnJhaW4iLCJtb3V0aC1icmVhdGhlciIsImhvc2VyIiwidGhpY2toZWFkIiwi
68
- ZHVtYi1hc3MiLCJ3b29kZW4taGVhZCIsInBpbmhlYWQiLCJhaXJoZWFkIiwi
69
- YnV0dGhlYWQiLCJiaXJkYnJhaW4iLCJzY2lzc29yYmlsbCIsIm5pdHdpdCIs
70
- InR3aXQiLCJ0dXJrZXkiLCJnb29mYmFsbCIsInB1dHoiLCJhc3NoYXQiLCJ0
71
- b21mb29sIiwibXV0dG9uaGVhZCJdLCJtX2VuX3VzMTIyMzMyNS4wMDMiXSxb
72
- WyJzdGVybiIsImJvdHRvbSIsIm5hdGVzIiwiZnVuZGFtZW50IiwicG9zdGVy
73
- aW9yIiwicHJhdCIsImJ1bSIsInRhaWwgZW5kIiwiY2FuIiwiYnVucyIsImZh
74
- bm55IiwicmVhciBlbmQiLCJidXR0b2NrcyIsInRhaWwiLCJiYWNrc2lkZSIs
75
- InJ1bXAiLCJoaW5kcXVhcnRlcnMiLCJiZWhpbmQiLCJidXR0IiwidHVzaCIs
76
- InNlYXQiLCJyZWFyIiwiZGVycmllcmUiLCJrZWlzdGVyIl0sIiJdLFtbInNj
77
- cmV3aW5nIiwicGllY2Ugb2YgYXNzIiwibm9va2llIiwic2h0dXAiLCJub29r
78
- eSIsInNoYWciLCJzY3JldyIsImZ1Y2tpbmciLCJwaWVjZSBvZiB0YWlsIiwi
79
- ZnVjayJdLCIiXV0sImFzcyJdXSxbWyJyemVjem93bmlrIixbWyJhIGhvb2Zl
80
- ZCBtYW1tYWwgb2YgdGhlIGhvcnNlIGZhbWlseSB3aXRoIGEgYnJheWluZyBj
81
- YWxsLCB0eXBpY2FsbHkgc21hbGxlciB0aGFuIGEgaG9yc2UgYW5kIHdpdGgg
82
- bG9uZ2VyIGVhcnMuIiwibV9lbl91czEyMjMzMjUuMDAxIiwiVGhpcyBmYW1p
83
- bHksIG1hZGUgdXAgb2YgdGhlIGhvcnNlcywgYXNzZXMgYW5kIHplYnJhcywg
84
- Y29udGFpbnMgb25lIGdlbnVzIHdpdGggbmluZSBzcGVjaWVzLiJdLFsiYSBm
85
- b29saXNoIG9yIHN0dXBpZCBwZXJzb24uIiwibV9lbl91czEyMjMzMjUuMDAz
86
- IiwidGhhdCBhc3Mgb2YgYSB5b3VuZyBtYW4iXSxbImEgcGVyc29uJ3MgYnV0
87
- dG9ja3Mgb3IgYW51cy4iLCJtX2VuX3VzMTIyMzMyNi4wMDEiXV0sImFzcyJd
88
- XSxbW1siVGhlIHNjaWVudGlzdHMgaGF2ZSBkZWR1Y2VkIHRoYXQgdGhlIFx1
89
- MDAzY2JcdTAwM2Vhc3NcdTAwM2MvYlx1MDAzZSBpcyB0aGUgb25seSBob29m
90
- ZWQgbGl2ZXN0b2NrIHNwZWNpZXMgZG9tZXN0aWNhdGVkIGV4Y2x1c2l2ZWx5
91
- IGluIEFmcmljYS4iLCwsLDMsIm1fZW5fdXMxMjIzMzI1LjAwMSJdLFsiV2Vs
92
- bCBpdCBsb29rZWQgbGlrZSBpdCB3YXMgZ29pbmcgdG8gYmUgYSB0aHJlZS1o
93
- b3JzZSByYWNlLCBidXQgaW4gdGhlIGVuZCBpdCB3YXMgYSBjb250ZXN0IGJl
94
- dHdlZW4gYSBob3JzZSwgYSBtdWxlIGFuZCBhbiBcdTAwM2NiXHUwMDNlYXNz
95
- XHUwMDNjL2JcdTAwM2UgLiIsLCwsMywibV9lbl91czEyMjMzMjUuMDAyIl0s
96
- WyJPZiBjb3Vyc2UsIGJhY2sgdGhlbiwgdHJhdmVsIHdhcyBkb25lIG9uIGZv
97
- b3QsIG9yIHdpdGggYW4gXHUwMDNjYlx1MDAzZWFzc1x1MDAzYy9iXHUwMDNl
98
- IG9yIGEgaG9yc2UuIiwsLCwzLCJtX2VuX3VzMTIyMzMyNS4wMDIiXSxbIlRo
99
- ZSBtaWxrIG9mIGFuIFx1MDAzY2JcdTAwM2Vhc3NcdTAwM2MvYlx1MDAzZSAs
100
- IGEgbWFyZSwgb3IgYSBnb2F0IHdhcyBwdXQgaW50byBhIGxlYXRoZXIgYmFn
101
- IG9yIHNraW4gYW5kLCB0aWdodGx5IGNsb3NlZCwgdGhpcyB3YXMgdGhlbiBz
102
- dXNwZW5kZWQgYmVuZWF0aCB0aGUgYmVsbHkgb2YgYSBob3JzZS4iLCwsLDMs
103
- Im1fZW5fdXMxMjIzMzI1LjAwMiJdLFsidGhhdCBcdTAwM2NiXHUwMDNlYXNz
104
- XHUwMDNjL2JcdTAwM2Ugb2YgYSB5b3VuZyBtYW4iLCwsLDMsIm1fZW5fZ2Iw
105
- MDQ0MjEwLjAwMyJdLFsiTmVlZCBJIHJlbWluZCB5b3UgZ2VudGxlbWVuLCB0
106
- aGF0IGFuIFx1MDAzY2JcdTAwM2Vhc3NcdTAwM2MvYlx1MDAzZSBpcyBhIGRv
107
- bmtleS4iLCwsLDMsIm1fZW5fdXMxMjIzMzI1LjAwMiJdLFsiVGhlIHNpbGx5
108
- IFx1MDAzY2JcdTAwM2Vhc3NcdTAwM2MvYlx1MDAzZSBhc2tlZCB0aGUgZWxl
109
- Y3RvcnM6IOKAmFdobyBnb3Zlcm5zIEJyaXRhaW4/4oCZIiwsLCwzLCJtX2Vu
110
- X3VzMTIyMzMyNS4wMDMiXSxbIlRoZSBwcm9zcGVjdGl2ZSBicmlkZWdyb29t
111
- IGlzIGEgc2lsbHkgXHUwMDNjYlx1MDAzZWFzc1x1MDAzYy9iXHUwMDNlICwg
112
- dGhlIGJlc3QgbWFuIGlzIGEgY2FkIGFuZCB0aGUgZXNjb3J0IGlzIGEgYm9y
113
- ZSAtIHNvIG11Y2ggZm9yIHRoZSBtZW4uIiwsLCwzLCJtX2VuX3VzMTIyMzMy
114
- NS4wMDMiXSxbIkhlcmUgaXMgYSByZWZlcmVuY2UgYm9vayBmb3IgdGhvc2Ug
115
- d2hvIGNhbid0IHRlbGwgYW4gXHUwMDNjYlx1MDAzZWFzc1x1MDAzYy9iXHUw
116
- MDNlIGZyb20gYSBidXJyby4iLCwsLDMsIm1fZW5fdXMxMjIzMzI1LjAwMSJd
117
- LFsiSSBjYW4ndCBnZXQgYW4gaW50ZWxsaWdlbnQgd29yZCBvdXQgb2YgdGhl
118
- IHNpbGx5IFx1MDAzY2JcdTAwM2Vhc3NcdTAwM2MvYlx1MDAzZSBhbmQgaGUn
119
- cyBnb2luZyBiZXJzZXJrLiIsLCwsMywibV9lbl91czEyMjMzMjUuMDAzIl0s
120
- WyJnZXQgeW91ciBcdTAwM2NiXHUwMDNlYXNzXHUwMDNjL2JcdTAwM2UgaW4g
121
- aGVyZSBmYXN0IiwsLCwzLCJtX2VuX3VzMTIyMzMyNi4wMDQiXSxbIlRoZXJl
122
- Zm9yZSwgaXQgd2FzIG5lY2Vzc2FyeSBmb3IgR29kIHRvIHNob3cgaGltc2Vs
123
- ZiB0byB0aGVtIGFuZCBnYXRoZXIgdGhlbSB0byBoaW1zZWxmLCBhcyBoZSBk
124
- aWQgd2hlbiBoZSBjb21tYW5kZWQgdGhlIFx1MDAzY2JcdTAwM2Vhc3NcdTAw
125
- M2MvYlx1MDAzZSBhbmQgaXRzIGNvbHQgdG8gYmUgdW50aWVkIGFuZCBicm91
126
- Z2h0IHRvIGhpbSBhbmQgdG9vayBoaXMgc2VhdCBvbiB0aGVtIGFjY29yZGlu
127
- ZyB0byB0aGUgbGF3IG9mIHRydXRoLiIsLCwsMywibV9lbl91czEyMjMzMjUu
128
- MDAyIl0sWyJ0aGF0IFx1MDAzY2JcdTAwM2Vhc3NcdTAwM2MvYlx1MDAzZSBv
129
- ZiBhIHlvdW5nIG1hbiIsLCwsMywibV9lbl91czEyMjMzMjUuMDAzIl0sWyJ0
130
- aGUgYnVyZWF1Y3JhdCB3aG8gd2FudHMgZXZlcnl0aGluZyBpbiB3cml0aW5n
131
- IHNvIGFzIHRvIGNvdmVyIGhpcyBcdTAwM2NiXHUwMDNlYXNzXHUwMDNjL2Jc
132
- dTAwM2UiLCwsLDMsIm1fZW5fdXMxMjIzMzI2LjAwNCJdLFsiV2Ugc3RlcHBl
133
- ZCBvZmYgdGhlIHRyYWlsIHRvIGxldCBoZXIsIGhlciBob3JzZSBhbmQgdGhl
134
- IHBhY2stbGFkZW4gXHUwMDNjYlx1MDAzZWFzc1x1MDAzYy9iXHUwMDNlIHRo
135
- YXQgd2FzIGJyaW5naW5nIHVwIHRoZSByZWFyIGdvIGJ5LiIsLCwsMywibV9l
136
- bl91czEyMjMzMjUuMDAyIl0sWyJPdGhlciBkZXNlcnQgYW5pbWFscywgaW5j
137
- bHVkaW5nIHdpbGQgc2hlZXAsIFRpYmV0YW4gXHUwMDNjYlx1MDAzZWFzc1x1
138
- MDAzYy9iXHUwMDNlICwgYW5kIGdvaXRlcmVkIGdhemVsbGUsIGFsc28gc3Rh
139
- bmQgdG8gYmVuZWZpdC4iLCwsLDMsIm1fZW5fdXMxMjIzMzI1LjAwMSJdLFsi
140
- VGhlbiBiZSBjYWxsZWQgdGVuIHRpbWVzIGEgZG9ua2V5LCBhbmQgYSBtdWxl
141
- LCBhbmQgYW4gXHUwMDNjYlx1MDAzZWFzc1x1MDAzYy9iXHUwMDNlICwgYW5k
142
- IGJlZ29uZSwgb3IgSSdsbCBjbGVhciB0aGUgd29ybGQgb2YgdGhlZSEiLCws
143
- LDMsIm1fZW5fdXMxMjIzMzI1LjAwMiJdLFsiVGhlIGZhY3QgbWlnaHQgd2Vs
144
- bCBiZSBmb3Jnb3R0ZW4sIGJ1dCB0aGVyZSBhcmUgc3R1cGlkIFx1MDAzY2Jc
145
- dTAwM2Vhc3Nlc1x1MDAzYy9iXHUwMDNlIHdobyB3aWxsIG5vdCBsZXQgdXMg
146
- Zm9yZ2V0IGl0LiIsLCwsMywibV9lbl91czEyMjMzMjUuMDAzIl0sWyJTaW1p
147
- bGFybHksIG9uZSDigJhraW5k4oCZIHdhcyBsaWtlbHkgYW5jZXN0cmFsIHRv
148
- IHRoZSB2YXJpb3VzIHR5cGVzIG9mIGhvcnNlcywgemVicmFzIGFuZCBcdTAw
149
- M2NiXHUwMDNlYXNzZXNcdTAwM2MvYlx1MDAzZSAuIiwsLCwzLCJtX2VuX3Vz
150
- MTIyMzMyNS4wMDEiXSxbImhlIG5lZWRzIGEgZ29vZCBraWNrIHVwIHRoZSBc
151
- dTAwM2NiXHUwMDNlYXJzZVx1MDAzYy9iXHUwMDNlIiwsLCwzLCJuZWlkXzEx
152
- MzQiXSxbInNvbWUgc2lsbHkgXHUwMDNjYlx1MDAzZWFyc2VcdTAwM2MvYlx1
153
- MDAzZSBpbiBhIGplZXAgaGFzIGJsb2NrZWQgbWUgaW4iLCwsLDMsIm5laWRf
154
- MTEzNSJdLFsiV2lsZCBob3JzZXMgYW5kIFx1MDAzY2JcdTAwM2Vhc3Nlc1x1
155
- MDAzYy9iXHUwMDNlIHdlcmUgaHVudGVkIGZvciBmb29kIGFuZCBmb3Igc3Bv
156
- cnQgYmVmb3JlIGJlY29taW5nIGRvbWVzdGljYXRlZC4iLCwsLDMsIm1fZW5f
157
- dXMxMjIzMzI1LjAwMSJdLFsiRG9tZXN0aWNhdGVkIGRvbmtleXMgY2FuIGJl
158
- IGJyZWQgYXQgYW55IHRpbWUgb2YgeWVhciwgd2lsZCBcdTAwM2NiXHUwMDNl
159
- YXNzZXNcdTAwM2MvYlx1MDAzZSBnZW5lcmFsbHkgYnJlZWQgaW4gdGhlIHdl
160
- dCBzZWFzb24uIiwsLCwzLCJtX2VuX3VzMTIyMzMyNS4wMDEiXSxbImhlJ3Mg
161
- YSBwb21wb3VzIFx1MDAzY2JcdTAwM2VhcnNlXHUwMDNjL2JcdTAwM2UiLCws
162
- LDMsIm5laWRfMTEzNSJdLFsiVGhlIFx1MDAzY2JcdTAwM2Vhc3Nlc1x1MDAz
163
- Yy9iXHUwMDNlIGFuZCBtdWxlcywgdGhlaXIgbG9hZHMgY2FzdCBhc2lkZSBm
164
- b3IgdGhlIGRheSwgc3Rvb2QgaWRsZSBldmVyeXdoZXJlIGluIHRoZSBmaWVs
165
- ZHMsIG11bmNoaW5nIGF0IHRoZSBwYXJjaGVkIGdyYXNzIGFuZCBmbGluY2hp
166
- bmcgZnJvbSBmbGllcyBvbiBhIGhvdCBzdW1tZXIgYWZ0ZXJub29uLiIsLCws
167
- MywibV9lbl91czEyMjMzMjUuMDAyIl0sWyJKb2NrZXlzIGhhdmUgYmVlbiBt
168
- YWtpbmcgdGhlIGhlYWRsaW5lcyBmb3IgYWxsIHRoZSB3cm9uZyByZWFzb25z
169
- IC0gdG9vIG1hbnkgc2lsbHkgXHUwMDNjYlx1MDAzZWFzc2VzXHUwMDNjL2Jc
170
- dTAwM2UgaGF2ZSBkcm9wcGVkIHRoZWlyIGhhbmRzLCBhbmQgbG9zdCBwbGFj
171
- aW5ncyBhcyBhIHJlc3VsdC4iLCwsLDMsIm1fZW5fdXMxMjIzMzI1LjAwMyJd
172
- LFsiSW4gY29tcGFyaXNvbiB3aXRoIG90aGVyIEFzaWF0aWMgd2lsZCBcdTAw
173
- M2NiXHUwMDNlYXNzZXNcdTAwM2MvYlx1MDAzZSAsIEUuIG9uYWdlciBpcyBz
174
- bGlnaHRseSBzbWFsbGVyIHdpdGggYSBwYWxlciBjb2F0LiIsLCwsMywibV9l
175
- bl91czEyMjMzMjUuMDAxIl0sWyJXaWxkIFx1MDAzY2JcdTAwM2Vhc3Nlc1x1
176
- MDAzYy9iXHUwMDNlIGF2ZXJhZ2UgMjAwIGNtIGluIGJvZHkgbGVuZ3RoLCA0
177
- NSBjbSBpbiB0YWlsIGxlbmd0aCwgMTI1IGNtIGF0IHRoZSBzaG91bGRlciwg
178
- YW5kIHdlaWdodCAyNTAga2cuIiwsLCwzLCJtX2VuX3VzMTIyMzMyNS4wMDEi
179
- XSxbIlBob3RvZ3JhcGhlciBQZXRlIE94Zm9yZCB3YXRjaGVzIG91dCBmb3Ig
180
- d29sdmVzLCB3aWxkIFx1MDAzY2JcdTAwM2Vhc3Nlc1x1MDAzYy9iXHUwMDNl
181
- IGFuZCBkaW5vc2F1ciBmb3NzaWxzIGluIE1vbmdvbGlhLiIsLCwsMywibV9l
182
- bl91czEyMjMzMjUuMDAxIl0sWyJJIG1hZGUgYSBjb21wbGV0ZSBcdTAwM2Ni
183
- XHUwMDNlYXJzZVx1MDAzYy9iXHUwMDNlIG9mIG15c2VsZiIsLCwsMywibmVp
184
- ZF8xMTM1Il1dXSxbWyJzbWFydCBhc3MiLCJwYWluIGluIHRoZSBhc3MiLCJq
185
- ZW5ueS1hc3MiLCJzaGUtYXNzIiwiYXNzLWtpc3NlciIsInN0dXBpZCBhc3Mi
186
- LCJzbWFydC1hc3MiLCJsaWNrIGFzcyIsIktpc3MgbXkgYXNzISIsInBvbXBv
187
- dXMgYXNzIl1dXQ==
188
- http_version:
189
- recorded_at: Tue, 25 Aug 2015 19:15:48 GMT
190
- recorded_with: VCR 2.9.3
@@ -1 +0,0 @@
1
- [[["tyłek","ass","",""]],[["rzeczownik",["osioł","tyłek","dupa","zadek"],[["osioł",["ass","donkey","jackass","burro","moke","stupid"],,1],["tyłek",["backside","bottom","bum","behind","buttocks","arse"],,0.277689964],["dupa",["ass","fanny","arse"],,0.112196892],["zadek",["bum","ass","backside","buttocks","bottom","fanny"],,0.00143459172]],"ass",1]],"en",,[["tyłek",[4],1,0,765,0,1,0]],[["ass",4,[["tyłek",765,1,0],["dupa",231,1,0],["osioł",2,1,0],["osła",0,1,0],["ass",0,1,0]],[[0,3]],"ass"]],,,[],4]
@@ -1 +0,0 @@
1
- [[[\"będzie tam iść",\"will go there\",\"\",\"\"]],,\"en\",,[[\"będzie\",[1],true,false,996,0,1,0],[\"tam\",[2],true,false,996,1,2,0],[\"iść\",[3],true,false,995,2,3,0]],[[\"will\",1,[[\"będzie\",996,true,false],[\"będą\",3,true,false],[\"zostanie\",0,true,false],[\"zostaną\",0,true,false],[\"się\",0,true,false]],[[0,4]],\"will go there\"],[\"there\",2,[[\"tam\",996,true,false],[\"nie\",0,true,false],[\"istnieje\",0,true,false],[\"jest\",0,true,false],[\"Istnieją\",0,true,false]],[[8,13]],\"\"],[\"go\",3,[[\"iść\",995,true,false],[\"pójść\",0,true,false],[\"pojechać\",0,true,false],[\"przejść\",0,true,false],[\"udać\",0,true,false]],[[5,7]],\"\"]],,,[[\"en\"]],1]