fix #264 (bad movement masks), improve tests

Fixed silly movement mask bug.

This breaks the "legend of zokoban" test -- I made test failures now give *some* information (a state diff), but its usefulness & readability is limited for large states. Not sure precisely what's going on, it's likely that some part of Zokoban was experiencing the same bug. Hopefully it doesn't _rely_ on it.
ah ok, I understand. thanks :)

On Sun, Nov 30, 2014 at 6:30 PM, Ryan Hitchman <notifications@github.com>
wrote:

> In js/debug.js:
>
> >  		}
> >  		out += '\n';
> >  	}
> >  	return out;
> >  }
> >
> > +function compressLevelString(s) {
>
> No, this is just for the level state. Now, when you get a test failure,
> you can see the difference between where objects are expected to be and
> where they actually are.
>
> The compression / decompression is split out so that we can keep them
> compressed in testdata.js like this: "background moveguide
> player:0,background moveguide:1,1,\n1,1,1,\n1,1,1,\n"
>
> But when you a test fails, you can print it like this: "background
> moveguide player,background moveguide,background moveguide,\nbackground
> moveguide,background moveguide,background moveguide,\nbackground
> moveguide,background moveguide,background moveguide,\n"
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/increpare/PuzzleScript/pull/267/files#r21061821>.
>