Skip to content

Latest commit

 

History

History
77 lines (45 loc) · 3.07 KB

README.md

File metadata and controls

77 lines (45 loc) · 3.07 KB

Thermostat

Week 5 pairing assignment - Introduction to JavaScript


thermo

During this project, I was tasked with learning a new language in a short period of time in order and producing a product. I completed the first 4 user stories during pairing sessions and completed the remainder of the project alone.

Goals

  • I can learn new languages quickly
  • I wrote code that is easy to change
  • I know how my language works
  • I can build web apps
  • I can test-drive my code

How to use

Clone this project to your machine.

$ git clone https://github.com/MarcusKerr/thermostat.git

Once cloned, open index.html and you're ready to play!

index

Increase/decrease the temperature

Use the Up and Down arrows to increase or decrease the temperature. The temperature will be incremented or decremented by 1 per click.

up down

Power saving mode

When power saving mode is switched on, the maximum temperature is 25, when off the temperature can be increased to 32.

psm

Energy usage

The usage will update depending on the thermostat's current temperature. < 18 is low, > 25 is high usage.

usage

Reset

The Reset button will reset the temperature to 20.

reset

Current temperature

The current temperature is a result of a call to a weather API, showing the current temperature in London.

ct

Running tests

To run the entire test suite open SpecRunner.html.

tests

Specification

  • Thermostat starts at 20 degrees
  • You can increase the temperature with an up function
  • You can decrease the temperature with a down function
  • The minimum temperature is 10 degrees
  • If power saving mode is on, the maximum temperature is 25 degrees
  • If power saving mode is off, the maximum temperature is 32 degrees
  • Power saving mode is on by default
  • You can reset the temperature to 20 with a reset function
  • You can ask about the thermostat's current energy usage: < 18 is low-usage, < 25 is medium-usage, anything else is high-usage.
  • (In the challenges where we add an interface, low-usage will be indicated with green, medium-usage indicated with black, high-usage indicated with red.)