Skip to content

Commit

Permalink
✅ [open-formulieren/open-forms#5033] Stories for ErrorBoundary
Browse files Browse the repository at this point in the history
  • Loading branch information
stevenbal committed Jan 24, 2025
1 parent 87c76f2 commit c0ca478
Showing 1 changed file with 104 additions and 0 deletions.
104 changes: 104 additions & 0 deletions src/components/Errors/ErrorBoundary.stories.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
import React from 'react';

import {PermissionDenied, ServiceUnavailable, UnprocessableEntity} from 'errors';

import ErrorBoundary from './ErrorBoundary';

const render = ({useCard, errorType, errorCode}) => {
const error = new errorType('some error', 500, 'some error', errorCode);

return (
<ErrorBoundary useCard={useCard}>
{React.createElement(() => {
throw error;
})}
</ErrorBoundary>
);
};

export default {
title: 'Private API / ErrorBoundary',
component: ErrorBoundary,
argTypes: {
useCard: {control: {type: 'boolean'}},
errorType: {
table: {
options: [PermissionDenied, ServiceUnavailable, UnprocessableEntity],
control: {type: 'radio'},
},
},
},
};

export const GenericError = {
render,
args: {
useCard: true,
errorType: Error,
errorCode: 'generic',
},
};

// FIXME cant get this to work with routerprovider
// export const PermissionDeniedError = {
// render,
// args: {
// useCard: true,
// errorType: PermissionDenied,
// // errorCode: "service_unavailable",
// },
// };

export const UnprocessableEntityErrorInactive = {
render,
args: {
useCard: true,
errorType: UnprocessableEntity,
errorCode: 'form-inactive',
},
};

export const UnprocessableEntityErrorGeneric = {
render,
args: {
useCard: true,
errorType: UnprocessableEntity,
errorCode: 'generic',
},
};

export const ServiceUnavailableErrorMaintenance = {
render,
args: {
useCard: true,
errorType: ServiceUnavailable,
errorCode: 'form-maintenance',
},
};

export const ServiceUnavailableErrorMaxSubmissions = {
render,
args: {
useCard: true,
errorType: ServiceUnavailable,
errorCode: 'form-maximum-submissions',
},
};

export const ServiceUnavailableError = {
render,
args: {
useCard: true,
errorType: ServiceUnavailable,
errorCode: 'service_unavailable',
},
};

export const ServiceUnavailableErrorGeneric = {
render,
args: {
useCard: true,
errorType: ServiceUnavailable,
errorCode: 'generic',
},
};

0 comments on commit c0ca478

Please sign in to comment.