diff --git a/node/node-tests.ts b/node/node-tests.ts index c36f0da1e2..e9ef58dbbd 100644 --- a/node/node-tests.ts +++ b/node/node-tests.ts @@ -9,6 +9,7 @@ import util = require("util"); import crypto = require("crypto"); import http = require("http"); import net = require("net"); +import dgram = require("dgram"); assert(1 + 1 - 2 === 0, "The universe isn't how it should."); @@ -109,4 +110,16 @@ module http_tests { var code = 100; var codeMessage = http.STATUS_CODES['400']; var codeMessage = http.STATUS_CODES[400]; -} \ No newline at end of file +} + +//////////////////////////////////////////////////// +/// Dgram tests : http://nodejs.org/api/dgram.html +//////////////////////////////////////////////////// + +var ds: dgram.Socket = dgram.createSocket("udp4", (msg: Buffer, rinfo: dgram.RemoteInfo): void => { +}); +var ai: dgram.AddressInfo = ds.address(); +ds.send(new Buffer("hello"), 0, 5, 5000, "127.0.0.1", (error: Error, bytes: number): void => { +}); + + diff --git a/node/node.d.ts b/node/node.d.ts index af61b3df84..d7c06203b9 100644 --- a/node/node.d.ts +++ b/node/node.d.ts @@ -760,13 +760,25 @@ declare module "net" { declare module "dgram" { import events = require("events"); - export function createSocket(type: string, callback?: Function): Socket; + interface RemoteInfo { + address: string; + port: number; + size: number; + } + + interface AddressInfo { + address: string; + family: string; + port: number; + } + + export function createSocket(type: string, callback?: (msg: Buffer, rinfo: RemoteInfo) => void): Socket; interface Socket extends events.EventEmitter { send(buf: Buffer, offset: number, length: number, port: number, address: string, callback?: (error: Error, bytes: number) => void): void; bind(port: number, address?: string, callback?: () => void): void; close(): void; - address: { address: string; family: string; port: number; }; + address(): AddressInfo; setBroadcast(flag: boolean): void; setMulticastTTL(ttl: number): void; setMulticastLoopback(flag: boolean): void;