Giter Site home page Giter Site logo

json-logic-haskell's Introduction

JsonLogic

test lint

JsonLogic library for Haskell

Packages

This repository holds the packages for:

  • jsonlogic
  • jsonlogic-aeson

Example

See the example project for extra context. Or the example from the core project.

Run tests

Run all package tests:

cabal test all

Build

build all packages:

cabal build all

Documentation

To build all documentation run:

cabal haddock all

json-logic-haskell's People

Contributors

gerardvschie avatar jteeuwissen avatar musicismyalibi avatar

Watchers

 avatar

json-logic-haskell's Issues

Define generators for our JSON type

For automated testing it would be useful to have generators

Probably best to generate haskell code equivalent next to it so we know what result to expect
F.e generate these two in the same generator. We take the Haskell as expected and json as result.
JSON: JsonObject $ Map.singleton "+" (JsonArray [JsonNumber 1, JsonNumber 2])
Haskell: ((+) 1 2)

Also keep in mind that some need numeric json as parameters whilst others need booleans.
So generatorNumericJson
generatorBoolJson
generatorStringJson

are some of the generators to expose for testing purposes

Pretty print JSON

Pretty print the JSON so it is a readable format.
Maybe use the aeson for this since it is already implemented there

Use generators in tests

Generators are written in #23
Use them in randomized tests, the expected result is also given in the generator

Automated document generation

Use haddock to generate documentation in the pipeline.
Could be pushed to several endpoints including Wiki.
Determine what make the most sense and is supported.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.