WpTimthumbs::Detectable specs
This commit is contained in:
@@ -4,28 +4,37 @@ class WpTimthumbs < WpItems
|
||||
module Detectable
|
||||
|
||||
# No passive detection
|
||||
#
|
||||
# @param [ WpTarget ] wp_target
|
||||
# @param [ Hash ] options
|
||||
#
|
||||
# @return [ WpTimthumbs ]
|
||||
def passive_detection(wp_target, options = {})
|
||||
new
|
||||
end
|
||||
|
||||
def targets_items(wp_target, options = {})
|
||||
unless options[:file]
|
||||
raise 'A file must be supplied'
|
||||
end
|
||||
protected
|
||||
|
||||
# @param [ WpTarget ] wp_target
|
||||
# @param [ Hash ] options
|
||||
# @option options [ String ] :file The path to the file containing the targets
|
||||
# @option options [ String ] :theme_name
|
||||
#
|
||||
# @return [ Array<WpTimthumb> ]
|
||||
def targets_items(wp_target, options = {})
|
||||
targets = options[:theme_name] ? theme_timthumbs(options[:theme_name], wp_target) : []
|
||||
|
||||
File.open(options[:file], 'r') do |f|
|
||||
f.readlines.collect do |path|
|
||||
targets << create_item(wp_target, path.strip)
|
||||
end
|
||||
if options[:file]
|
||||
targets += targets_items_from_file(options[:file], wp_target)
|
||||
end
|
||||
|
||||
targets.uniq { |i| i.url }
|
||||
end
|
||||
|
||||
# @return [ WpTimthumb Array ]
|
||||
# @param [ String ] theme_name
|
||||
# @param [ WpTarget ] wp_target
|
||||
#
|
||||
# @return [ Array<WpTimthumb> ]
|
||||
def theme_timthumbs(theme_name, wp_target)
|
||||
targets = []
|
||||
wp_timthumb = create_item(wp_target)
|
||||
@@ -41,6 +50,24 @@ class WpTimthumbs < WpItems
|
||||
targets
|
||||
end
|
||||
|
||||
# @param [ String ] file
|
||||
# @param [ WpTarget ] wp_target
|
||||
#
|
||||
# @return [ Array<WpTimthumb> ]
|
||||
def targets_items_from_file(file, wp_target)
|
||||
targets = []
|
||||
|
||||
File.open(file, 'r') do |f|
|
||||
f.readlines.collect do |path|
|
||||
targets << create_item(wp_target, path.strip)
|
||||
end
|
||||
end
|
||||
targets
|
||||
end
|
||||
|
||||
# @param [ WpTarget ] wp_target
|
||||
# @option [ String ] path
|
||||
#
|
||||
# @return [ WpTimthumb ]
|
||||
def create_item(wp_target, path = nil)
|
||||
options = {
|
||||
|
||||
Reference in New Issue
Block a user