Skip to content
This repository has been archived by the owner on Jan 2, 2023. It is now read-only.

Commit

Permalink
Merge pull request #128 from SCCapstone/127-ReadMe-Testing-Instructions
Browse files Browse the repository at this point in the history
Update Readme.md
  • Loading branch information
ceboozer authored Jan 30, 2022
2 parents 7e28cf4 + f9b1379 commit dc7951d
Showing 1 changed file with 13 additions and 29 deletions.
42 changes: 13 additions & 29 deletions Readme.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
![alt text](https://github.com/SCCapstone/hackstreetboys/blob/main/Documentation/branding/banner.png?raw=true)
# Fridger

Fridger is a progressive web application for anyone who likes to cook. Users can create, review, and share their food creations with others in the community. This innovative platform will include features such as integrated sharing functionality, recipe reviews, and a recipe matching function that uses the ingredients that you put into your online pantry and your personal preferences to curate the perfect list of recipes to fit your tastes. We’d also like to implement multi-user experiences for guests, verified users, and administrators allowing for OAuth and 2-Factor authentication.

## External Requirements

In order to build this project you first have to install:

* [Node.js](https://nodejs.org/en/)
* [Java Spring Boot](https://spring.io/projects/spring-boot)

Expand All @@ -15,50 +11,38 @@ To install Java Spring boot and other back-end dependencies: \
IDE: IntelliJ IDEA or VSCode \
To install React and other front-end dependencies: \
`npm install` \
IDE: VSCode

IDE: VSCode\
MySQL Community Server and MySQL Workbench/CLI, if using local machine for backend.
## Style
When we build this project, we will rely on this React/JSX style guide from Airbnb to keep our code consistent:
<https://github.com/airbnb/javascript/tree/master/react>

## Setup

<><><><><>

Clone this repo.\
To use backend locally, install MySQL Community Server and MySQL Workbench/CLI; defaulting running on `localhost:8080`\
To use backend with cloud, use `https://api.fridger.recipes` \
To use frontend locally, run `npm install` to install all packages. Use `npm ci` if you're using an automated environment.\
## Running

To run the Ionic application in a development environment use the command \
`ionic serve` \
and to run Spring Boot use \
`./mvnw spring-boot:run`

# Deployment

To make a production build of the React JS/Ionic frontend, we will use the command \
`ionic build` \
which will produce static HTML files. For the backend, we will use the command \
`mvn clean package appengine:deploy -P cloud-gcp` \
after configuring Google Cloud Platform in the application.properties file, updating relevant manifests, and following the setup commands outlined at https://www.baeldung.com/spring-boot-google-app-engine. The backend will be in a JAR or WAR file to be deployed after configuring Google App Engine to run Java.

# Testing

In 492 you will write automated tests. When you do you will need to add a
section that explains how to run them.

The unit tests are in `/test/unit`.

The behavioral tests are in `/test/casper/`.

The unit tests are in `/backend/src/test/java/recipes/fridger/backend`\
The behavioral tests are in `/frontend/src/tests`
## Testing Technology

In some cases you need to install test runners, etc. Explain how.

For our unit tests we're using [Mockito](https://site.mockito.org/) through the spring boot testing library.\
For our behavioral tests we're using [Jest.js](https://jestjs.io/docs/tutorial-react).
## Running Tests

Explain how to run the automated tests.

To use our unit tests, have the code running via `./mvnw spring-boot:run` and then run `./mvnw test`\
We reccomend using IntelliJ or Eclipse to run these tests so it's easier to see the code coverage.\
To use our behavioral tests run `npm test`
# Authors

Caroline Boozer: [email protected] \
Quinn Nisbet: [email protected] \
Adam Frederiksen: [email protected] \
Expand Down

0 comments on commit dc7951d

Please sign in to comment.