-
setPreview(!preview)}>
- {!preview ? : }
+ setPreview(!preview)}
+ data-test="previewButton"
+ >
+ {
+ !preview ?
+ :
+
+ }
{
if (changed) file.save(markdown);
}}
+ data-test="saveButton"
>
{changed ? : }
@@ -82,12 +96,14 @@ function FileCard({
if (confirmation) file.dangerouslyDelete();
}}
+ data-test="deleteButton"
>
@@ -106,6 +122,11 @@ FileCard.propTypes = {
}),
name: PropTypes.string.isRequired,
avatar_url: PropTypes.string,
+ permissions: PropTypes.shape({
+ push: PropTypes.bool,
+ }).isRequired,
+ full_name: PropTypes.string.isRequired,
+ default_branch: PropTypes.string.isRequired,
}).isRequired,
/** Pass a previously returned file object to bypass the selection. */
file: PropTypes.shape({
@@ -115,13 +136,12 @@ FileCard.propTypes = {
content: PropTypes.string,
branch: PropTypes.string,
filepath: PropTypes.string,
+ save: PropTypes.func.isRequired,
+ dangerouslyDelete: PropTypes.func.isRequired,
+ close: PropTypes.func.isRequired
}),
/** Pass a previously returned authentication object to bypass login. */
- authentication: PropTypes.shape({
- user: PropTypes.object.isRequired,
- token: PropTypes.object.isRequired,
- config: PropTypes.object.isRequired,
- }),
+ isAuthenticated: PropTypes.bool,
};
export default FileCard;
diff --git a/src/components/file/FileForm.js b/src/components/file/FileForm.js
index 040e18c8..cb5e1a9d 100644
--- a/src/components/file/FileForm.js
+++ b/src/components/file/FileForm.js
@@ -17,28 +17,35 @@ function FileForm({
const disabled = !(filepath);
return (
-
+