GithubHelp home page GithubHelp logo

spt's Introduction

SPT

The Spoofax Testing Language (SPT) allows you to test your DSLs. See http://www.metaborg.org/spt for documentation on SPT.

Note that on this branch we are doing an overhaul of SPT, so many features won't work yet.

SPT language specification

SPT is a Spoofax language just like any other. At the moment it's still only a very limited version of what it should be and it doesn't have an Eclipse project yet. The language specification can be found in org.metaborg.meta.lang.spt.

SPT Core

SPT Core is our attempt at extracting the core functionality of SPT into a Java API. The project is located at org.metaborg.spt.core.

The idea is that you can extract tests from a testsuite into an ITestCase. This is done by the ITestExtractor. These test cases can then be run using the ITestRunner. Both the extractor and the runner can be registered and obtained using Google Guice. See the Module class in org.metaborg.spt.cmd to see how that is done. See the Runner class in org.metaborg.spt.cmd to see how they are used.

To keep the test expectations of SPT modular, they too can be injected using Guice. See the ParseExpectationTest class in org.metaborg.spt.cmd to see an example for the parse succeeds expectation.

SPT command line

The command line interface can currently run test suites. It won't print any results yet, but they can be checked using the logs. See Main and Arguments in org.metaborg.spt.cmd to learn about the usage of this tool.

spt's People

Contributors

gohla avatar lennartcl avatar volkerl avatar virtlink avatar rbvermaa avatar maartje avatar vvergu avatar hendrikvanantwerpen avatar tvo avatar jasperdenkers avatar udesou avatar apanatshka avatar oskar-van-rest avatar seba-- avatar karltk avatar martijndwars avatar

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.