allow ipv4 (for testing)

This commit is contained in:
Martin Geno 2018-01-18 15:25:52 +01:00 committed by Martin/Geno
parent 2503df8031
commit 23600524a5
No known key found for this signature in database
GPG Key ID: F0D39A37E925E941
2 changed files with 31 additions and 3 deletions

View File

@ -25,6 +25,10 @@ type Connection struct {
type Config map[string]interface{}
func (c Config) Type() string {
return c["type"].(string)
}
func (c Config) Address() string {
return c["address"].(string)
}
@ -37,7 +41,7 @@ func Connect(configuration map[string]interface{}) (database.Connection, error)
var config Config
config = configuration
conn, err := net.Dial("udp6", config.Address())
conn, err := net.Dial(config.Type(), config.Address())
if err != nil {
return nil, err
}
@ -54,7 +58,7 @@ func (conn *Connection) InsertNode(node *runtime.Node) {
var b bytes.Buffer
writer := bufio.NewWriter(&b)
flater, err := flate.NewWriter(writer, flate.NoCompression)
flater, err := flate.NewWriter(writer, flate.BestCompression)
if err != nil {
log.Printf("[database-yanic] could not create flater: %s", err)
return

View File

@ -3,6 +3,8 @@ package yanic
import (
"testing"
"github.com/FreifunkBremen/yanic/data"
"github.com/FreifunkBremen/yanic/runtime"
"github.com/stretchr/testify/assert"
)
@ -10,16 +12,38 @@ func TestStart(t *testing.T) {
assert := assert.New(t)
conn, err := Connect(map[string]interface{}{
"type": "udp6",
"address": "fasfs",
})
assert.Nil(conn)
assert.Error(err)
conn, err = Connect(map[string]interface{}{
"address": "[::1]:11001",
"type": "udp",
"address": "localhost:11001",
})
assert.NoError(err)
conn.InsertNode(&runtime.Node{
Nodeinfo: &data.NodeInfo{
NodeID: "73deadbeaf13",
Hostname: "inject-test",
Network: data.Network{
Mac: "73:de:ad:be:af:13",
Addresses: []string{"a", "b"},
},
},
Statistics: &data.Statistics{
NodeID: "73deadbeaf13",
Clients: data.Clients{
Total: 1000,
Wifi: 500,
Wifi24: 100,
Wifi5: 300,
},
},
})
conn.Close()
}