# -*- encoding: UTF-8 -*- require 'test_helper' require 'webmock/minitest' module Wovnrb class ImageReplacerTest < WovnMiniTest def test_replace store = Store.instance url = { :protocol => 'http', :host => 'www.example.com', :pathname => 'hello/index.html' } text_index = { 'Hello' => {'ja' => [{'data' => 'こんにちは'}]} } src_index = { 'http://www.example.com/test.img' => {'ja' => [{'data' => 'http://test.com/ttt.img'}]} } img_src_prefix = 'prefix::' replacer = ImageReplacer.new(store, url, text_index, src_index, img_src_prefix, []) dom = Wovnrb.get_dom('Hello 'http', :host => 'www.example.com', :path => '/hello/' } text_index = {} src_index = { 'http://www.example.com/hello/test.img' => {'ja' => [{'data' => 'http://test.com/ttt.img'}]} } replacer = ImageReplacer.new(store, url, text_index, src_index, '', []) dom = Wovnrb.get_dom(' 'http', :host => 'www.example.com', :path => '/hello/' } text_index = {} src_index = { 'http://www.example.com/test.img' => {'ja' => [{'data' => 'http://test.com/ttt.img'}]} } replacer = ImageReplacer.new(store, url, text_index, src_index, '', []) dom = Wovnrb.get_dom(' {'ja' => [{'data' => 'http://test.com/ttt.img'}]} } replacer = ImageReplacer.new(store, url, text_index, src_index, '', []) dom = Wovnrb.get_dom(' 'http', :host => 'www.example.com', :path => '/hello/' } src_index = { 'http://www.test.com/test.img' => {'ja' => [{'data' => 'http://test.com/ttt.img'}]} } path = '/test.img' # no replace image if not exist host alias img = img_dom_helper(store, url, src_index, path, []) assert_equal('/test.img', img.get_attribute('src')) img = img_dom_helper(store, url, src_index, path, ['www.test.com']) assert_equal('/test.img', img.get_attribute('src')) img = img_dom_helper(store, url, src_index, path, ['www.example.com']) assert_equal('/test.img', img.get_attribute('src')) img = img_dom_helper(store, url, src_index, path, ['www.test.com', 'www.wrong.com']) assert_equal('/test.img', img.get_attribute('src')) # replace image if exist host alias img = img_dom_helper(store, url, src_index, path, ['www.test.com', 'www.example.com']) assert_equal('http://test.com/ttt.img', img.get_attribute('src')) end private def img_dom_helper(store, url, src_index, path, host_aliases) text_index = {} replacer = ImageReplacer.new(store, url, text_index, src_index, '', host_aliases) dom = Wovnrb.get_dom('