Fix page caching
This commit is contained in:
@@ -20,7 +20,7 @@ module Adamantium
|
||||
|
||||
if bookmark[:cache]
|
||||
page_cacher.call(url: created_bookmark.url) do |content|
|
||||
post_repo.update(id: created_bookmark.id, cached_content: content)
|
||||
post_repo.update(created_bookmark.id, cached_content: content)
|
||||
end
|
||||
end
|
||||
|
||||
|
@@ -12,6 +12,7 @@ module Adamantium
|
||||
required(:post_type).value(included_in?: %w[bookmark])
|
||||
required(:syndicate_to).array(:string)
|
||||
required(:photos).array(:hash)
|
||||
required(:cache).filled(:bool)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@@ -4,7 +4,7 @@ require "down"
|
||||
module Adamantium
|
||||
class PageCacher
|
||||
def call(url:, &block)
|
||||
tempfile = Down.download(bookmark.url)
|
||||
tempfile = Down.download(url)
|
||||
content = Readability::Document.new(tempfile.read, tags: %w[div section header p h1 h2 h3 h4 h5 h6 ol ul li table td tr thead tbody a code pre], attributes: %w[href]).content
|
||||
yield content
|
||||
end
|
||||
|
@@ -49,13 +49,15 @@ RSpec.describe "Post creation", :db, :requests do
|
||||
h: "entry",
|
||||
"bookmark-of": "http://example.com",
|
||||
name: "Name",
|
||||
content: "Content of theh post"
|
||||
content: "Content of the post",
|
||||
cache: "true"
|
||||
}
|
||||
|
||||
post "/micropub", params
|
||||
|
||||
expect(last_response).to be_successful
|
||||
expect(post_repo.bookmark_listing.count).to eq 1
|
||||
expect(post_repo.bookmark_listing.last.cached_content).to_not eq nil
|
||||
end
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user