Safe Haskell | None |
---|
Main
Description
This module presents a minimalistic example of the usage of HAAP, consisting on testing an HSpec
specification, running several code analysis plugins, providing global feedback with the ranking
and
tournament
plugins, visualization of solutions with CodeWorld
, all connected by a webpage
generated by Hakyll
.
- example :: Project
- emptyLi1DB :: Example_DB
- data Example_DB = Example_DB {
- exTourneyDB :: HaapTourneyDB ExPlayer
- lnsTourney :: DBLens (BinaryDB Example_DB) (HaapTourneyDB ExPlayer)
- main :: IO ((), HaapLog)
- exSpec :: HaapSpec
- exRankSpec :: Int -> HaapSpec
- exRankScore :: HaapTestRes -> FloatScore
- exRank :: HaapStack t m => HaapSpecRank t m Int FloatScore
- data ExPlayer = ExPlayer (String, Bool)
- exTourney :: MonadIO m => HaapTourney t m (BinaryDB Example_DB) ExPlayer Link
- codeworldDrawArgs :: CodeWorldArgs
- codeworldGameArgs :: CodeWorldArgs
Documentation
data Example_DB #
Constructors
Example_DB | |
Fields
|
Instances
Generic Example_DB # | |
Binary Example_DB # | |
type Rep Example_DB # | |
lnsTourney :: DBLens (BinaryDB Example_DB) (HaapTourneyDB ExPlayer) #
An HAAP script that runs tests with the HSpec
plugin, runs several code analysis plugins, generates
feedback with the ranking
and tournament
plugins, provides visualization with the CodeWorld
plugin
and uses the Hakyll
plugin to generate a webpage that connects all artifacts.
exRankSpec :: Int -> HaapSpec #
A specification to be used in a ranking, will be run for each group.
exRankScore :: HaapTestRes -> FloatScore #
Calculates a quantitative score from the results of the tests.
exRank :: HaapStack t m => HaapSpecRank t m Int FloatScore #
Builds a global ranking according to the result of exRankSpec
for each group, normalized according to exRankScore
.
Constructors
ExPlayer (String, Bool) |
exTourney :: MonadIO m => HaapTourney t m (BinaryDB Example_DB) ExPlayer Link #
codeworldDrawArgs :: CodeWorldArgs #
Arguments for the CodeWorld
plugin to draw maps.
codeworldGameArgs :: CodeWorldArgs #
Arguments for the CodeWorld
plugin to play a game.