42 lines
1.4 KiB
Ruby
42 lines
1.4 KiB
Ruby
require "test_helper"
|
|
|
|
class Command::AddCardTest < ActionDispatch::IntegrationTest
|
|
include CommandTestHelper
|
|
|
|
setup do
|
|
Current.session = sessions(:david)
|
|
@card = cards(:text)
|
|
end
|
|
|
|
test "create a new untitled card" do
|
|
result = assert_difference -> { users(:david).accessible_cards.count }, +1 do
|
|
execute_command "/add", context_url: collection_card_url(@card.collection, @card)
|
|
end
|
|
|
|
new_card = users(:david).accessible_cards.last
|
|
assert_equal "", new_card.title
|
|
assert_equal @card.collection, new_card.collection
|
|
assert_equal collection_card_path(new_card.collection, new_card, focus_on_title: true), result.url
|
|
end
|
|
|
|
test "create a new titled card" do
|
|
result = assert_difference -> { users(:david).accessible_cards.count }, +1 do
|
|
execute_command "/add Review report", context_url: collection_card_url(@card.collection, @card)
|
|
end
|
|
|
|
new_card = users(:david).accessible_cards.last
|
|
assert_equal "Review report", new_card.title
|
|
assert_equal @card.collection, new_card.collection
|
|
assert_equal collection_card_path(new_card.collection, new_card, focus_on_title: true), result.url
|
|
end
|
|
|
|
test "undo card creation" do
|
|
command = parse_command "/add", context_url: collection_cards_url(@card.collection)
|
|
command.execute
|
|
|
|
assert_difference -> { users(:david).accessible_cards.count }, -1 do
|
|
command.undo
|
|
end
|
|
end
|
|
end
|