1.0.15 • Published 8 years ago

affix v1.0.15

Weekly downloads
5
License
MIT
Repository
github
Last release
8 years ago

Affix - Binding made more fluent

Intro

A simple utility module to make binding more fluent, with some helpers for testing.

Why?

(1) It can be easy to miss a bind call:

function () {
    .... lots of code ....
}.bind(context);

(2) Given the typical fluent testing framework:

it(<descriptionStr>, <workFn>);

It can be useful to bind your workFn functions to your fixture data. Affix lets you use one fixture object using the descriptionStr as a cursor

Thus, without doing anything drastic to the test structure, you can wire fixtures at test definition time. It was originally used for keyhole refactoring of some large test files, thus it is super-simple and non-invasive.

Usage

var fixtures = {
    'should be the answer to everything': {
        inp: 40 + 2,
        out: 42
    }
};
var should =   require("should");
var affix  =   require("affix")(fixtures);

describe( 'The answer', function () {
    it( affix.set( 'should be the answer to everything'),
        affix.bind( function () {
            var inp = this.fixture.inp;
            var out = this.fixture.out;
            inp.should.be.exactly( out );
        })
    );
});
1.0.15

8 years ago

1.0.14

9 years ago

1.0.11

9 years ago

1.0.10

9 years ago

1.0.9

9 years ago

1.0.8

9 years ago

1.0.7

9 years ago

1.0.6

9 years ago

1.0.5

9 years ago

1.0.4

9 years ago

1.0.3

9 years ago

1.0.2

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago