Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/crunch-io/crunch-kata
https://github.com/crunch-io/crunch-kata
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/crunch-io/crunch-kata
- Owner: Crunch-io
- Created: 2015-05-09T02:42:24.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2017-12-19T14:40:06.000Z (about 7 years ago)
- Last Synced: 2024-03-26T23:14:40.624Z (9 months ago)
- Size: 135 KB
- Stars: 0
- Watchers: 44
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Crunch Kata
Welcome to the Crunch Kata! The purpose of this exercise is evaluate your automated testing and problem solving skills.
## Problem description
You're working on an application that enables its users to explore survey data. These surveys contain many questions, or *variables*, which may be grouped and organized in a tree-like structure to make them easier to find. Your job is to develop a web component that displays these variables following the specified order structure. (A different team is implementing the interface for arranging the variables into that order--that's not your responsibility.)
The backend team has provided two test fixtures that you can use to start developing the feature. The first one, `variables.json`, is the catalog of variables found in a dataset. The second, `order.json`, represents the order in which these variables should be displayed. Each entry in `order.json` maps to an item in `variables.json`.
## Instructions
The deliverable should contain the following:
1. A component that displays the variable catalog following its hierarchical order. It should be easy to tell the group to which a variable belongs, i.e.
![HVL](hvl.png)
2. A service that accepts a variable's name and returns the variable's position in the order.
3. A service that accepts a position in the order and returns a variable.
4. An HTTP layer that requests the two fixtures.
5. Automated tests that confirm that your code works.## About the tools
Use whatever library, framework, and/or build system that you feel comfortable with.
## Deliverable
Publish your work in a GitHub repository.