mirror of
https://github.com/discourse/discourse.git
synced 2024-11-30 09:14:36 +08:00
7fee3c61de
* Support for custom messages and redirects when creating posts When a post/topic is created Discourse serializes a `NewPostResult` object. Normally this contains a status like `created_post` or errors describing why the post could not be created. There are times when a plugin might want to take the inputted post and do something in the background. In this case, the plugin can return a custom `message` and `route_to` attribute in the `NewPostResult`. If present, the message will be displayed in an alert, and when "Ok" is clicked the user will be routed to the new URL. * Destroy the draft in parallel
18 lines
462 B
Ruby
18 lines
462 B
Ruby
# frozen_string_literal: true
|
|
|
|
require 'rails_helper'
|
|
|
|
describe NewPostResultSerializer do
|
|
|
|
it "includes the message and route_to if present" do
|
|
result = NewPostResult.new(:custom, true)
|
|
result.message = 'hello :)'
|
|
result.route_to = "/cool-route"
|
|
|
|
serializer = described_class.new(result)
|
|
expect(serializer.success).to eq(true)
|
|
expect(serializer.message).to eq('hello :)')
|
|
expect(serializer.route_to).to eq('/cool-route')
|
|
end
|
|
end
|