fix(upload): animate uploading ellipsis

This commit is contained in:
Tommaso Casaburi
2026-05-01 22:54:05 +07:00
parent 9f388693eb
commit 70791fa80a
4 changed files with 32 additions and 3 deletions
@@ -25,6 +25,7 @@ const testState = vi.hoisted(() => ({
handleUploadMock: vi.fn(),
isOffline: false,
isOnlineStatusLoading: false,
isUploading: false,
isResolvingExternalQuotes: false,
navigateMock: vi.fn(),
offlineTitle: 'offline board',
@@ -172,12 +173,16 @@ vi.mock('../../../hooks/use-file-upload', () => ({
testState.uploadComplete = onUploadComplete;
return {
handleUpload: testState.handleUploadMock,
isUploading: false,
isUploading: testState.isUploading,
uploadedFileName: testState.uploadedFileName,
};
},
}));
vi.mock('../../loading-ellipsis', () => ({
default: ({ string }: { string: string }) => createElement('span', { 'data-testid': 'loading-ellipsis' }, string),
}));
vi.mock('../../../lib/utils/media-utils', () => ({
getDisplayMediaInfoType: (type: string, t: (key: string) => string) => t(type),
getLinkMediaInfo: (link: string) => {
@@ -293,6 +298,7 @@ describe('PostForm', () => {
testState.gifFrameStatus = 'idle';
testState.isOffline = false;
testState.isOnlineStatusLoading = false;
testState.isUploading = false;
testState.isResolvingExternalQuotes = false;
testState.offlineTitle = 'offline board';
testState.postIndex = undefined;
@@ -433,6 +439,15 @@ describe('PostForm', () => {
expect(table?.textContent).toContain('file name.jpg');
});
it('uses the shared loading ellipsis while a post form upload is running', async () => {
testState.isUploading = true;
await renderPostForm('/all');
await clickByText(container, 'start_new_thread');
expect(container.querySelector('[data-testid="loading-ellipsis"]')?.textContent).toBe('uploading');
});
it('redirects to the pending route when a post publish index is already available on mount', async () => {
testState.postIndex = 7;
testState.resolvedCommunityAddress = 'music-posting.eth';