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

server.js « test - github.com/webtorrent/webtorrent.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: f00c22bd061608276b7529aee08504756ae56d5f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
var concat = require('concat-stream')
var fs = require('fs')
var http = require('http')
var portfinder = require('portfinder')
var test = require('tape')
var WebTorrent = require('../')

var leavesFile = __dirname + '/content/Leaves of Grass by Walt Whitman.epub'
var leavesTorrent = fs.readFileSync(__dirname + '/torrents/leaves.torrent')

test('start http server programmatically', function (t) {
  var client = new WebTorrent()
  var torrent = client.add(leavesTorrent, { dht: false, tracker: false }, function (torrent) {
    portfinder.getPort(function (err, port) {
      if (err) throw err

      // create HTTP server for this torrent
      var server = torrent.createServer()
      server.listen(port)

      http.get('http://localhost:' + port + '/0', function (res) {
        res.pipe(concat(function (data) {

          // Verify data for first (and only file)
          t.deepEqual(data, fs.readFileSync(leavesFile))

          server.close()
          client.destroy()
          t.end()
        }))
      })
    })
  })
  torrent.on('ready', function () {
    torrent.storage.load(fs.createReadStream(leavesFile))
  })
})