Class: TwitterSearchFakeFetcher

Inherits:
Monkeyshines::Fetcher::FakeFetcher
  • Object
show all
Defined in:
lib/wuclan/twitter/scrape/twitter_search_fake_fetcher.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.fake_time(item_on_page, base = nil) ⇒ Object



4
5
6
7
# File 'lib/wuclan/twitter/scrape/twitter_search_fake_fetcher.rb', line 4

def self.fake_time item_on_page, base=nil
  base ||= 86_400
  base - (item_on_page.to_f / items_rate)
end

Instance Method Details

#fake_contents(req) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/wuclan/twitter/scrape/twitter_search_fake_fetcher.rb', line 9

def fake_contents req
  max_time = self.class.fake_time((req.page - 1) * 105)
  max_id   = max_time.to_i
  case req.query_term
  when '_no_results'
    return { :max_id => -1, :results => [],}
  when '_one_result'
    n_results = 1
  else
    n_results = 100
  end
  { :max_id    => max_id,
    # :next_page => "?page=2&max_id=#{max_id}&rpp=100&q=#{req.query_term}",
    :results   => (0 ... n_results).map{|i| {
        :text       => "%s-%04d-%03d"%[req.query_term, req.page, i],
        :created_at => Time.now - (86_400 - self.class.fake_time(i, max_time)),
        :id         => (self.class.fake_time(i, max_id)*100).to_i } }   }
end

#get(req) ⇒ Object



28
29
30
31
32
# File 'lib/wuclan/twitter/scrape/twitter_search_fake_fetcher.rb', line 28

def get req
  super req
  req.contents = fake_contents(req).to_json
  req
end