| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- package ovpm
- import (
- "io"
- "reflect"
- "testing"
- "time"
- )
- func TestUser_ConnectionStatus(t *testing.T) {
- // Init:
- db := CreateDB("sqlite3", ":memory:")
- defer db.Cease()
- svr := TheServer()
- svr.Init("localhost", "", UDPProto, "", "", "", "", false)
- origOpenFunc := svr.openFunc
- defer func() { svr.openFunc = origOpenFunc }()
- svr.openFunc = func(path string) (io.Reader, error) {
- return nil, nil
- }
- usr1, err := CreateNewUser("usr1", "1234", true, 0, false, "description")
- if err != nil {
- t.Fatalf("user creation failed: %v", err)
- }
- now := time.Now()
- svr.parseStatusLogFunc = func(f io.Reader) ([]clEntry, []rtEntry) {
- clt := []clEntry{
- clEntry{
- CommonName: usr1.GetUsername(),
- RealAddress: "1.1.1.1",
- ConnectedSince: now,
- BytesReceived: 1,
- BytesSent: 5,
- },
- }
- rtt := []rtEntry{
- rtEntry{
- CommonName: usr1.GetUsername(),
- RealAddress: "1.1.1.1",
- LastRef: now,
- VirtualAddress: "10.10.10.1",
- },
- }
- return clt, rtt
- }
- // Test:
- type fields struct {
- dbUserModel dbUserModel
- isConnected bool
- connectedSince time.Time
- bytesReceived uint64
- bytesSent uint64
- }
- tests := []struct {
- name string
- fields fields
- wantIsConnected bool
- wantConnectedSince time.Time
- wantBytesSent uint64
- wantBytesReceived uint64
- }{
- {"default", fields{dbUserModel: dbUserModel{Username: "usr1"}}, true, now, 5, 1},
- }
- for _, tt := range tests {
- t.Run(tt.name, func(t *testing.T) {
- u := &User{
- dbUserModel: tt.fields.dbUserModel,
- isConnected: tt.fields.isConnected,
- connectedSince: tt.fields.connectedSince,
- bytesReceived: tt.fields.bytesReceived,
- bytesSent: tt.fields.bytesSent,
- }
- gotIsConnected, gotConnectedSince, gotBytesSent, gotBytesReceived := u.ConnectionStatus()
- if gotIsConnected != tt.wantIsConnected {
- t.Errorf("User.ConnectionStatus() gotIsConnected = %v, want %v", gotIsConnected, tt.wantIsConnected)
- }
- if !reflect.DeepEqual(gotConnectedSince, tt.wantConnectedSince) {
- t.Errorf("User.ConnectionStatus() gotConnectedSince = %v, want %v", gotConnectedSince, tt.wantConnectedSince)
- }
- if gotBytesSent != tt.wantBytesSent {
- t.Errorf("User.ConnectionStatus() gotBytesSent = %v, want %v", gotBytesSent, tt.wantBytesSent)
- }
- if gotBytesReceived != tt.wantBytesReceived {
- t.Errorf("User.ConnectionStatus() gotBytesReceived = %v, want %v", gotBytesReceived, tt.wantBytesReceived)
- }
- })
- }
- }
- func init() {
- Testing = true
- }
|