1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2024-11-12 23:36:43 -05:00
v2fly/proxy/blackhole/blackhole_test.go

41 lines
867 B
Go
Raw Normal View History

2018-10-24 13:16:07 -04:00
package blackhole_test
import (
"context"
"testing"
"v2ray.com/core/common"
"v2ray.com/core/common/buf"
"v2ray.com/core/common/serial"
"v2ray.com/core/proxy/blackhole"
2018-11-03 07:36:29 -04:00
"v2ray.com/core/transport"
2018-10-24 13:16:07 -04:00
"v2ray.com/core/transport/pipe"
)
func TestBlackHoleHTTPResponse(t *testing.T) {
2018-10-24 13:16:07 -04:00
handler, err := blackhole.New(context.Background(), &blackhole.Config{
Response: serial.ToTypedMessage(&blackhole.HTTPResponse{}),
})
common.Must(err)
reader, writer := pipe.New(pipe.WithoutSizeLimit())
var readerError = make(chan error)
2018-10-24 13:16:07 -04:00
var mb buf.MultiBuffer
go func() {
b, e := reader.ReadMultiBuffer()
mb = b
readerError <- e
2018-10-24 13:16:07 -04:00
}()
2018-11-03 07:36:29 -04:00
link := transport.Link{
2018-10-24 13:16:07 -04:00
Reader: reader,
Writer: writer,
}
common.Must(handler.Process(context.Background(), &link, nil))
common.Must(<-readerError)
2018-10-24 13:16:07 -04:00
if mb.IsEmpty() {
t.Error("expect http response, but nothing")
}
}