/Upvote-Concept-Karma-Testing

Mock Product Reviews that can be upvoted. Built to be tested with Karma/Jasmine

Primary LanguageTypeScript

Code Style

  • Angular was chosen because of familiarity and to utilise Typescript.
  • Bootstrap 4 was used and SCSS for the rest
  • This layout is optimized for small devices too
  • an ordering 3rd party library to handle the logic for ordering products
  • The home home component was not necessary but added a "homepage" feel of a website which would display the products section from it
  • The logic for products is in the product component and the "server response" code is added there.
  • For the coloring, a tool to extract the exact HEX value of pixels was used
  • the exact height of the image and border was measured and replicated, along with the slight box shadow.
  • The arrows have a slight blue color to using css filtering
  • tests are included to demonstrate simple unit testing

TRIADChallenge

This project was generated with Angular CLI version 8.2.0.

Development server

Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.