mirror of
https://github.com/livebook-dev/livebook.git
synced 2025-10-06 03:34:57 +08:00
Refresh Hub's belonged data with push_patch
when it changes (#2384)
This commit is contained in:
parent
aeef92f564
commit
f0979ea492
9 changed files with 66 additions and 94 deletions
|
@ -13,13 +13,27 @@ defmodule LivebookWeb.Hub.EditLive do
|
||||||
Hubs.Broadcasts.subscribe([:connection])
|
Hubs.Broadcasts.subscribe([:connection])
|
||||||
end
|
end
|
||||||
|
|
||||||
{:ok, assign(socket, hub: nil, type: nil, page_title: "Hub - Livebook", params: %{})}
|
{:ok,
|
||||||
|
assign(socket,
|
||||||
|
hub: nil,
|
||||||
|
counter: 0,
|
||||||
|
type: nil,
|
||||||
|
page_title: "Hub - Livebook",
|
||||||
|
params: %{}
|
||||||
|
)}
|
||||||
end
|
end
|
||||||
|
|
||||||
@impl true
|
@impl true
|
||||||
def handle_params(params, _url, socket) do
|
def handle_params(params, _url, socket) do
|
||||||
{id, params} = Map.pop(params, "id")
|
{id, params} = Map.pop(params, "id")
|
||||||
{:noreply, socket |> load_hub(id) |> assign(:params, params)}
|
|
||||||
|
{:noreply,
|
||||||
|
socket
|
||||||
|
|> load_hub(id)
|
||||||
|
# Hub-specific components load data, such as secrets and we use
|
||||||
|
# a counter to force re-render on every patch.
|
||||||
|
|> update(:counter, &(&1 + 1))
|
||||||
|
|> assign(:params, params)}
|
||||||
end
|
end
|
||||||
|
|
||||||
@impl true
|
@impl true
|
||||||
|
@ -30,7 +44,13 @@ defmodule LivebookWeb.Hub.EditLive do
|
||||||
current_user={@current_user}
|
current_user={@current_user}
|
||||||
saved_hubs={@saved_hubs}
|
saved_hubs={@saved_hubs}
|
||||||
>
|
>
|
||||||
<.hub_component type={@type} hub={@hub} live_action={@live_action} params={@params} />
|
<.hub_component
|
||||||
|
type={@type}
|
||||||
|
hub={@hub}
|
||||||
|
counter={@counter}
|
||||||
|
live_action={@live_action}
|
||||||
|
params={@params}
|
||||||
|
/>
|
||||||
</LayoutHelpers.layout>
|
</LayoutHelpers.layout>
|
||||||
"""
|
"""
|
||||||
end
|
end
|
||||||
|
@ -41,6 +61,7 @@ defmodule LivebookWeb.Hub.EditLive do
|
||||||
module={LivebookWeb.Hub.Edit.PersonalComponent}
|
module={LivebookWeb.Hub.Edit.PersonalComponent}
|
||||||
hub={@hub}
|
hub={@hub}
|
||||||
params={@params}
|
params={@params}
|
||||||
|
counter={@counter}
|
||||||
live_action={@live_action}
|
live_action={@live_action}
|
||||||
id="personal-form"
|
id="personal-form"
|
||||||
/>
|
/>
|
||||||
|
@ -54,6 +75,7 @@ defmodule LivebookWeb.Hub.EditLive do
|
||||||
hub={@hub}
|
hub={@hub}
|
||||||
live_action={@live_action}
|
live_action={@live_action}
|
||||||
params={@params}
|
params={@params}
|
||||||
|
counter={@counter}
|
||||||
id="team-form"
|
id="team-form"
|
||||||
/>
|
/>
|
||||||
"""
|
"""
|
||||||
|
@ -94,6 +116,7 @@ defmodule LivebookWeb.Hub.EditLive do
|
||||||
defp load_hub(socket, id) do
|
defp load_hub(socket, id) do
|
||||||
hub = Hubs.fetch_hub!(id)
|
hub = Hubs.fetch_hub!(id)
|
||||||
type = Provider.type(hub)
|
type = Provider.type(hub)
|
||||||
|
|
||||||
assign(socket, hub: hub, type: type)
|
assign(socket, hub: hub, type: type)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -125,7 +125,7 @@ defmodule LivebookWeb.Hub.FileSystemFormComponent do
|
||||||
{:noreply,
|
{:noreply,
|
||||||
socket
|
socket
|
||||||
|> put_flash(:success, message)
|
|> put_flash(:success, message)
|
||||||
|> push_redirect(to: socket.assigns.return_to)}
|
|> push_patch(to: socket.assigns.return_to)}
|
||||||
else
|
else
|
||||||
{:error, %Ecto.Changeset{} = changeset} -> {:noreply, assign(socket, changeset: changeset)}
|
{:error, %Ecto.Changeset{} = changeset} -> {:noreply, assign(socket, changeset: changeset)}
|
||||||
{:transport_error, message} -> {:noreply, assign(socket, error_message: message)}
|
{:transport_error, message} -> {:noreply, assign(socket, error_message: message)}
|
||||||
|
|
|
@ -83,7 +83,7 @@ defmodule LivebookWeb.Hub.FileSystemListComponent do
|
||||||
:ok ->
|
:ok ->
|
||||||
socket
|
socket
|
||||||
|> put_flash(:success, "File storage deleted successfully")
|
|> put_flash(:success, "File storage deleted successfully")
|
||||||
|> push_navigate(to: ~p"/hub/#{hub.id}")
|
|> push_patch(to: ~p"/hub/#{hub.id}")
|
||||||
|
|
||||||
{:transport_error, reason} ->
|
{:transport_error, reason} ->
|
||||||
put_flash(socket, :error, reason)
|
put_flash(socket, :error, reason)
|
||||||
|
|
|
@ -96,7 +96,7 @@ defmodule LivebookWeb.Hub.SecretFormComponent do
|
||||||
{:noreply,
|
{:noreply,
|
||||||
socket
|
socket
|
||||||
|> put_flash(:success, message)
|
|> put_flash(:success, message)
|
||||||
|> push_redirect(to: socket.assigns.return_to)}
|
|> push_patch(to: socket.assigns.return_to)}
|
||||||
else
|
else
|
||||||
{:error, changeset} ->
|
{:error, changeset} ->
|
||||||
{:noreply, assign(socket, changeset: Map.replace!(changeset, :action, :validate))}
|
{:noreply, assign(socket, changeset: Map.replace!(changeset, :action, :validate))}
|
||||||
|
|
|
@ -97,7 +97,7 @@ defmodule LivebookWeb.Hub.SecretListComponent do
|
||||||
:ok ->
|
:ok ->
|
||||||
socket
|
socket
|
||||||
|> put_flash(:success, "Secret #{secret.name} deleted successfully")
|
|> put_flash(:success, "Secret #{secret.name} deleted successfully")
|
||||||
|> push_navigate(to: attrs["return_to"])
|
|> push_patch(to: attrs["return_to"])
|
||||||
|
|
||||||
{:transport_error, reason} ->
|
{:transport_error, reason} ->
|
||||||
put_flash(socket, :error, reason)
|
put_flash(socket, :error, reason)
|
||||||
|
|
|
@ -103,7 +103,7 @@ defmodule LivebookWeb.Hub.Teams.DeploymentGroupFormComponent do
|
||||||
{:noreply,
|
{:noreply,
|
||||||
socket
|
socket
|
||||||
|> put_flash(:success, message)
|
|> put_flash(:success, message)
|
||||||
|> push_redirect(to: ~p"/hub/#{socket.assigns.hub.id}/deployment-groups/edit/#{id}")}
|
|> push_patch(to: ~p"/hub/#{socket.assigns.hub.id}/deployment-groups/edit/#{id}")}
|
||||||
else
|
else
|
||||||
{:error, %Ecto.Changeset{} = changeset} ->
|
{:error, %Ecto.Changeset{} = changeset} ->
|
||||||
{:noreply, assign(socket, changeset: changeset)}
|
{:noreply, assign(socket, changeset: changeset)}
|
||||||
|
|
|
@ -82,7 +82,7 @@ defmodule LivebookWeb.Hub.Teams.DeploymentGroupListComponent do
|
||||||
:ok ->
|
:ok ->
|
||||||
socket
|
socket
|
||||||
|> put_flash(:success, "Deployment group #{deployment_group.name} deleted successfully")
|
|> put_flash(:success, "Deployment group #{deployment_group.name} deleted successfully")
|
||||||
|> push_navigate(to: ~p"/hub/#{hub.id}")
|
|> push_patch(to: ~p"/hub/#{hub.id}")
|
||||||
|
|
||||||
{:transport_error, reason} ->
|
{:transport_error, reason} ->
|
||||||
put_flash(socket, :error, reason)
|
put_flash(socket, :error, reason)
|
||||||
|
|
|
@ -100,12 +100,8 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
|> render_submit(attrs)
|
|> render_submit(attrs)
|
||||||
|
|
||||||
assert_receive {:secret_created, ^secret}
|
assert_receive {:secret_created, ^secret}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "Secret TEAM_ADD_SECRET added successfully"} =
|
assert render(view) =~ "Secret TEAM_ADD_SECRET added successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
||||||
assert secret in Livebook.Hubs.get_secrets(hub)
|
assert secret in Livebook.Hubs.get_secrets(hub)
|
||||||
end
|
end
|
||||||
|
@ -148,11 +144,8 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
updated_secret = %{secret | value: new_value}
|
updated_secret = %{secret | value: new_value}
|
||||||
|
|
||||||
assert_receive {:secret_updated, ^updated_secret}
|
assert_receive {:secret_updated, ^updated_secret}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "Secret TEAM_EDIT_SECRET updated successfully"} =
|
assert render(view) =~ "Secret TEAM_EDIT_SECRET updated successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
||||||
assert updated_secret in Livebook.Hubs.get_secrets(hub)
|
assert updated_secret in Livebook.Hubs.get_secrets(hub)
|
||||||
end
|
end
|
||||||
|
@ -174,11 +167,8 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
render_confirm(view)
|
render_confirm(view)
|
||||||
|
|
||||||
assert_receive {:secret_deleted, ^secret}
|
assert_receive {:secret_deleted, ^secret}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "Secret TEAM_DELETE_SECRET deleted successfully"} =
|
assert render(view) =~ "Secret TEAM_DELETE_SECRET deleted successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
refute render(element(view, "#hub-secrets-list")) =~ secret.name
|
refute render(element(view, "#hub-secrets-list")) =~ secret.name
|
||||||
refute secret in Livebook.Hubs.get_secrets(hub)
|
refute secret in Livebook.Hubs.get_secrets(hub)
|
||||||
end
|
end
|
||||||
|
@ -221,12 +211,8 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
|> render_submit(attrs)
|
|> render_submit(attrs)
|
||||||
|
|
||||||
assert_receive {:file_system_created, %{id: ^id} = file_system}
|
assert_receive {:file_system_created, %{id: ^id} = file_system}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "File storage added successfully"} =
|
assert render(view) =~ "File storage added successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
||||||
assert file_system in Livebook.Hubs.get_file_systems(hub)
|
assert file_system in Livebook.Hubs.get_file_systems(hub)
|
||||||
end
|
end
|
||||||
|
@ -265,13 +251,10 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
|> render_submit(put_in(attrs.file_system.access_key_id, "new key"))
|
|> render_submit(put_in(attrs.file_system.access_key_id, "new key"))
|
||||||
|
|
||||||
updated_file_system = %{file_system | access_key_id: "new key"}
|
updated_file_system = %{file_system | access_key_id: "new key"}
|
||||||
|
|
||||||
assert_receive {:file_system_updated, ^updated_file_system}
|
assert_receive {:file_system_updated, ^updated_file_system}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "File storage updated successfully"} =
|
assert render(view) =~ "File storage updated successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
||||||
assert updated_file_system in Livebook.Hubs.get_file_systems(hub)
|
assert updated_file_system in Livebook.Hubs.get_file_systems(hub)
|
||||||
end
|
end
|
||||||
|
@ -297,12 +280,8 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
render_confirm(view)
|
render_confirm(view)
|
||||||
|
|
||||||
assert_receive {:file_system_deleted, ^file_system}
|
assert_receive {:file_system_deleted, ^file_system}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "File storage deleted successfully"} =
|
assert render(view) =~ "File storage deleted successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
refute render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
refute render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
||||||
refute file_system in Livebook.Hubs.get_file_systems(hub)
|
refute file_system in Livebook.Hubs.get_file_systems(hub)
|
||||||
end
|
end
|
||||||
|
@ -347,14 +326,11 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
|> render_submit(attrs)
|
|> render_submit(attrs)
|
||||||
|
|
||||||
assert_receive {:deployment_group_created,
|
assert_receive {:deployment_group_created,
|
||||||
%DeploymentGroup{name: "TEAM_ADD_DEPLOYMENT_GROUP"} = deployment_group}
|
%DeploymentGroup{id: id, name: "TEAM_ADD_DEPLOYMENT_GROUP"} =
|
||||||
|
deployment_group}
|
||||||
|
|
||||||
%{"success" => "Deployment group TEAM_ADD_DEPLOYMENT_GROUP added successfully"} =
|
assert_patch(view, "/hub/#{hub.id}/deployment-groups/edit/#{id}")
|
||||||
assert_redirect(view, "/hub/#{hub.id}/deployment-groups/edit/#{deployment_group.id}")
|
assert render(view) =~ "Deployment group TEAM_ADD_DEPLOYMENT_GROUP added successfully"
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
assert render(element(view, "#hub-deployment-groups-list")) =~ deployment_group.name
|
|
||||||
assert deployment_group in Livebook.Teams.get_deployment_groups(hub)
|
assert deployment_group in Livebook.Teams.get_deployment_groups(hub)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -408,13 +384,8 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
updated_deployment_group = %{deployment_group | mode: new_mode}
|
updated_deployment_group = %{deployment_group | mode: new_mode}
|
||||||
|
|
||||||
assert_receive {:deployment_group_updated, ^updated_deployment_group}
|
assert_receive {:deployment_group_updated, ^updated_deployment_group}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}/deployment-groups/edit/#{deployment_group.id}")
|
||||||
%{"success" => "Deployment group TEAM_EDIT_DEPLOYMENT_GROUP updated successfully"} =
|
assert render(view) =~ "Deployment group TEAM_EDIT_DEPLOYMENT_GROUP updated successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}/deployment-groups/edit/#{deployment_group.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
assert render(element(view, "#hub-deployment-groups-list")) =~ deployment_group.name
|
|
||||||
|
|
||||||
assert updated_deployment_group in Livebook.Teams.get_deployment_groups(hub)
|
assert updated_deployment_group in Livebook.Teams.get_deployment_groups(hub)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -443,10 +414,8 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
|
||||||
assert_receive {:deployment_group_deleted,
|
assert_receive {:deployment_group_deleted,
|
||||||
%DeploymentGroup{name: "TEAM_DELETE_DEPLOYMENT_GROUP"}}
|
%DeploymentGroup{name: "TEAM_DELETE_DEPLOYMENT_GROUP"}}
|
||||||
|
|
||||||
%{"success" => "Deployment group TEAM_DELETE_DEPLOYMENT_GROUP deleted successfully"} =
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
assert render(view) =~ "Deployment group TEAM_DELETE_DEPLOYMENT_GROUP deleted successfully"
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
refute render(element(view, "#hub-deployment-groups-list")) =~ deployment_group.name
|
refute render(element(view, "#hub-deployment-groups-list")) =~ deployment_group.name
|
||||||
refute deployment_group in Livebook.Teams.get_deployment_groups(hub)
|
refute deployment_group in Livebook.Teams.get_deployment_groups(hub)
|
||||||
end
|
end
|
||||||
|
|
|
@ -81,12 +81,8 @@ defmodule LivebookWeb.Hub.EditLiveTest do
|
||||||
|> render_submit(attrs)
|
|> render_submit(attrs)
|
||||||
|
|
||||||
assert_receive {:secret_created, ^secret}
|
assert_receive {:secret_created, ^secret}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "Secret PERSONAL_ADD_SECRET added successfully"} =
|
assert render(view) =~ "Secret PERSONAL_ADD_SECRET added successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
||||||
assert secret in Livebook.Hubs.get_secrets(hub)
|
assert secret in Livebook.Hubs.get_secrets(hub)
|
||||||
end
|
end
|
||||||
|
@ -128,11 +124,8 @@ defmodule LivebookWeb.Hub.EditLiveTest do
|
||||||
updated_secret = %{secret | value: new_value}
|
updated_secret = %{secret | value: new_value}
|
||||||
|
|
||||||
assert_receive {:secret_updated, ^updated_secret}
|
assert_receive {:secret_updated, ^updated_secret}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "Secret PERSONAL_EDIT_SECRET updated successfully"} =
|
assert render(view) =~ "Secret PERSONAL_EDIT_SECRET updated successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
assert render(element(view, "#hub-secrets-list")) =~ secret.name
|
||||||
assert updated_secret in Livebook.Hubs.get_secrets(hub)
|
assert updated_secret in Livebook.Hubs.get_secrets(hub)
|
||||||
end
|
end
|
||||||
|
@ -153,11 +146,8 @@ defmodule LivebookWeb.Hub.EditLiveTest do
|
||||||
render_confirm(view)
|
render_confirm(view)
|
||||||
|
|
||||||
assert_receive {:secret_deleted, ^secret}
|
assert_receive {:secret_deleted, ^secret}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "Secret PERSONAL_DELETE_SECRET deleted successfully"} =
|
assert render(view) =~ "Secret PERSONAL_DELETE_SECRET deleted successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
refute render(element(view, "#hub-secrets-list")) =~ secret.name
|
refute render(element(view, "#hub-secrets-list")) =~ secret.name
|
||||||
refute secret in Livebook.Hubs.get_secrets(hub)
|
refute secret in Livebook.Hubs.get_secrets(hub)
|
||||||
end
|
end
|
||||||
|
@ -194,12 +184,8 @@ defmodule LivebookWeb.Hub.EditLiveTest do
|
||||||
|> render_submit(attrs)
|
|> render_submit(attrs)
|
||||||
|
|
||||||
assert_receive {:file_system_created, ^file_system}
|
assert_receive {:file_system_created, ^file_system}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "File storage added successfully"} =
|
assert render(view) =~ "File storage added successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
||||||
assert file_system in Livebook.Hubs.get_file_systems(hub)
|
assert file_system in Livebook.Hubs.get_file_systems(hub)
|
||||||
end
|
end
|
||||||
|
@ -235,13 +221,10 @@ defmodule LivebookWeb.Hub.EditLiveTest do
|
||||||
|> render_submit(put_in(attrs.file_system.access_key_id, "new key"))
|
|> render_submit(put_in(attrs.file_system.access_key_id, "new key"))
|
||||||
|
|
||||||
updated_file_system = %{file_system | access_key_id: "new key"}
|
updated_file_system = %{file_system | access_key_id: "new key"}
|
||||||
|
|
||||||
assert_receive {:file_system_updated, ^updated_file_system}
|
assert_receive {:file_system_updated, ^updated_file_system}
|
||||||
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
%{"success" => "File storage updated successfully"} =
|
assert render(view) =~ "File storage updated successfully"
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
assert render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
||||||
assert updated_file_system in Livebook.Hubs.get_file_systems(hub)
|
assert updated_file_system in Livebook.Hubs.get_file_systems(hub)
|
||||||
end
|
end
|
||||||
|
@ -265,11 +248,8 @@ defmodule LivebookWeb.Hub.EditLiveTest do
|
||||||
|
|
||||||
assert_receive {:file_system_deleted, ^file_system}
|
assert_receive {:file_system_deleted, ^file_system}
|
||||||
|
|
||||||
%{"success" => "File storage deleted successfully"} =
|
assert_patch(view, "/hub/#{hub.id}")
|
||||||
assert_redirect(view, "/hub/#{hub.id}")
|
assert render(view) =~ "File storage deleted successfully"
|
||||||
|
|
||||||
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
|
|
||||||
|
|
||||||
refute render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
refute render(element(view, "#hub-file-systems-list")) =~ file_system.bucket_url
|
||||||
refute file_system in Livebook.Hubs.get_file_systems(hub)
|
refute file_system in Livebook.Hubs.get_file_systems(hub)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Reference in a new issue