Giter Club home page Giter Club logo

elements-nix's Introduction

elements-nix

Nix expression for building elements in various configurations.

This document assumes you are familiar with elements and its testing infrastructure.

Basic Usage

Build elements without running tests.

[~/elements-nix]$ nix-build

Running Tests

Build elements and run the unit tests.

[~/elements-nix]$ nix-build --arg doCheck true

Build elements and run both the unit tests and the functional tests.

[~/elements-nix]$ nix-build --arg doFunctionalTests true

Coverage

Build elements with coverage and run tests (both unit and functional) to produce the coverage analysis

[~/elements-nix]$ nix-build --arg withCoverage true

Build the fuzzer binary for elements. This binary can be used to create qa-assets/fuzz_seed_corpus similar to what is found in qa-assets.

[~/elements-nix]$ nix-build --arg withFuzz true

Build the fuzzer binary for elements and use the qa-assets to produce coverage analys

[~/elements-nix]$ nix-build --arg withFuzz true --arg withCoverage

Advanced Usage

Suppose elements-nix is checked out into ~/elements-nix and elements is checked out into ~/elements.

If you have made some local changes to elements or have a specific branch checked out that you want to build.

โš ๏ธ Untracked files are ignored. Be sure to stage any new files you want to include in the build.

๐Ÿ’ก The gitDir value is passed to builtins.fetchGit and can be an attribute set.

[~/elements]$ nix-build ~/elements-nix --arg gitDir ./.

If you want to develop elements in its directory.

[~/elements]$ nix-shell ~/elements-nix
[nix-shell:~/elements>]$ autoreconfPhase
[nix-shell:~/elements>]$ configurePhase
[nix-shell:~/elements>]$ buildPhase
[nix-shell:~/elements>]$ checkPhase

If you want to build your local elements version and test it with your local qa-assets version.

[~/elements]$ nix-build ~/elements-nix --arg gitDir ./. --arg qaAssetsDir ~/qa-assets --arg doFunctionalTests true

If you want to build your local elements version and test it with your local unit-tests data.

[~/elements]$ nix-build ~/elements-nix --arg gitDir ./. --arg unitTestDataDir ~/asset-gen --arg doFunctionalTests true

elements-nix's People

Contributors

roconnor-blockstream avatar

Stargazers

Christian Lewe avatar Byron Hambly avatar

Watchers

 avatar

Forkers

delta1

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.