Files
fizzy/test/models/ai/list_users_tool_test.rb
T
2025-08-13 15:14:12 +02:00

33 lines
845 B
Ruby

require "test_helper"
class Ai::ListUsersToolTest < ActiveSupport::TestCase
include McpHelper
setup do
@tool = Ai::ListUsersTool.new(user: users(:kevin))
end
test "execute" do
response = @tool.execute(collection_id: collections(:writebook).id)
page = parse_paginated_response(response)
assert page[:records].is_a?(Array)
assert_raises(ActiveRecord::RecordNotFound) do
@tool.execute
end
end
test "execute when filtering by ids" do
users = users(:david, :jz)
user_ids = users.pluck(:id)
response = @tool.execute(collection_id: collections(:writebook).id, ids: user_ids.join(", "))
page = parse_paginated_response(response)
record_ids = page[:records].map { |user| user["id"].to_i }
assert_equal 2, record_ids.count
assert_equal user_ids.sort, record_ids.sort
end
end