Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/webtorrent/webtorrent.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/test/node
diff options
context:
space:
mode:
authorFeross Aboukhadijeh <feross@feross.org>2016-02-10 09:42:57 +0300
committerFeross Aboukhadijeh <feross@feross.org>2016-02-10 09:45:03 +0300
commitbb6ad183fbb78fa38f4dcc104b11683722693ce1 (patch)
treee7a9e912b0ccb0197581fb8e7d24a494c1ab69c0 /test/node
parent87c64856797ab49bab36b1aed6fc08b3d064d4a7 (diff)
test: move node-only test to test/node
Diffstat (limited to 'test/node')
-rw-r--r--test/node/seed-stream.js63
1 files changed, 63 insertions, 0 deletions
diff --git a/test/node/seed-stream.js b/test/node/seed-stream.js
new file mode 100644
index 0000000..6a6f14c
--- /dev/null
+++ b/test/node/seed-stream.js
@@ -0,0 +1,63 @@
+var test = require('tape')
+var Readable = require('readable-stream').Readable
+var concat = require('concat-stream')
+var Tracker = require('bittorrent-tracker/server')
+var WebTorrent = require('../../')
+
+test('client.seed: stream', function (t) {
+ t.plan(4)
+
+ var announce = []
+ var tracker = new Tracker()
+ var seeder, client
+ tracker.listen(function () {
+ var port = tracker.http.address().port
+ t.pass('tracker listening on ' + port)
+ announce.push('http://localhost:' + port + '/announce')
+
+ seeder = new WebTorrent({ dht: false })
+ client = new WebTorrent({ dht: false })
+
+ seeder.on('error', function (err) { t.fail(err) })
+ seeder.on('warning', function (err) { t.fail(err) })
+ client.on('error', function (err) { t.fail(err) })
+ client.on('warning', function (err) { t.fail(err) })
+
+ seed()
+ })
+ tracker.on('start', function () {
+ console.log('START', arguments)
+ })
+
+ t.once('end', function () {
+ seeder.destroy(function (err) { if (err) t.error(err, 'seeder destroyed') })
+ client.destroy(function (err) { if (err) t.error(err, 'client destroyed') })
+ tracker.close()
+ })
+
+ var stream = new Readable()
+ stream._read = function () {}
+ stream.push('HELLO WORLD\n')
+ stream.push(null)
+
+ function seed () {
+ var sopts = {
+ name: 'hello.txt',
+ pieceLength: 5,
+ announce: announce
+ }
+ var copts = { announce: announce }
+ seeder.seed([stream], sopts, function (torrent) {
+ console.log(torrent.magnetURI)
+ client.add(torrent.magnetURI, copts, function (dl) {
+ t.equal(dl.files.length, 1)
+ t.equal(dl.files[0].name, 'hello.txt')
+ t.equal(dl.files[0].length, 12)
+ dl.files[0].createReadStream()
+ .pipe(concat({ encoding: 'string' }, function (body) {
+ t.equal(body, 'HELLO WORLD\n', 'content')
+ }))
+ })
+ })
+ }
+})