Git Product home page Git Product logo

fable-mocha's Introduction

Fable.Import.MochaJS

Fable bindings for Mocha.js.

Nuget Packages

Stable Prerelease
NuGet Badge NuGet Badge

Getting Started

Build Configuration

See https://harry.vangberg.name/unit-testing-fable-with-mocha

Example

Test Suite

module Test.Example

open Fable.Import.MochaJS

/// Assert that the expected and actual values are equal
let assertEqual expected actual: unit =
    Assert.AreEqual(actual, expected)

/// Assert that the expected and actual values are not equal
let assertNotEqual expected actual: unit =
    Assert.NotEqual(actual, expected)

describe "test suite" <| fun _ ->
    it "should do something poorly" <| fun _ ->
        assertEqual 1 2
    it "should do something well" <| fun _ ->
        assertEqual 2 2
    )
    it "should do something else well" <| fun _ ->
        assertNotEqual 23 65
|> ignore

Test Runner

You will also need to import side effects from every test suite in a main test runner, otherwise test suites won't be detected by Mocha.

module Test.Main

open Fable.Core.JsInterop

importSideEffects "./TestSuiteA.fs"
importSideEffects "./TestSuiteB.fs"
// etc

Development

Building

Make sure the following requirements are installed in your system:

Then you just need to type ./build.cmd or ./build.sh

Release

In order to push the package to nuget.org you need to add your API keys to NUGET_KEY environmental variable. You can create a key here.

#### 0.2.0 - 30.04.2017
* FEATURE: Does cool stuff!
* BUGFIX: Fixes that silly oversight
  • You can then use the Release target. This will:
    • make a commit bumping the version: Bump version to 0.2.0
    • publish the package to nuget
    • push a git tag

./build.sh Release

fable-mocha's People

Contributors

grantneale avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

grantneale

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.