From 7d43360b722a44b159b64d2b7cfb7aa2b753a687 Mon Sep 17 00:00:00 2001 From: Peter Braden Date: Tue, 27 Nov 2012 16:36:18 -0800 Subject: [PATCH] fix unit test --- examples/coin1.jpg | Bin 0 -> 9672 bytes examples/coin2.jpg | Bin 0 -> 13507 bytes examples/motion-track.js | 2 +- smoke/smoke.sh | 6 ++++-- test/unit.js | 28 ++++++++++++++++++++-------- 5 files changed, 25 insertions(+), 11 deletions(-) create mode 100644 examples/coin1.jpg create mode 100644 examples/coin2.jpg diff --git a/examples/coin1.jpg b/examples/coin1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c0c411ca4f469a4ed606c051751e39ac97ddb974 GIT binary patch literal 9672 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 D5p&xd literal 0 HcmV?d00001 diff --git a/examples/motion-track.js b/examples/motion-track.js index 89b4c1c..5e6c9b9 100644 --- a/examples/motion-track.js +++ b/examples/motion-track.js @@ -13,7 +13,7 @@ vid.read(function(mat){ console.log(">>", x, ":" , rec) if (x % 10 == 0){ m2.rectangle([rec[0], rec[1]], [rec[2], rec[3]]) - m2.save('./out' + x + '.jpg') + m2.save('./out-motiontrack-' + x + '.jpg') } if (x<100) iter(); diff --git a/smoke/smoke.sh b/smoke/smoke.sh index 8ed033b..5ac35f8 100755 --- a/smoke/smoke.sh +++ b/smoke/smoke.sh @@ -1,6 +1,8 @@ #!/bin/bash node-gyp build && echo '-- Compiled OK -- -' && node examples/motion-track.js && 0 && node smoke/smoketest.js && echo '-- Smoke Done, running tests -- +' && node smoke/smoketest.js && echo '-- Smoke Done, running tests -- -' && npm test +' && npm test && echo '-- Tests Run, runnning examples -- +(building example data) +' && ./examples/make-example-files.sh && node examples/motion-track.js diff --git a/test/unit.js b/test/unit.js index 614ba9c..ea85f5a 100755 --- a/test/unit.js +++ b/test/unit.js @@ -9,6 +9,16 @@ assertDeepSimilar = function(res, exp){ assert.deepEqual(res, exp) } +assertWithinRange = function(res, exp, range){ + assert.ok((res - exp) < range || (res - exp) > -range, "Not within range:" + res + " (" + exp + "+- " + range + ")") +} + +assertWithinRanges = function(res, exp, range){ + for (var i =0; i