mirror of https://github.com/mastodon/mastodon
Add import/export feature for bookmarks (#14956)
* Add ability to export bookmarks * Add support for importing bookmarks * Add bookmark import tests * Add bookmarks export testpull/15188/head
parent
022d2353a7
commit
96c1e71329
@ -0,0 +1,19 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Settings
|
||||||
|
module Exports
|
||||||
|
class BookmarksController < BaseController
|
||||||
|
include ExportControllerConcern
|
||||||
|
|
||||||
|
def index
|
||||||
|
send_export_file
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def export_data
|
||||||
|
@export.to_bookmarks_csv
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,17 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe Settings::Exports::BookmarksController do
|
||||||
|
render_views
|
||||||
|
|
||||||
|
describe 'GET #index' do
|
||||||
|
it 'returns a csv of the bookmarked toots' do
|
||||||
|
user = Fabricate(:user)
|
||||||
|
user.account.bookmarks.create!(status: Fabricate(:status, uri: 'https://foo.bar/statuses/1312'))
|
||||||
|
|
||||||
|
sign_in user, scope: :user
|
||||||
|
get :index, format: :csv
|
||||||
|
|
||||||
|
expect(response.body).to eq "https://foo.bar/statuses/1312\n"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,4 @@
|
|||||||
|
https://example.com/statuses/1312
|
||||||
|
https://local.com/users/foo/statuses/42
|
||||||
|
https://unknown-remote.com/users/bar/statuses/1
|
||||||
|
https://example.com/statuses/direct
|
Loading…
Reference in New Issue