diff --git a/cypress.config.ts b/cypress.config.ts
index 6a3b38e..a5a826a 100644
--- a/cypress.config.ts
+++ b/cypress.config.ts
@@ -3,6 +3,8 @@ import { defineConfig } from 'cypress';
import codeCoverageTask from '@cypress/code-coverage/task';
export default defineConfig({
+ viewportWidth: 1280,
+ viewportHeight: 720,
e2e: {
experimentalStudio: true,
baseUrl: 'http://localhost:5173',
diff --git a/cypress/component/Landing.cy.tsx b/cypress/component/Landing.cy.tsx
index 5610c3e..920ef61 100644
--- a/cypress/component/Landing.cy.tsx
+++ b/cypress/component/Landing.cy.tsx
@@ -1,8 +1,13 @@
import Landing from '../../src/components/Landing';
describe('Landing', () => {
- it('should render correctly', () => {
+ it('should render the content of Landing view correctly', () => {
cy.mount();
- cy.contains('Welcome');
+ cy.contains('Welcome to the Neurobagel Annotation Tool');
+ cy.get('img[alt="Neurobagel Logo"]').should('be.visible');
+ cy.get('img[alt="Neurobagel Logo"]').should('have.attr', 'alt', 'Neurobagel Logo');
+ cy.get('img[alt="Landing emoji"]').should('be.visible');
+ cy.get('img[alt="Landing emoji"]').should('have.attr', 'alt', 'Landing emoji');
+ cy.get('[data-cy="get started-button"]').should('be.visible');
});
});
diff --git a/cypress/e2e/Simple.cy.ts b/cypress/e2e/Simple.cy.ts
index fbc2e2a..f27419f 100644
--- a/cypress/e2e/Simple.cy.ts
+++ b/cypress/e2e/Simple.cy.ts
@@ -2,16 +2,16 @@ describe('Simlpe e2e test', () => {
it('Steps through different app views', () => {
cy.visit('http://localhost:5173');
cy.contains('Welcome');
- cy.contains('Start - Upload').click();
+ cy.get('[data-cy="get started-button"]').click();
cy.contains('Upload');
- cy.contains('Next - Column Annotation').click();
+ cy.get('[data-cy="next - column annotation-button"]').click();
cy.contains('Column Annotation');
- cy.contains('Next - Value Annotation').click();
+ cy.get('[data-cy="next - value annotation-button"]').click();
cy.contains('Value Annotation');
// reload to make sure the currentView persists
cy.reload();
cy.contains('Value Annotation');
- cy.contains('Next - Download').click();
+ cy.get('[data-cy="next - download-button"]').click();
cy.contains('Download');
});
});
diff --git a/src/assets/landing-emoji.png b/src/assets/landing-emoji.png
new file mode 100644
index 0000000..6b7048e
Binary files /dev/null and b/src/assets/landing-emoji.png differ
diff --git a/src/components/Landing.tsx b/src/components/Landing.tsx
index becf450..0c2cac2 100644
--- a/src/components/Landing.tsx
+++ b/src/components/Landing.tsx
@@ -1,10 +1,30 @@
+import { Typography } from '@mui/material';
import NavigationButton from './NavigationButton';
+import logo from '../assets/logo.svg';
+import landingEmoji from '../assets/landing-emoji.png';
function Landing() {
return (
-
-
Welcome
-
+
+

+
+
+
+

+
+ Welcome to the Neurobagel Annotation Tool
+
+
+
+
+ This tool allows you to create a machine-readable BIDS data dictionary in .json format for
+ a tabular phenotypic file in .tsv format.
+
+
+
+
+
+
);
}
diff --git a/src/components/NavigationButton.tsx b/src/components/NavigationButton.tsx
index 3334904..45a00bb 100644
--- a/src/components/NavigationButton.tsx
+++ b/src/components/NavigationButton.tsx
@@ -15,7 +15,7 @@ function NavigationButton({
};
return (
-