tricycle/elm-actor-framework-sandbox/3.0.0

Renamed to bellroy/elm-actor-framework-sandbox. It is published under that name, and new versions come out there.

Versions published as tricycle/elm-actor-framework-sandbox still install under that name. 3 versions of 4 come from the new location (see their notes). 1 version could not be recovered and cannot be installed.

Rerouted (cache, verified). The original is gone. This copy comes from a Lamdera package cache made before it went. The Lamdera package server serves a copy recovered from a Lamdera package cache from 2021-02-13.

What we checked: Rebuilt from the unpacked sources in a Lamdera package cache (5 copies agree), which Elm only writes after the published SHA-1 checked out; elm.json is byte-identical to package.elm-lang.org's; the exposed modules match docs.json; the zip is our own, so its SHA-1 is not the published one.

The Lamdera compiler uses this copy and prints a one-line notice saying so. elm itself fails to download this version.

Details · package.elm-lang.org's zip: https://github.com/tricycle/elm-actor-framework-sandbox/zipball/3.0.0/

Framework.Sandbox

type alias SandboxComponent appFlags componentModel componentMsgIn componentMsgOut output =
SandboxComponent
appFlags
componentModel
componentMsgIn
componentMsgOut
output
appFlags
-> Component
appFlags
componentModel
componentMsgIn
componentMsgOut
output
componentMsgIn
-> SandboxComponent
appFlags
componentModel
componentMsgIn
componentMsgOut
output

Turn your Framework.Actor.Component into a SandboxComponent.

You'll have to supply it with a default (mocked) appFlags value so that we can render an initial output (See Framework.Sandbox.Browser for more info.)

fromComponent "Some Flags" component

Tests

TestCase
appFlags
componentModel
componentMsgIn
componentMsgOut
output
-> SandboxComponent
appFlags
componentModel
componentMsgIn
componentMsgOut
output
-> SandboxComponent
appFlags
componentModel
componentMsgIn
componentMsgOut
output

Add A TestCase to your SandboxComponent

The title of a TestCase has to be unique for your Sandbox.

fromComponent () component
    |> addTestCase
        (TestCase.make
            { title = "Increment"
            , description = "Increment the counters value by one."
            , test = \_ a b -> Expect (b - a) 1
            }
            |> TestCase.setActions [ Increment ]
        )
TestCase
appFlags
componentModel
componentMsgIn
componentMsgOut
output
-> SandboxComponent
appFlags
componentModel
componentMsgIn
componentMsgOut
output
-> SandboxComponent
appFlags
componentModel
componentMsgIn
componentMsgOut
output

Updates a TestCase based on its title (This is an alias of addTestCase (!))

String
-> SandboxComponent
appFlags
componentModel
componentMsgIn
componentMsgOut
output
-> Test

Give your tests a description and turn them into Elm tests!

fromComponent () component
    |> addTestCase
        (TestCase.make
            { title = "Increment"
            , description = "Increment the counters value by one."
            , test = \_ a b -> Expect (b - a) 1
            }
            |> TestCase.setActions [ Increment ]
        )
    |> toTest "My Counter Component"