From 42f715f1234d0430053e9b37881524daf86ff09f Mon Sep 17 00:00:00 2001 From: Parvesh Monu Date: Fri, 27 Sep 2024 20:18:53 +0530 Subject: [PATCH] fix_: profile name not displayed on the login page for synced device in the fallback flow (#5876) --- api/backend_test.go | 24 ++++++++++++++++++++++++ api/geth_backend.go | 4 ++++ 2 files changed, 28 insertions(+) diff --git a/api/backend_test.go b/api/backend_test.go index 88d92faea..3ca3c22cc 100644 --- a/api/backend_test.go +++ b/api/backend_test.go @@ -1647,6 +1647,7 @@ func TestRestoreAccountAndLogin(t *testing.T) { account, err := backend.RestoreAccountAndLogin(restoreRequest) require.NoError(t, err) require.NotNil(t, account) + require.Equal(t, "Account1", account.Name) // Test case 2: Invalid restore account request invalidRequest := &requests.RestoreAccount{} @@ -1660,6 +1661,29 @@ func TestRestoreAccountAndLogin(t *testing.T) { require.Empty(t, mnemonic) } +func TestRestoreAccountAndLoginWithoutDisplayName(t *testing.T) { + utils.Init() + tmpdir := t.TempDir() + + backend := NewGethStatusBackend() + + // Test case: Valid restore account request without DisplayName + restoreRequest := &requests.RestoreAccount{ + Mnemonic: "test test test test test test test test test test test test", + FetchBackup: false, + CreateAccount: requests.CreateAccount{ + DeviceName: "StatusIM", + Password: "password", + CustomizationColor: "0x000000", + RootDataDir: tmpdir, + }, + } + account, err := backend.RestoreAccountAndLogin(restoreRequest) + require.NoError(t, err) + require.NotNil(t, account) + require.NotEmpty(t, account.Name) +} + func TestCreateAccountPathsValidation(t *testing.T) { tmpdir := t.TempDir() diff --git a/api/geth_backend.go b/api/geth_backend.go index 52f88cfea..1be579c36 100644 --- a/api/geth_backend.go +++ b/api/geth_backend.go @@ -1492,6 +1492,10 @@ func (b *GethStatusBackend) prepareNodeAccount(request *requests.CreateAccount, return nil, errors.Wrap(err, "failed to prepare settings") } + if response.account.Name == "" { + response.account.Name = response.settings.Name + } + response.nodeConfig, err = b.prepareConfig(request, input, response.settings.InstallationID) if err != nil { return nil, errors.Wrap(err, "failed to prepare node config")