Online Garage Sale, is a web application developed with Angular 6 and Java EE (Hibernate) which allows for the buying and selling of products.
A user can register for an account and view available items for sale but is unable to sell items.
Once an user is verified by an administrator, the user can sell items.
A user may also choose to upgrade to a premium membership which allows for the additional features such as premium ratings.
The administrator has access to all accounts and items and can remove accounts and items deemed unprofessional.
Users can register and login. Their initial role is 'unverified user'.
Verified and premium users can sell items.
Any user can buy items. We check if the credit card number has a valid pattern without hitting the database.
Administrators can delete or verify users. They can also delete any items.
Users can rate a seller after a transaction. There's two types of raings: standard (for normal users) and premium (for premium users).
The backend was thoroughly tested with JUnit. We followed the Test Driven Development (TDD) methodology, so every function has been tested to make sure it is working.
We used Selenium for UI testing. We tested every page and developed several end-to-end tests.