You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Matt Threlfall (JIRA)" <ji...@apache.org> on 2019/04/16 20:08:00 UTC

[jira] [Created] (PROTON-2035) Inability to mock Golang interfaces

Matt Threlfall created PROTON-2035:
--------------------------------------

             Summary: Inability to mock Golang interfaces
                 Key: PROTON-2035
                 URL: https://issues.apache.org/jira/browse/PROTON-2035
             Project: Qpid Proton
          Issue Type: Bug
          Components: go-binding
    Affects Versions: proton-c-0.27.0
         Environment: Centos 7, Golang 1.11
            Reporter: Matt Threlfall
            Assignee: Alan Conway


I'll preface this by saying, I'm new to using Golang so this could entirely be my misunderstanding.

I'm trying to use Proton-C 0.27's Golang bindings to connect to a broker and receive messages from it which works fine. However I'm finding it hard to mock the Receiver and Connection interfaces using either Go Mock or Testify's mocks. Both complain that the mock interfaces can't be used as they don't have an electron.closed function, despite it being defined. 

I believe this to be due to the closed and waitSync functions being defined in lowercase, changing them throughout the implementation to start with capitals makes the mock interfaces work fine. I understand they're lowercase however to keep them private to the package. 

Is this an oversight in the implementation or is there a better way to mock Connections and Receivers without editing the original source code?

Again I apologise if this is a simple matter, this is my first Golang project and mock implementation.

 

Thank you,

Matt



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org