}
{:ok, local_activity} = Pleroma.Web.CommonAPI.post(user, %{"status" => "find me!"})
+ {:ok, japanese_activity} = Pleroma.Web.CommonAPI.post(user, %{"status" => "更新情報"})
{:ok, job} = Pleroma.Web.Federator.incoming_ap_doc(params)
{:ok, remote_activity} = ObanHelpers.perform(job)
- %{local_activity: local_activity, remote_activity: remote_activity, user: user}
+
+ %{
+ japanese_activity: japanese_activity,
+ local_activity: local_activity,
+ remote_activity: remote_activity,
+ user: user
+ }
+ end
+
+ test "finds utf8 text in statuses", %{
+ japanese_activity: japanese_activity,
+ user: user
+ } do
+ activities = Activity.search(user, "更新情報")
+
+ assert [^japanese_activity] = activities
end
test "find local and remote statuses for authenticated users", %{
test "search", %{conn: conn} do
user = insert(:user)
user_two = insert(:user, %{nickname: "shp@shitposter.club"})
- user_three = insert(:user, %{nickname: "shp@heldscal.la", name: "I love 2hu"})
+ user_three = insert(:user, %{nickname: "shp@heldscal.la", name: "I love 2hu 天子"})
{:ok, activity} = CommonAPI.post(user, %{"status" => "This is about 2hu private"})
{:ok, _} = CommonAPI.post(user_two, %{"status" => "This isn't"})
- conn = get(conn, "/api/v2/search", %{"q" => "2hu #private"})
-
- assert results = json_response(conn, 200)
+ results =
+ get(conn, "/api/v2/search", %{"q" => "2hu #private"})
+ |> json_response(200)
[account | _] = results["accounts"]
assert account["id"] == to_string(user_three.id)
[status] = results["statuses"]
assert status["id"] == to_string(activity.id)
+
+ results =
+ get(conn, "/api/v2/search", %{"q" => "天子"})
+ |> json_response(200)
+
+ [account] == results["accounts"]
+ assert account["id"] == to_string(user_three.id)
end
end