Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Initial commit

  • Loading branch information...
commit 2dc3c127e359ef03ed0c3e15bbd1ea8aba4bb377 0 parents
@ajlopez authored
1  .gitignore
@@ -0,0 +1 @@
+node_modules
1  .npmignore
@@ -0,0 +1 @@
+/samples
23 LICENSE
@@ -0,0 +1,23 @@
+
+Copyright (C) 2013, Angel J Lopez
+http://www.ajlopez.com
+http://ajlopez.wordpress.com
+http://twitter.com/ajlopez
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
48 README.md
@@ -0,0 +1,48 @@
+# SimplChess
+
+Chess game implementation with evaluators.
+
+## Installation
+
+Via npm on Node:
+
+```
+npm install simplechess
+```
+
+
+## Usage
+
+Reference in your program:
+
+```js
+var simplechess = require('simplechess');
+```
+
+TBD
+## Development
+
+```
+git clone git://github.com/ajlopez/SimpleChess.git
+cd SimpleChess
+npm install
+npm test
+```
+
+## Samples
+
+TBD
+
+## To do
+
+- Samples
+
+## Contribution
+
+Feel free to [file issues](https://github.com/ajlopez/SimpleChess) and submit
+[pull requests](https://github.com/ajlopez/SimpleChess/pulls) — contributions are
+welcome.
+
+If you submit a pull request, please be sure to add or update corresponding
+test cases, and ensure that `npm test` continues to pass.
+
16 package.json
@@ -0,0 +1,16 @@
+{ "name": "simplechess"
+, "description": "Chess game and evaluation"
+, "keywords": [ "game", "chess", "javascript" ]
+, "version": "0.0.1alpha"
+, "author": "Angel 'Java' Lopez <webmaster@ajlopez.com> (http://www.ajlopez.com)"
+, "repository": { "type": "git", "url": "git://github.com/ajlopez/SimpleChess.git" }
+, "main": "./lib/simplechess.js"
+, "engines": { "node": ">= 0.6.0 && < 0.9.0" }
+, "scripts": {
+ "test": "node ./test.js"
+ }
+, "dependencies": {
+ }
+, "devDependencies": {
+ }
+}
54 test.js
@@ -0,0 +1,54 @@
+#!/usr/bin/env node
+
+// Based on https://github.com/laverdet/node-fibers/blob/master/test.js
+
+var fs = require('fs');
+var spawn = require('child_process').spawn;
+var path = require('path');
+
+function runTest(test, cb) {
+ var proc = spawn(process.execPath, [path.join('test', test)], {env: {NODE_PATH: __dirname}});
+ proc.stdout.setEncoding('utf8');
+ proc.stderr.setEncoding('utf8');
+
+ var stdout = '', stderr = '';
+ proc.stdout.on('data', function(data) {
+ stdout += data;
+ });
+ proc.stderr.on('data', function(data) {
+ stderr += data;
+ });
+ proc.stdin.end();
+
+ proc.on('exit', function(code) {
+ if ((stdout !== 'pass\n' && stdout !== '') || stderr !== '') {
+ return cb(new Error(
+ 'Test `'+ test+ '` failed.\n'+
+ 'code: '+ code+ '\n'+
+ 'stderr: '+ stderr+ '\n'+
+ 'stdout: '+ stdout));
+ }
+ console.log(test+ ': '+ 'pass');
+ cb();
+ });
+}
+
+var cb = function(err) {
+ if (err) {
+ console.error(String(err));
+ process.exit(1);
+ }
+};
+fs.readdirSync('./test').reverse().forEach(function(file) {
+ var stats = fs.lstatSync(path.join('./test',file));
+ if (!stats.isFile())
+ return;
+
+ cb = new function(cb, file) {
+ return function(err) {
+ if (err) return cb(err);
+ runTest(file, cb);
+ };
+ }(cb, file);
+});
+cb();
Please sign in to comment.
Something went wrong with that request. Please try again.