Giter Site home page Giter Site logo

pavanasamr / yaml-test-suite Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yaml/yaml-test-suite

0.0 1.0 0.0 4.02 MB

Comprehensive, language independent Test Suite for YAML

License: MIT License

Makefile 15.28% Perl 13.52% Shell 12.10% CSS 17.45% HTML 25.94% CoffeeScript 14.93% Dockerfile 0.79%

yaml-test-suite's Introduction

Name

YAML Test Suite - Comprehensive Test Suite for YAML

Overview

This test suite is composed of (what will eventually be) 100s of test directories that each represent a specific situation for a YAML processor. Each test directory contains a number of related files, that test suites can be made to use in interesting ways. For example:

  • Metadata about the test

    • Name (short phrase)

    • Tags

    • Description

  • Input YAML

  • Canonical Output YAML

  • Matching JSON

  • Token stream notation

  • Event stream notation

  • Error data

  • etc

Not every test dir will have the same elements. Since the tests are just data, it is up to the framework using the tests to decide which tests to use and how to use them.

To get a quick overview of the tests you can have a look at the YAML Test Matrix - https://github.com/perlpunk/yaml-test-matrix.

Usage

The tests are currently written in TestML under the test directory on the master branch.

If your language has a TestML processor, you can use these files directly. It's recommended to use the latest release vYYYY-MM-DD instead of master.

Otherwise you can use the raw data files. For that, use the latest release under https://github.com/yaml/yaml-test-suite/releases:

git clone https://github.com/yaml/yaml-test-suite -b data-YYYY-MM-DD

The releases are made from the data branch, which is made from the data in the TestML in the master branch. You shouldn't use the data branch directly as the branch is squashed and force pushed from time to time.

Updating Things

When test files change you need to update various artifacts. To do this, run the following commands:

make update         # Updates tags and name artifacts
make data-update    # Updates the data branch (under ./data/)

You will need Bash, NodeJS and Perl for these things.

Libaries using this test suite

If your library is using the test suite, drop us a line and we can add it here. It would also be nice if you could add a link back to this test suite.

yaml-test-suite's People

Contributors

perlpunk avatar ingydotnet avatar flyx avatar eemeli avatar am11 avatar rogpeppe avatar asomov avatar kant avatar hvr avatar pantoniou avatar

Watchers

James Cloos 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.