]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/node-gyp/test/test-find-accessible-sync.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / node_modules / node-gyp / test / test-find-accessible-sync.js
diff --git a/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/node-gyp/test/test-find-accessible-sync.js b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/node-gyp/test/test-find-accessible-sync.js
new file mode 100644 (file)
index 0000000..d336243
--- /dev/null
@@ -0,0 +1,86 @@
+'use strict'
+
+var test = require('tape')
+var path = require('path')
+var requireInject = require('require-inject')
+var configure = requireInject('../lib/configure', {
+  'graceful-fs': {
+    'closeSync': function (fd) { return undefined },
+    'openSync': function (path) {
+      if (readableFiles.some(function (f) { return f === path} )) {
+        return 0
+      } else {
+        var error = new Error('ENOENT - not found')
+        throw error
+      }
+    }
+  }
+})
+
+var dir = path.sep + 'testdir'
+var readableFile = 'readable_file'
+var anotherReadableFile = 'another_readable_file'
+var readableFileInDir = 'somedir' + path.sep + readableFile
+var readableFiles = [
+  path.resolve(dir, readableFile),
+  path.resolve(dir, anotherReadableFile),
+  path.resolve(dir, readableFileInDir)
+]
+
+test('find accessible - empty array', function (t) {
+  t.plan(1)
+
+  var candidates = []
+  var found = configure.test.findAccessibleSync('test', dir, candidates)
+  t.strictEqual(found, undefined)
+})
+
+test('find accessible - single item array, readable', function (t) {
+  t.plan(1)
+
+  var candidates = [ readableFile ]
+  var found = configure.test.findAccessibleSync('test', dir, candidates)
+  t.strictEqual(found, path.resolve(dir, readableFile))
+})
+
+test('find accessible - single item array, readable in subdir', function (t) {
+  t.plan(1)
+
+  var candidates = [ readableFileInDir ]
+  var found = configure.test.findAccessibleSync('test', dir, candidates)
+  t.strictEqual(found, path.resolve(dir, readableFileInDir))
+})
+
+test('find accessible - single item array, unreadable', function (t) {
+  t.plan(1)
+
+  var candidates = [ 'unreadable_file' ]
+  var found = configure.test.findAccessibleSync('test', dir, candidates)
+  t.strictEqual(found, undefined)
+})
+
+
+test('find accessible - multi item array, no matches', function (t) {
+  t.plan(1)
+
+  var candidates = [ 'non_existent_file', 'unreadable_file' ]
+  var found = configure.test.findAccessibleSync('test', dir, candidates)
+  t.strictEqual(found, undefined)
+})
+
+
+test('find accessible - multi item array, single match', function (t) {
+  t.plan(1)
+
+  var candidates = [ 'non_existent_file', readableFile ]
+  var found = configure.test.findAccessibleSync('test', dir, candidates)
+  t.strictEqual(found, path.resolve(dir, readableFile))
+})
+
+test('find accessible - multi item array, return first match', function (t) {
+  t.plan(1)
+
+  var candidates = [ 'non_existent_file', anotherReadableFile, readableFile ]
+  var found = configure.test.findAccessibleSync('test', dir, candidates)
+  t.strictEqual(found, path.resolve(dir, anotherReadableFile))
+})