Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions ocpp1.6/v16.go
Original file line number Diff line number Diff line change
Expand Up @@ -158,8 +158,8 @@ type ChargePoint interface {
// })
//
// For more advanced options, or if a customer networking/occpj layer is required,
// please refer to ocppj.Client and ws.WsClient.
func NewChargePoint(id string, endpoint *ocppj.Client, client ws.WsClient) ChargePoint {
// please refer to ocppj.Client and ws.Client.
func NewChargePoint(id string, endpoint *ocppj.Client, client ws.Client) ChargePoint {
if client == nil {
client = ws.NewClient()
}
Expand Down Expand Up @@ -339,7 +339,7 @@ type CentralSystem interface {
// If you need a TLS server, you may use the following:
//
// cs := NewServer(nil, ws.NewTLSServer("certificatePath", "privateKeyPath"))
func NewCentralSystem(endpoint *ocppj.Server, server ws.WsServer) CentralSystem {
func NewCentralSystem(endpoint *ocppj.Server, server ws.Server) CentralSystem {
if server == nil {
server = ws.NewServer()
}
Expand Down
50 changes: 9 additions & 41 deletions ocpp1.6_test/ocpp16_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import (
"crypto/tls"
"fmt"
"net"
"net/http"
"reflect"
"testing"
"time"
Expand Down Expand Up @@ -50,14 +49,18 @@ func (websocket MockWebSocket) TLSConnectionState() *tls.ConnectionState {
return nil
}

func (websocket MockWebSocket) IsConnected() bool {
return true
}

func NewMockWebSocket(id string) MockWebSocket {
return MockWebSocket{id: id}
}

// ---------------------- MOCK WEBSOCKET SERVER ----------------------
type MockWebsocketServer struct {
mock.Mock
ws.WsServer
ws.Server
MessageHandler func(ws ws.Channel, data []byte) error
NewClientHandler func(ws ws.Channel)
CheckClientHandler ws.CheckClientHandler
Expand All @@ -77,11 +80,11 @@ func (websocketServer *MockWebsocketServer) Write(webSocketId string, data []byt
return args.Error(0)
}

func (websocketServer *MockWebsocketServer) SetMessageHandler(handler func(ws ws.Channel, data []byte) error) {
func (websocketServer *MockWebsocketServer) SetMessageHandler(handler ws.MessageHandler) {
websocketServer.MessageHandler = handler
}

func (websocketServer *MockWebsocketServer) SetNewClientHandler(handler func(ws ws.Channel)) {
func (websocketServer *MockWebsocketServer) SetNewClientHandler(handler ws.ConnectedHandler) {
websocketServer.NewClientHandler = handler
}

Expand All @@ -96,14 +99,14 @@ func (websocketServer *MockWebsocketServer) NewClient(websocketId string, client
websocketServer.MethodCalled("NewClient", websocketId, client)
}

func (websocketServer *MockWebsocketServer) SetCheckClientHandler(handler func(id string, r *http.Request) bool) {
func (websocketServer *MockWebsocketServer) SetCheckClientHandler(handler ws.CheckClientHandler) {
websocketServer.CheckClientHandler = handler
}

// ---------------------- MOCK WEBSOCKET CLIENT ----------------------
type MockWebsocketClient struct {
mock.Mock
ws.WsClient
ws.Client
MessageHandler func(data []byte) error
ReconnectedHandler func()
DisconnectedHandler func(err error)
Expand Down Expand Up @@ -445,41 +448,6 @@ func (smartChargingListener *MockChargePointSmartChargingListener) OnGetComposit
}

// ---------------------- COMMON UTILITY METHODS ----------------------
func NewWebsocketServer(t *testing.T, onMessage func(data []byte) ([]byte, error)) *ws.Server {
wsServer := ws.Server{}
wsServer.SetMessageHandler(func(ws ws.Channel, data []byte) error {
assert.NotNil(t, ws)
assert.NotNil(t, data)
if onMessage != nil {
response, err := onMessage(data)
assert.Nil(t, err)
if response != nil {
err = wsServer.Write(ws.ID(), data)
assert.Nil(t, err)
}
}
return nil
})
return &wsServer
}

func NewWebsocketClient(t *testing.T, onMessage func(data []byte) ([]byte, error)) *ws.Client {
wsClient := ws.Client{}
wsClient.SetMessageHandler(func(data []byte) error {
assert.NotNil(t, data)
if onMessage != nil {
response, err := onMessage(data)
assert.Nil(t, err)
if response != nil {
err = wsClient.Write(data)
assert.Nil(t, err)
}
}
return nil
})
return &wsClient
}

type expectedCentralSystemOptions struct {
clientId string
rawWrittenMessage []byte
Expand Down
6 changes: 3 additions & 3 deletions ocpp2.0.1/v2.go
Original file line number Diff line number Diff line change
Expand Up @@ -207,8 +207,8 @@ type ChargingStation interface {
// })
//
// For more advanced options, or if a custom networking/occpj layer is required,
// please refer to ocppj.Client and ws.WsClient.
func NewChargingStation(id string, endpoint *ocppj.Client, client ws.WsClient) ChargingStation {
// please refer to ocppj.Client and ws.Client.
func NewChargingStation(id string, endpoint *ocppj.Client, client ws.Client) ChargingStation {
if client == nil {
client = ws.NewClient()
}
Expand Down Expand Up @@ -415,7 +415,7 @@ type CSMS interface {
// If you need a TLS server, you may use the following:
//
// csms := NewCSMS(nil, ws.NewTLSServer("certificatePath", "privateKeyPath"))
func NewCSMS(endpoint *ocppj.Server, server ws.WsServer) CSMS {
func NewCSMS(endpoint *ocppj.Server, server ws.Server) CSMS {
if server == nil {
server = ws.NewServer()
}
Expand Down
51 changes: 9 additions & 42 deletions ocpp2.0.1_test/ocpp2_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import (
"crypto/tls"
"fmt"
"net"
"net/http"
"reflect"
"testing"
"time"
Expand Down Expand Up @@ -59,6 +58,10 @@ func (websocket MockWebSocket) TLSConnectionState() *tls.ConnectionState {
return nil
}

func (websocket MockWebSocket) IsConnected() bool {
return true
}

func NewMockWebSocket(id string) MockWebSocket {
return MockWebSocket{id: id}
}
Expand All @@ -67,7 +70,7 @@ func NewMockWebSocket(id string) MockWebSocket {

type MockWebsocketServer struct {
mock.Mock
ws.WsServer
ws.Server
MessageHandler func(ws ws.Channel, data []byte) error
NewClientHandler func(ws ws.Channel)
CheckClientHandler ws.CheckClientHandler
Expand All @@ -87,11 +90,11 @@ func (websocketServer *MockWebsocketServer) Write(webSocketId string, data []byt
return args.Error(0)
}

func (websocketServer *MockWebsocketServer) SetMessageHandler(handler func(ws ws.Channel, data []byte) error) {
func (websocketServer *MockWebsocketServer) SetMessageHandler(handler ws.MessageHandler) {
websocketServer.MessageHandler = handler
}

func (websocketServer *MockWebsocketServer) SetNewClientHandler(handler func(ws ws.Channel)) {
func (websocketServer *MockWebsocketServer) SetNewClientHandler(handler ws.ConnectedHandler) {
websocketServer.NewClientHandler = handler
}

Expand All @@ -106,15 +109,15 @@ func (websocketServer *MockWebsocketServer) NewClient(websocketId string, client
websocketServer.MethodCalled("NewClient", websocketId, client)
}

func (websocketServer *MockWebsocketServer) SetCheckClientHandler(handler func(id string, r *http.Request) bool) {
func (websocketServer *MockWebsocketServer) SetCheckClientHandler(handler ws.CheckClientHandler) {
websocketServer.CheckClientHandler = handler
}

// ---------------------- MOCK WEBSOCKET CLIENT ----------------------

type MockWebsocketClient struct {
mock.Mock
ws.WsClient
ws.Client
MessageHandler func(data []byte) error
ReconnectedHandler func()
DisconnectedHandler func(err error)
Expand Down Expand Up @@ -812,42 +815,6 @@ func (handler *MockCSMSTransactionsHandler) OnTransactionEvent(chargingStationID
}

// ---------------------- COMMON UTILITY METHODS ----------------------

func NewWebsocketServer(t *testing.T, onMessage func(data []byte) ([]byte, error)) *ws.Server {
wsServer := ws.Server{}
wsServer.SetMessageHandler(func(ws ws.Channel, data []byte) error {
assert.NotNil(t, ws)
assert.NotNil(t, data)
if onMessage != nil {
response, err := onMessage(data)
assert.Nil(t, err)
if response != nil {
err = wsServer.Write(ws.ID(), data)
assert.Nil(t, err)
}
}
return nil
})
return &wsServer
}

func NewWebsocketClient(t *testing.T, onMessage func(data []byte) ([]byte, error)) *ws.Client {
wsClient := ws.Client{}
wsClient.SetMessageHandler(func(data []byte) error {
assert.NotNil(t, data)
if onMessage != nil {
response, err := onMessage(data)
assert.Nil(t, err)
if response != nil {
err = wsClient.Write(data)
assert.Nil(t, err)
}
}
return nil
})
return &wsClient
}

type expectedCSMSOptions struct {
clientId string
rawWrittenMessage []byte
Expand Down
2 changes: 1 addition & 1 deletion ocppj/central_system_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -400,7 +400,7 @@ func (suite *OcppJTestSuite) TestCentralSystemNewClientHandler() {
suite.mockServer.NewClientHandler(channel)
ok := <-connectedC
assert.True(t, ok)
// Client state was created
// client state was created
_, ok = suite.serverRequestMap.Get(mockClientID)
assert.True(t, ok)
}
Expand Down
4 changes: 2 additions & 2 deletions ocppj/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import (
// During message exchange, the two roles may be reversed (depending on the message direction), but a client struct remains associated to a charge point/charging station.
type Client struct {
Endpoint
client ws.WsClient
client ws.Client
Id string
requestHandler func(request ocpp.Request, requestId string, action string)
responseHandler func(response ocpp.Response, requestId string)
Expand All @@ -35,7 +35,7 @@ type Client struct {
//
// The wsClient parameter cannot be nil. Refer to the ws package for information on how to create and
// customize a websocket client.
func NewClient(id string, wsClient ws.WsClient, dispatcher ClientDispatcher, stateHandler ClientState, profiles ...*ocpp.Profile) *Client {
func NewClient(id string, wsClient ws.Client, dispatcher ClientDispatcher, stateHandler ClientState, profiles ...*ocpp.Profile) *Client {
endpoint := Endpoint{}
if wsClient == nil {
panic("wsClient parameter cannot be nil")
Expand Down
18 changes: 9 additions & 9 deletions ocppj/dispatcher.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ type ClientDispatcher interface {
// Sets the network client, so the dispatcher may send requests using the networking layer directly.
//
// This needs to be set before calling the Start method. If not, sending requests will fail.
SetNetworkClient(client ws.WsClient)
SetNetworkClient(client ws.Client)
// Sets the state manager for pending requests in the dispatcher.
//
// The state should only be accessed by the dispatcher while running.
Expand Down Expand Up @@ -90,7 +90,7 @@ type DefaultClientDispatcher struct {
requestChannel chan bool
readyForDispatch chan bool
pendingRequestState ClientState
network ws.WsClient
network ws.Client
mutex sync.RWMutex
onRequestCancel func(requestID string, request ocpp.Request, err *ocpp.Error)
timer *time.Timer
Expand Down Expand Up @@ -149,7 +149,7 @@ func (d *DefaultClientDispatcher) Stop() {
// TODO: clear pending requests?
}

func (d *DefaultClientDispatcher) SetNetworkClient(client ws.WsClient) {
func (d *DefaultClientDispatcher) SetNetworkClient(client ws.Client) {
d.network = client
}

Expand Down Expand Up @@ -335,7 +335,7 @@ type ServerDispatcher interface {
// Sets the network server, so the dispatcher may send requests using the networking layer directly.
//
// This needs to be set before calling the Start method. If not, sending requests will fail.
SetNetworkServer(server ws.WsServer)
SetNetworkServer(server ws.Server)
// Sets the state manager for pending requests in the dispatcher.
//
// The state should only be accessed by the dispatcher while running.
Expand Down Expand Up @@ -371,7 +371,7 @@ type DefaultServerDispatcher struct {
running bool
stoppedC chan struct{}
onRequestCancel CanceledRequestHandler
network ws.WsServer
network ws.Server
mutex sync.RWMutex
}

Expand Down Expand Up @@ -442,7 +442,7 @@ func (d *DefaultServerDispatcher) DeleteClient(clientID string) {
}
}

func (d *DefaultServerDispatcher) SetNetworkServer(server ws.WsServer) {
func (d *DefaultServerDispatcher) SetNetworkServer(server ws.Server) {
d.network = server
}

Expand Down Expand Up @@ -491,7 +491,7 @@ func (d *DefaultServerDispatcher) messagePump() {
for {
select {
case <-d.stoppedC:
// Server was stopped
// server was stopped
d.queueMap.Init()
log.Info("stopped processing requests")
return
Expand Down Expand Up @@ -547,7 +547,7 @@ func (d *DefaultServerDispatcher) messagePump() {
clientCtx.cancel()
clientContextMap[clientID] = clientTimeoutContext{}
}
// Client can now transmit again
// client can now transmit again
clientQueue, ok = d.queueMap.Get(clientID)
if ok {
// Ready to transmit
Expand Down Expand Up @@ -620,7 +620,7 @@ func (d *DefaultServerDispatcher) waitForTimeout(clientID string, clientCtx clie
log.Debugf("timeout canceled for %s", clientID)
}
case <-d.stoppedC:
// Server was stopped, every pending timeout gets canceled
// server was stopped, every pending timeout gets canceled
}
}

Expand Down
10 changes: 5 additions & 5 deletions ocppj/mocks/mock_ClientDispatcher.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading