From 7d2add339b7fc06c2e30563f5241b97391bcd506 Mon Sep 17 00:00:00 2001 From: h_dung Date: Thu, 11 Sep 2014 15:40:48 +0700 Subject: [PATCH 1/2] Fix ,,, json parsing --- .rspec | 1 + lib/google_translate/google_translate.rb | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 .rspec diff --git a/.rspec b/.rspec new file mode 100644 index 0000000..5052887 --- /dev/null +++ b/.rspec @@ -0,0 +1 @@ +--color \ No newline at end of file diff --git a/lib/google_translate/google_translate.rb b/lib/google_translate/google_translate.rb index 2c965d4..b5a164b 100644 --- a/lib/google_translate/google_translate.rb +++ b/lib/google_translate/google_translate.rb @@ -9,7 +9,7 @@ class GoogleTranslate GOOGLE_TRANSLATE_SERVICE_URL = "translate.google.com" def supported_languages - response = call_service GOOGLE_TRANSLATE_SERVICE_URL + response = call_service "https://#{GOOGLE_TRANSLATE_SERVICE_URL}" from_languages = collect_languages response.body, 0, 'sl', 'gt-sl' to_languages = collect_languages response.body, 1, 'tl', 'gt-tl' @@ -60,7 +60,7 @@ def call_translate_service from_lang, to_lang, text response = call_service url + "&q=#{text}" - response.body.split(',').collect { |s| s == '' ? "\"\"" : s }.join(",") # fix json object + response.body.gsub(/,(,)+/,',').split(',').collect { |s| s == '' ? "\"\"" : s }.join(",") # fix json object end def call_speech_service lang, text From 0ca0b76f7aac8cd9c2bfe1800ed8738b905c79fe Mon Sep 17 00:00:00 2001 From: h_dung Date: Thu, 11 Sep 2014 15:42:11 +0700 Subject: [PATCH 2/2] Add rspec --- spec/google_translate_spec.rb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/spec/google_translate_spec.rb b/spec/google_translate_spec.rb index dde51ab..461fb24 100644 --- a/spec/google_translate_spec.rb +++ b/spec/google_translate_spec.rb @@ -37,4 +37,10 @@ expect(from_languages.size).to be > 0 expect(to_languages.size).to be > 0 end + + it "should replace ,(,)+ to ," do + r = subject.translate(:en, :af, 'beta') + puts r + expect(r.size).to be > 0 + end end