mirror of
https://github.com/livebook-dev/livebook.git
synced 2024-11-14 11:55:12 +08:00
4dd28388a5
* Initial implementation to close multiple sessions * Sessions: bulk actions with components * Rename Disconnect sessions to Disconnect runtime * Select all and disabled when nothing is selected * Styled checkbox * Renames toggle events * Warning about not persisted notebooks * Adds disconnect runtime option for a single session * Edit sessions on right * Fix: typos and plural * Minor adjustments * Removes the loop for rendering the menu * Menus with fixed width * Minor adjustments * Pluralize as global helper * Bulk actions form on client side * Track bulk actions buttons state * Fix: home live tests * Doctests for pluralize * Fix: bulk actions buttons losing state on session update * Fix: format * Minor adjustment on toggle_edit * Review-based adjustments * Reset the Edit state after single-session actions * Minor adjustments * Fixes bulk action events * Submit the bulk action form directly * Tests for bulk actions * Indentation * Update lib/livebook_web/live/home_live/close_session_component.ex Co-authored-by: José Valim <jose.valim@gmail.com> Co-authored-by: José Valim <jose.valim@gmail.com>
62 lines
1.7 KiB
Elixir
62 lines
1.7 KiB
Elixir
defmodule LivebookWeb.HelpersTest do
|
||
use ExUnit.Case, async: true
|
||
|
||
alias LivebookWeb.Helpers
|
||
|
||
doctest Helpers
|
||
|
||
describe "names_to_html_ids/1" do
|
||
test "title case" do
|
||
assert(Helpers.names_to_html_ids(["Title of a Section"]) == ["title-of-a-section"])
|
||
end
|
||
|
||
# Contains a couple of unicode spaces to ensure that we handle those
|
||
test "space characters" do
|
||
assert Helpers.names_to_html_ids([" slug \n with spaces \t "]) == ["slug-with-spaces"]
|
||
end
|
||
|
||
test "emoji at end" do
|
||
assert Helpers.names_to_html_ids(["Test 🦦 "]) == ["test-🦦"]
|
||
end
|
||
|
||
test "emoji in middle" do
|
||
assert Helpers.names_to_html_ids(["One 🥮 Two"]) == ["one-🥮-two"]
|
||
end
|
||
|
||
test "returns empty list for an empty list" do
|
||
assert Helpers.names_to_html_ids([]) == []
|
||
end
|
||
|
||
test "returns id-ified strings for different kinds of names" do
|
||
names = [
|
||
"Title of a Section",
|
||
" something with \n many space characters \t "
|
||
]
|
||
|
||
assert Helpers.names_to_html_ids(names) == [
|
||
"title-of-a-section",
|
||
"something-with-many-space-characters"
|
||
]
|
||
end
|
||
|
||
test "enumerates ids when they would be the same" do
|
||
names = [
|
||
"Title of a Section",
|
||
"Some other title",
|
||
" Title of a Section",
|
||
"random",
|
||
" Title of a section",
|
||
"Title of a Section "
|
||
]
|
||
|
||
assert Helpers.names_to_html_ids(names) == [
|
||
"title-of-a-section",
|
||
"some-other-title",
|
||
"title-of-a-section-2",
|
||
"random",
|
||
"title-of-a-section-3",
|
||
"title-of-a-section-4"
|
||
]
|
||
end
|
||
end
|
||
end
|