aergoio/aergo

View on GitHub
p2p/p2pmock/mock_networktransport.go

Summary

Maintainability
D
3 days
Test Coverage

MockNetworkTransport has 23 methods (exceeds 20 allowed). Consider refactoring.
Open

type MockNetworkTransport struct {
    ctrl     *gomock.Controller
    recorder *MockNetworkTransportMockRecorder
}
Severity: Minor
Found in p2p/p2pmock/mock_networktransport.go - About 2 hrs to fix

    MockNetworkTransportMockRecorder has 22 methods (exceeds 20 allowed). Consider refactoring.
    Open

    type MockNetworkTransportMockRecorder struct {
        mock *MockNetworkTransport
    }
    Severity: Minor
    Found in p2p/p2pmock/mock_networktransport.go - About 2 hrs to fix

      Similar blocks of code found in 3 locations. Consider refactoring.
      Open

      func (m *MockNetworkTransport) GetOrCreateStreamWithTTL(arg0 p2pcommon.PeerMeta, arg1 time.Duration, arg2 ...protocol.ID) (network.Stream, error) {
          m.ctrl.T.Helper()
          varargs := []interface{}{arg0, arg1}
          for _, a := range arg2 {
              varargs = append(varargs, a)
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 2 other locations - About 1 hr to fix
      p2p/p2pmock/mock_host.go on lines 156..166
      p2p/p2pmock/mock_networktransport.go on lines 318..328

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 173.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 3 locations. Consider refactoring.
      Open

      func (m *MockNetworkTransport) NewStream(arg0 context.Context, arg1 peer.ID, arg2 ...protocol.ID) (network.Stream, error) {
          m.ctrl.T.Helper()
          varargs := []interface{}{arg0, arg1}
          for _, a := range arg2 {
              varargs = append(varargs, a)
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 2 other locations - About 1 hr to fix
      p2p/p2pmock/mock_host.go on lines 156..166
      p2p/p2pmock/mock_networktransport.go on lines 256..266

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 173.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 46 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) NewStream(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          varargs := append([]interface{}{arg0, arg1}, arg2...)
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewStream", reflect.TypeOf((*MockNetworkTransport)(nil).NewStream), varargs...)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 45 other locations - About 1 hr to fix
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 53..57
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 73..77
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 93..97
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 113..117
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 133..137
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 153..157
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 173..177
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 193..197
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 213..217
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 233..237
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 253..257
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 273..277
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 293..297
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 313..317
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 333..337
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 353..357
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 373..377
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 393..397
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 413..417
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 433..437
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 453..457
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 473..477
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 493..497
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 513..517
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 533..537
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 553..557
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 573..577
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 593..597
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 613..617
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 633..637
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 653..657
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 673..677
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 693..697
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 713..717
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 733..737
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 753..757
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 773..777
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 793..797
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 813..817
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 833..837
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 853..857
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 873..877
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 893..897
      p2p/p2pmock/mock_host.go on lines 169..173
      p2p/p2pmock/mock_networktransport.go on lines 269..273

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 140.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 46 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) GetOrCreateStreamWithTTL(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          varargs := append([]interface{}{arg0, arg1}, arg2...)
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetOrCreateStreamWithTTL", reflect.TypeOf((*MockNetworkTransport)(nil).GetOrCreateStreamWithTTL), varargs...)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 45 other locations - About 1 hr to fix
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 53..57
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 73..77
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 93..97
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 113..117
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 133..137
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 153..157
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 173..177
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 193..197
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 213..217
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 233..237
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 253..257
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 273..277
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 293..297
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 313..317
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 333..337
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 353..357
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 373..377
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 393..397
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 413..417
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 433..437
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 453..457
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 473..477
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 493..497
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 513..517
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 533..537
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 553..557
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 573..577
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 593..597
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 613..617
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 633..637
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 653..657
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 673..677
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 693..697
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 713..717
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 733..737
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 753..757
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 773..777
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 793..797
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 813..817
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 833..837
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 853..857
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 873..877
      cmd/aergocli/cmd/mock_types/mock_types.go on lines 893..897
      p2p/p2pmock/mock_host.go on lines 169..173
      p2p/p2pmock/mock_networktransport.go on lines 331..335

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 140.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 18 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) SetStreamHandlerMatch(arg0, arg1, arg2 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStreamHandlerMatch", reflect.TypeOf((*MockNetworkTransport)(nil).SetStreamHandlerMatch), arg0, arg1, arg2)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 17 other locations - About 45 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 190..193
      p2p/p2pmock/mock_actorservice.go on lines 72..75
      p2p/p2pmock/mock_actorservice.go on lines 101..104
      p2p/p2pmock/mock_consensus.go on lines 188..191
      p2p/p2pmock/mock_consensus.go on lines 227..230
      p2p/p2pmock/mock_handshake.go on lines 139..142
      p2p/p2pmock/mock_host.go on lines 220..223
      p2p/p2pmock/mock_message.go on lines 374..377
      p2p/p2pmock/mock_msgorder.go on lines 166..169
      p2p/p2pmock/mock_msgorder.go on lines 180..183
      p2p/p2pmock/mock_msgorder.go on lines 194..197
      p2p/p2pmock/mock_peerrole.go on lines 124..127
      p2p/p2pmock/mock_remotepeer.go on lines 47..50
      p2p/p2pmock/mock_syncmanager.go on lines 57..60
      p2p/p2pmock/mock_syncmanager.go on lines 71..74
      p2p/p2pmock/mock_syncmanager.go on lines 95..98
      p2p/p2pmock/mock_txnotice.go on lines 43..46

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 115.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 42 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Connect(arg0, arg1 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Connect", reflect.TypeOf((*MockNetworkTransport)(nil).Connect), arg0, arg1)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 41 other locations - About 45 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 58..61
      p2p/p2pmock/mock_actorcontext.go on lines 176..179
      p2p/p2pmock/mock_actorcontext.go on lines 283..286
      p2p/p2pmock/mock_actorcontext.go on lines 297..300
      p2p/p2pmock/mock_actorcontext.go on lines 321..324
      p2p/p2pmock/mock_actorservice.go on lines 45..48
      p2p/p2pmock/mock_actorservice.go on lines 57..60
      p2p/p2pmock/mock_actorservice.go on lines 87..90
      p2p/p2pmock/mock_actorservice.go on lines 115..118
      p2p/p2pmock/mock_consensus.go on lines 200..203
      p2p/p2pmock/mock_handshake.go on lines 49..52
      p2p/p2pmock/mock_handshake.go on lines 87..90
      p2p/p2pmock/mock_host.go on lines 94..97
      p2p/p2pmock/mock_host.go on lines 208..211
      p2p/p2pmock/mock_listmanager.go on lines 71..74
      p2p/p2pmock/mock_message.go on lines 242..245
      p2p/p2pmock/mock_message.go on lines 254..257
      p2p/p2pmock/mock_message.go on lines 278..281
      p2p/p2pmock/mock_message.go on lines 325..328
      p2p/p2pmock/mock_message.go on lines 362..365
      p2p/p2pmock/mock_message.go on lines 425..428
      p2p/p2pmock/mock_metricsman.go on lines 70..73
      p2p/p2pmock/mock_metricsman.go on lines 84..87
      p2p/p2pmock/mock_msgio.go on lines 121..124
      p2p/p2pmock/mock_msgio.go on lines 133..136
      p2p/p2pmock/mock_msgorder.go on lines 250..253
      p2p/p2pmock/mock_networktransport.go on lines 118..121
      p2p/p2pmock/mock_networktransport.go on lines 384..387
      p2p/p2pmock/mock_peermanager.go on lines 220..223
      p2p/p2pmock/mock_peerrole.go on lines 68..71
      p2p/p2pmock/mock_peerrole.go on lines 110..113
      p2p/p2pmock/mock_peerrole.go on lines 138..141
      p2p/p2pmock/mock_remotepeer.go on lines 192..195
      p2p/p2pmock/mock_remotepeer.go on lines 284..287
      p2p/p2pmock/mock_remotepeer.go on lines 337..340
      p2p/p2pmock/mock_remotepeer.go on lines 363..366
      p2p/p2pmock/mock_syncmanager.go on lines 45..48
      p2p/p2pmock/mock_syncmanager.go on lines 83..86
      p2p/p2pmock/mock_syncmanager.go on lines 119..122
      p2p/p2pmock/mock_txnotice.go on lines 55..58
      p2p/p2pmock/mock_txnotice.go on lines 67..70

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 113.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 42 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) AddStreamHandler(arg0, arg1 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddStreamHandler", reflect.TypeOf((*MockNetworkTransport)(nil).AddStreamHandler), arg0, arg1)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 41 other locations - About 45 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 58..61
      p2p/p2pmock/mock_actorcontext.go on lines 176..179
      p2p/p2pmock/mock_actorcontext.go on lines 283..286
      p2p/p2pmock/mock_actorcontext.go on lines 297..300
      p2p/p2pmock/mock_actorcontext.go on lines 321..324
      p2p/p2pmock/mock_actorservice.go on lines 45..48
      p2p/p2pmock/mock_actorservice.go on lines 57..60
      p2p/p2pmock/mock_actorservice.go on lines 87..90
      p2p/p2pmock/mock_actorservice.go on lines 115..118
      p2p/p2pmock/mock_consensus.go on lines 200..203
      p2p/p2pmock/mock_handshake.go on lines 49..52
      p2p/p2pmock/mock_handshake.go on lines 87..90
      p2p/p2pmock/mock_host.go on lines 94..97
      p2p/p2pmock/mock_host.go on lines 208..211
      p2p/p2pmock/mock_listmanager.go on lines 71..74
      p2p/p2pmock/mock_message.go on lines 242..245
      p2p/p2pmock/mock_message.go on lines 254..257
      p2p/p2pmock/mock_message.go on lines 278..281
      p2p/p2pmock/mock_message.go on lines 325..328
      p2p/p2pmock/mock_message.go on lines 362..365
      p2p/p2pmock/mock_message.go on lines 425..428
      p2p/p2pmock/mock_metricsman.go on lines 70..73
      p2p/p2pmock/mock_metricsman.go on lines 84..87
      p2p/p2pmock/mock_msgio.go on lines 121..124
      p2p/p2pmock/mock_msgio.go on lines 133..136
      p2p/p2pmock/mock_msgorder.go on lines 250..253
      p2p/p2pmock/mock_networktransport.go on lines 188..191
      p2p/p2pmock/mock_networktransport.go on lines 384..387
      p2p/p2pmock/mock_peermanager.go on lines 220..223
      p2p/p2pmock/mock_peerrole.go on lines 68..71
      p2p/p2pmock/mock_peerrole.go on lines 110..113
      p2p/p2pmock/mock_peerrole.go on lines 138..141
      p2p/p2pmock/mock_remotepeer.go on lines 192..195
      p2p/p2pmock/mock_remotepeer.go on lines 284..287
      p2p/p2pmock/mock_remotepeer.go on lines 337..340
      p2p/p2pmock/mock_remotepeer.go on lines 363..366
      p2p/p2pmock/mock_syncmanager.go on lines 45..48
      p2p/p2pmock/mock_syncmanager.go on lines 83..86
      p2p/p2pmock/mock_syncmanager.go on lines 119..122
      p2p/p2pmock/mock_txnotice.go on lines 55..58
      p2p/p2pmock/mock_txnotice.go on lines 67..70

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 113.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 42 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) SetStreamHandler(arg0, arg1 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStreamHandler", reflect.TypeOf((*MockNetworkTransport)(nil).SetStreamHandler), arg0, arg1)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 41 other locations - About 45 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 58..61
      p2p/p2pmock/mock_actorcontext.go on lines 176..179
      p2p/p2pmock/mock_actorcontext.go on lines 283..286
      p2p/p2pmock/mock_actorcontext.go on lines 297..300
      p2p/p2pmock/mock_actorcontext.go on lines 321..324
      p2p/p2pmock/mock_actorservice.go on lines 45..48
      p2p/p2pmock/mock_actorservice.go on lines 57..60
      p2p/p2pmock/mock_actorservice.go on lines 87..90
      p2p/p2pmock/mock_actorservice.go on lines 115..118
      p2p/p2pmock/mock_consensus.go on lines 200..203
      p2p/p2pmock/mock_handshake.go on lines 49..52
      p2p/p2pmock/mock_handshake.go on lines 87..90
      p2p/p2pmock/mock_host.go on lines 94..97
      p2p/p2pmock/mock_host.go on lines 208..211
      p2p/p2pmock/mock_listmanager.go on lines 71..74
      p2p/p2pmock/mock_message.go on lines 242..245
      p2p/p2pmock/mock_message.go on lines 254..257
      p2p/p2pmock/mock_message.go on lines 278..281
      p2p/p2pmock/mock_message.go on lines 325..328
      p2p/p2pmock/mock_message.go on lines 362..365
      p2p/p2pmock/mock_message.go on lines 425..428
      p2p/p2pmock/mock_metricsman.go on lines 70..73
      p2p/p2pmock/mock_metricsman.go on lines 84..87
      p2p/p2pmock/mock_msgio.go on lines 121..124
      p2p/p2pmock/mock_msgio.go on lines 133..136
      p2p/p2pmock/mock_msgorder.go on lines 250..253
      p2p/p2pmock/mock_networktransport.go on lines 118..121
      p2p/p2pmock/mock_networktransport.go on lines 188..191
      p2p/p2pmock/mock_peermanager.go on lines 220..223
      p2p/p2pmock/mock_peerrole.go on lines 68..71
      p2p/p2pmock/mock_peerrole.go on lines 110..113
      p2p/p2pmock/mock_peerrole.go on lines 138..141
      p2p/p2pmock/mock_remotepeer.go on lines 192..195
      p2p/p2pmock/mock_remotepeer.go on lines 284..287
      p2p/p2pmock/mock_remotepeer.go on lines 337..340
      p2p/p2pmock/mock_remotepeer.go on lines 363..366
      p2p/p2pmock/mock_syncmanager.go on lines 45..48
      p2p/p2pmock/mock_syncmanager.go on lines 83..86
      p2p/p2pmock/mock_syncmanager.go on lines 119..122
      p2p/p2pmock/mock_txnotice.go on lines 55..58
      p2p/p2pmock/mock_txnotice.go on lines 67..70

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 113.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 95 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) ClosePeerConnection(arg0 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ClosePeerConnection", reflect.TypeOf((*MockNetworkTransport)(nil).ClosePeerConnection), arg0)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 94 other locations - About 40 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 84..87
      p2p/p2pmock/mock_actorcontext.go on lines 150..153
      p2p/p2pmock/mock_actorcontext.go on lines 202..205
      p2p/p2pmock/mock_actorcontext.go on lines 242..245
      p2p/p2pmock/mock_actorcontext.go on lines 254..257
      p2p/p2pmock/mock_actorcontext.go on lines 268..271
      p2p/p2pmock/mock_actorcontext.go on lines 333..336
      p2p/p2pmock/mock_actorcontext.go on lines 345..348
      p2p/p2pmock/mock_certificate.go on lines 44..47
      p2p/p2pmock/mock_certificate.go on lines 58..61
      p2p/p2pmock/mock_certificate.go on lines 73..76
      p2p/p2pmock/mock_certificate.go on lines 113..116
      p2p/p2pmock/mock_certificate.go on lines 125..128
      p2p/p2pmock/mock_chainaccessor.go on lines 46..49
      p2p/p2pmock/mock_chainaccessor.go on lines 76..79
      p2p/p2pmock/mock_chainaccessor.go on lines 119..122
      p2p/p2pmock/mock_chainaccessor.go on lines 148..151
      p2p/p2pmock/mock_chainaccessor.go on lines 163..166
      p2p/p2pmock/mock_consensus.go on lines 51..54
      p2p/p2pmock/mock_consensus.go on lines 66..69
      p2p/p2pmock/mock_consensus.go on lines 81..84
      p2p/p2pmock/mock_consensus.go on lines 146..149
      p2p/p2pmock/mock_consensus.go on lines 160..163
      p2p/p2pmock/mock_consensus.go on lines 174..177
      p2p/p2pmock/mock_consensus.go on lines 212..215
      p2p/p2pmock/mock_handshake.go on lines 124..127
      p2p/p2pmock/mock_handshake.go on lines 167..170
      p2p/p2pmock/mock_handshake.go on lines 205..208
      p2p/p2pmock/mock_handshake.go on lines 220..223
      p2p/p2pmock/mock_host.go on lines 196..199
      p2p/p2pmock/mock_io.go on lines 45..48
      p2p/p2pmock/mock_io.go on lines 97..100
      p2p/p2pmock/mock_io.go on lines 135..138
      p2p/p2pmock/mock_io.go on lines 187..190
      p2p/p2pmock/mock_io.go on lines 239..242
      p2p/p2pmock/mock_io.go on lines 254..257
      p2p/p2pmock/mock_message.go on lines 213..216
      p2p/p2pmock/mock_message.go on lines 228..231
      p2p/p2pmock/mock_message.go on lines 411..414
      p2p/p2pmock/mock_metricsman.go on lines 99..102
      p2p/p2pmock/mock_msgio.go on lines 60..63
      p2p/p2pmock/mock_msgio.go on lines 86..89
      p2p/p2pmock/mock_msgorder.go on lines 117..120
      p2p/p2pmock/mock_msgorder.go on lines 129..132
      p2p/p2pmock/mock_msgorder.go on lines 208..211
      p2p/p2pmock/mock_msgorder.go on lines 222..225
      p2p/p2pmock/mock_msgorder.go on lines 236..239
      p2p/p2pmock/mock_msgorder.go on lines 264..267
      p2p/p2pmock/mock_networktransport.go on lines 216..219
      p2p/p2pmock/mock_networktransport.go on lines 230..233
      p2p/p2pmock/mock_networktransport.go on lines 358..361
      p2p/p2pmock/mock_peerfinder.go on lines 45..48
      p2p/p2pmock/mock_peerfinder.go on lines 57..60
      p2p/p2pmock/mock_peerfinder.go on lines 92..95
      p2p/p2pmock/mock_peerfinder.go on lines 104..107
      p2p/p2pmock/mock_peerfinder.go on lines 151..154
      p2p/p2pmock/mock_peerfinder.go on lines 163..166
      p2p/p2pmock/mock_peerfinder.go on lines 177..180
      p2p/p2pmock/mock_peerfinder.go on lines 189..192
      p2p/p2pmock/mock_peerfinder.go on lines 213..216
      p2p/p2pmock/mock_peerfinder.go on lines 225..228
      p2p/p2pmock/mock_peermanager.go on lines 45..48
      p2p/p2pmock/mock_peermanager.go on lines 113..116
      p2p/p2pmock/mock_peermanager.go on lines 125..128
      p2p/p2pmock/mock_peermanager.go on lines 137..140
      p2p/p2pmock/mock_peermanager.go on lines 149..152
      p2p/p2pmock/mock_peermanager.go on lines 164..167
      p2p/p2pmock/mock_peermanager.go on lines 246..249
      p2p/p2pmock/mock_peermanager.go on lines 258..261
      p2p/p2pmock/mock_peerrole.go on lines 96..99
      p2p/p2pmock/mock_protobuf.go on lines 61..64
      p2p/p2pmock/mock_protobuf.go on lines 75..78
      p2p/p2pmock/mock_protobuf.go on lines 89..92
      p2p/p2pmock/mock_protobuf.go on lines 103..106
      p2p/p2pmock/mock_protobuf.go on lines 117..120
      p2p/p2pmock/mock_protobuf.go on lines 129..132
      p2p/p2pmock/mock_remotepeer.go on lines 180..183
      p2p/p2pmock/mock_remotepeer.go on lines 256..259
      p2p/p2pmock/mock_remotepeer.go on lines 270..273
      p2p/p2pmock/mock_remotepeer.go on lines 296..299
      p2p/p2pmock/mock_remotepeer.go on lines 309..312
      p2p/p2pmock/mock_remotepeer.go on lines 323..326
      p2p/p2pmock/mock_remotepeer.go on lines 351..354
      p2p/p2pmock/mock_remotepeer.go on lines 389..392
      p2p/p2pmock/mock_remotepeer.go on lines 403..406
      p2p/p2pmock/mock_stream.go on lines 136..139
      p2p/p2pmock/mock_stream.go on lines 164..167
      p2p/p2pmock/mock_stream.go on lines 176..179
      p2p/p2pmock/mock_stream.go on lines 190..193
      p2p/p2pmock/mock_stream.go on lines 204..207
      p2p/p2pmock/mock_stream.go on lines 233..236
      p2p/p2pmock/mock_stream.go on lines 355..358
      p2p/p2pmock/mock_syncmanager.go on lines 107..110
      p2p/p2pmock/mock_syncmanager.go on lines 195..198

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 111.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 95 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) FindPeer(arg0 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FindPeer", reflect.TypeOf((*MockNetworkTransport)(nil).FindPeer), arg0)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 94 other locations - About 40 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 84..87
      p2p/p2pmock/mock_actorcontext.go on lines 150..153
      p2p/p2pmock/mock_actorcontext.go on lines 202..205
      p2p/p2pmock/mock_actorcontext.go on lines 242..245
      p2p/p2pmock/mock_actorcontext.go on lines 254..257
      p2p/p2pmock/mock_actorcontext.go on lines 268..271
      p2p/p2pmock/mock_actorcontext.go on lines 333..336
      p2p/p2pmock/mock_actorcontext.go on lines 345..348
      p2p/p2pmock/mock_certificate.go on lines 44..47
      p2p/p2pmock/mock_certificate.go on lines 58..61
      p2p/p2pmock/mock_certificate.go on lines 73..76
      p2p/p2pmock/mock_certificate.go on lines 113..116
      p2p/p2pmock/mock_certificate.go on lines 125..128
      p2p/p2pmock/mock_chainaccessor.go on lines 46..49
      p2p/p2pmock/mock_chainaccessor.go on lines 76..79
      p2p/p2pmock/mock_chainaccessor.go on lines 119..122
      p2p/p2pmock/mock_chainaccessor.go on lines 148..151
      p2p/p2pmock/mock_chainaccessor.go on lines 163..166
      p2p/p2pmock/mock_consensus.go on lines 51..54
      p2p/p2pmock/mock_consensus.go on lines 66..69
      p2p/p2pmock/mock_consensus.go on lines 81..84
      p2p/p2pmock/mock_consensus.go on lines 146..149
      p2p/p2pmock/mock_consensus.go on lines 160..163
      p2p/p2pmock/mock_consensus.go on lines 174..177
      p2p/p2pmock/mock_consensus.go on lines 212..215
      p2p/p2pmock/mock_handshake.go on lines 124..127
      p2p/p2pmock/mock_handshake.go on lines 167..170
      p2p/p2pmock/mock_handshake.go on lines 205..208
      p2p/p2pmock/mock_handshake.go on lines 220..223
      p2p/p2pmock/mock_host.go on lines 196..199
      p2p/p2pmock/mock_io.go on lines 45..48
      p2p/p2pmock/mock_io.go on lines 97..100
      p2p/p2pmock/mock_io.go on lines 135..138
      p2p/p2pmock/mock_io.go on lines 187..190
      p2p/p2pmock/mock_io.go on lines 239..242
      p2p/p2pmock/mock_io.go on lines 254..257
      p2p/p2pmock/mock_message.go on lines 213..216
      p2p/p2pmock/mock_message.go on lines 228..231
      p2p/p2pmock/mock_message.go on lines 411..414
      p2p/p2pmock/mock_metricsman.go on lines 99..102
      p2p/p2pmock/mock_msgio.go on lines 60..63
      p2p/p2pmock/mock_msgio.go on lines 86..89
      p2p/p2pmock/mock_msgorder.go on lines 117..120
      p2p/p2pmock/mock_msgorder.go on lines 129..132
      p2p/p2pmock/mock_msgorder.go on lines 208..211
      p2p/p2pmock/mock_msgorder.go on lines 222..225
      p2p/p2pmock/mock_msgorder.go on lines 236..239
      p2p/p2pmock/mock_msgorder.go on lines 264..267
      p2p/p2pmock/mock_networktransport.go on lines 160..163
      p2p/p2pmock/mock_networktransport.go on lines 230..233
      p2p/p2pmock/mock_networktransport.go on lines 358..361
      p2p/p2pmock/mock_peerfinder.go on lines 45..48
      p2p/p2pmock/mock_peerfinder.go on lines 57..60
      p2p/p2pmock/mock_peerfinder.go on lines 92..95
      p2p/p2pmock/mock_peerfinder.go on lines 104..107
      p2p/p2pmock/mock_peerfinder.go on lines 151..154
      p2p/p2pmock/mock_peerfinder.go on lines 163..166
      p2p/p2pmock/mock_peerfinder.go on lines 177..180
      p2p/p2pmock/mock_peerfinder.go on lines 189..192
      p2p/p2pmock/mock_peerfinder.go on lines 213..216
      p2p/p2pmock/mock_peerfinder.go on lines 225..228
      p2p/p2pmock/mock_peermanager.go on lines 45..48
      p2p/p2pmock/mock_peermanager.go on lines 113..116
      p2p/p2pmock/mock_peermanager.go on lines 125..128
      p2p/p2pmock/mock_peermanager.go on lines 137..140
      p2p/p2pmock/mock_peermanager.go on lines 149..152
      p2p/p2pmock/mock_peermanager.go on lines 164..167
      p2p/p2pmock/mock_peermanager.go on lines 246..249
      p2p/p2pmock/mock_peermanager.go on lines 258..261
      p2p/p2pmock/mock_peerrole.go on lines 96..99
      p2p/p2pmock/mock_protobuf.go on lines 61..64
      p2p/p2pmock/mock_protobuf.go on lines 75..78
      p2p/p2pmock/mock_protobuf.go on lines 89..92
      p2p/p2pmock/mock_protobuf.go on lines 103..106
      p2p/p2pmock/mock_protobuf.go on lines 117..120
      p2p/p2pmock/mock_protobuf.go on lines 129..132
      p2p/p2pmock/mock_remotepeer.go on lines 180..183
      p2p/p2pmock/mock_remotepeer.go on lines 256..259
      p2p/p2pmock/mock_remotepeer.go on lines 270..273
      p2p/p2pmock/mock_remotepeer.go on lines 296..299
      p2p/p2pmock/mock_remotepeer.go on lines 309..312
      p2p/p2pmock/mock_remotepeer.go on lines 323..326
      p2p/p2pmock/mock_remotepeer.go on lines 351..354
      p2p/p2pmock/mock_remotepeer.go on lines 389..392
      p2p/p2pmock/mock_remotepeer.go on lines 403..406
      p2p/p2pmock/mock_stream.go on lines 136..139
      p2p/p2pmock/mock_stream.go on lines 164..167
      p2p/p2pmock/mock_stream.go on lines 176..179
      p2p/p2pmock/mock_stream.go on lines 190..193
      p2p/p2pmock/mock_stream.go on lines 204..207
      p2p/p2pmock/mock_stream.go on lines 233..236
      p2p/p2pmock/mock_stream.go on lines 355..358
      p2p/p2pmock/mock_syncmanager.go on lines 107..110
      p2p/p2pmock/mock_syncmanager.go on lines 195..198

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 111.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 95 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) RemoveStreamHandler(arg0 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveStreamHandler", reflect.TypeOf((*MockNetworkTransport)(nil).RemoveStreamHandler), arg0)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 94 other locations - About 40 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 84..87
      p2p/p2pmock/mock_actorcontext.go on lines 150..153
      p2p/p2pmock/mock_actorcontext.go on lines 202..205
      p2p/p2pmock/mock_actorcontext.go on lines 242..245
      p2p/p2pmock/mock_actorcontext.go on lines 254..257
      p2p/p2pmock/mock_actorcontext.go on lines 268..271
      p2p/p2pmock/mock_actorcontext.go on lines 333..336
      p2p/p2pmock/mock_actorcontext.go on lines 345..348
      p2p/p2pmock/mock_certificate.go on lines 44..47
      p2p/p2pmock/mock_certificate.go on lines 58..61
      p2p/p2pmock/mock_certificate.go on lines 73..76
      p2p/p2pmock/mock_certificate.go on lines 113..116
      p2p/p2pmock/mock_certificate.go on lines 125..128
      p2p/p2pmock/mock_chainaccessor.go on lines 46..49
      p2p/p2pmock/mock_chainaccessor.go on lines 76..79
      p2p/p2pmock/mock_chainaccessor.go on lines 119..122
      p2p/p2pmock/mock_chainaccessor.go on lines 148..151
      p2p/p2pmock/mock_chainaccessor.go on lines 163..166
      p2p/p2pmock/mock_consensus.go on lines 51..54
      p2p/p2pmock/mock_consensus.go on lines 66..69
      p2p/p2pmock/mock_consensus.go on lines 81..84
      p2p/p2pmock/mock_consensus.go on lines 146..149
      p2p/p2pmock/mock_consensus.go on lines 160..163
      p2p/p2pmock/mock_consensus.go on lines 174..177
      p2p/p2pmock/mock_consensus.go on lines 212..215
      p2p/p2pmock/mock_handshake.go on lines 124..127
      p2p/p2pmock/mock_handshake.go on lines 167..170
      p2p/p2pmock/mock_handshake.go on lines 205..208
      p2p/p2pmock/mock_handshake.go on lines 220..223
      p2p/p2pmock/mock_host.go on lines 196..199
      p2p/p2pmock/mock_io.go on lines 45..48
      p2p/p2pmock/mock_io.go on lines 97..100
      p2p/p2pmock/mock_io.go on lines 135..138
      p2p/p2pmock/mock_io.go on lines 187..190
      p2p/p2pmock/mock_io.go on lines 239..242
      p2p/p2pmock/mock_io.go on lines 254..257
      p2p/p2pmock/mock_message.go on lines 213..216
      p2p/p2pmock/mock_message.go on lines 228..231
      p2p/p2pmock/mock_message.go on lines 411..414
      p2p/p2pmock/mock_metricsman.go on lines 99..102
      p2p/p2pmock/mock_msgio.go on lines 60..63
      p2p/p2pmock/mock_msgio.go on lines 86..89
      p2p/p2pmock/mock_msgorder.go on lines 117..120
      p2p/p2pmock/mock_msgorder.go on lines 129..132
      p2p/p2pmock/mock_msgorder.go on lines 208..211
      p2p/p2pmock/mock_msgorder.go on lines 222..225
      p2p/p2pmock/mock_msgorder.go on lines 236..239
      p2p/p2pmock/mock_msgorder.go on lines 264..267
      p2p/p2pmock/mock_networktransport.go on lines 160..163
      p2p/p2pmock/mock_networktransport.go on lines 216..219
      p2p/p2pmock/mock_networktransport.go on lines 230..233
      p2p/p2pmock/mock_peerfinder.go on lines 45..48
      p2p/p2pmock/mock_peerfinder.go on lines 57..60
      p2p/p2pmock/mock_peerfinder.go on lines 92..95
      p2p/p2pmock/mock_peerfinder.go on lines 104..107
      p2p/p2pmock/mock_peerfinder.go on lines 151..154
      p2p/p2pmock/mock_peerfinder.go on lines 163..166
      p2p/p2pmock/mock_peerfinder.go on lines 177..180
      p2p/p2pmock/mock_peerfinder.go on lines 189..192
      p2p/p2pmock/mock_peerfinder.go on lines 213..216
      p2p/p2pmock/mock_peerfinder.go on lines 225..228
      p2p/p2pmock/mock_peermanager.go on lines 45..48
      p2p/p2pmock/mock_peermanager.go on lines 113..116
      p2p/p2pmock/mock_peermanager.go on lines 125..128
      p2p/p2pmock/mock_peermanager.go on lines 137..140
      p2p/p2pmock/mock_peermanager.go on lines 149..152
      p2p/p2pmock/mock_peermanager.go on lines 164..167
      p2p/p2pmock/mock_peermanager.go on lines 246..249
      p2p/p2pmock/mock_peermanager.go on lines 258..261
      p2p/p2pmock/mock_peerrole.go on lines 96..99
      p2p/p2pmock/mock_protobuf.go on lines 61..64
      p2p/p2pmock/mock_protobuf.go on lines 75..78
      p2p/p2pmock/mock_protobuf.go on lines 89..92
      p2p/p2pmock/mock_protobuf.go on lines 103..106
      p2p/p2pmock/mock_protobuf.go on lines 117..120
      p2p/p2pmock/mock_protobuf.go on lines 129..132
      p2p/p2pmock/mock_remotepeer.go on lines 180..183
      p2p/p2pmock/mock_remotepeer.go on lines 256..259
      p2p/p2pmock/mock_remotepeer.go on lines 270..273
      p2p/p2pmock/mock_remotepeer.go on lines 296..299
      p2p/p2pmock/mock_remotepeer.go on lines 309..312
      p2p/p2pmock/mock_remotepeer.go on lines 323..326
      p2p/p2pmock/mock_remotepeer.go on lines 351..354
      p2p/p2pmock/mock_remotepeer.go on lines 389..392
      p2p/p2pmock/mock_remotepeer.go on lines 403..406
      p2p/p2pmock/mock_stream.go on lines 136..139
      p2p/p2pmock/mock_stream.go on lines 164..167
      p2p/p2pmock/mock_stream.go on lines 176..179
      p2p/p2pmock/mock_stream.go on lines 190..193
      p2p/p2pmock/mock_stream.go on lines 204..207
      p2p/p2pmock/mock_stream.go on lines 233..236
      p2p/p2pmock/mock_stream.go on lines 355..358
      p2p/p2pmock/mock_syncmanager.go on lines 107..110
      p2p/p2pmock/mock_syncmanager.go on lines 195..198

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 111.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 95 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) GetAddressesOfPeer(arg0 interface{}) *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAddressesOfPeer", reflect.TypeOf((*MockNetworkTransport)(nil).GetAddressesOfPeer), arg0)
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 94 other locations - About 40 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 84..87
      p2p/p2pmock/mock_actorcontext.go on lines 150..153
      p2p/p2pmock/mock_actorcontext.go on lines 202..205
      p2p/p2pmock/mock_actorcontext.go on lines 242..245
      p2p/p2pmock/mock_actorcontext.go on lines 254..257
      p2p/p2pmock/mock_actorcontext.go on lines 268..271
      p2p/p2pmock/mock_actorcontext.go on lines 333..336
      p2p/p2pmock/mock_actorcontext.go on lines 345..348
      p2p/p2pmock/mock_certificate.go on lines 44..47
      p2p/p2pmock/mock_certificate.go on lines 58..61
      p2p/p2pmock/mock_certificate.go on lines 73..76
      p2p/p2pmock/mock_certificate.go on lines 113..116
      p2p/p2pmock/mock_certificate.go on lines 125..128
      p2p/p2pmock/mock_chainaccessor.go on lines 46..49
      p2p/p2pmock/mock_chainaccessor.go on lines 76..79
      p2p/p2pmock/mock_chainaccessor.go on lines 119..122
      p2p/p2pmock/mock_chainaccessor.go on lines 148..151
      p2p/p2pmock/mock_chainaccessor.go on lines 163..166
      p2p/p2pmock/mock_consensus.go on lines 51..54
      p2p/p2pmock/mock_consensus.go on lines 66..69
      p2p/p2pmock/mock_consensus.go on lines 81..84
      p2p/p2pmock/mock_consensus.go on lines 146..149
      p2p/p2pmock/mock_consensus.go on lines 160..163
      p2p/p2pmock/mock_consensus.go on lines 174..177
      p2p/p2pmock/mock_consensus.go on lines 212..215
      p2p/p2pmock/mock_handshake.go on lines 124..127
      p2p/p2pmock/mock_handshake.go on lines 167..170
      p2p/p2pmock/mock_handshake.go on lines 205..208
      p2p/p2pmock/mock_handshake.go on lines 220..223
      p2p/p2pmock/mock_host.go on lines 196..199
      p2p/p2pmock/mock_io.go on lines 45..48
      p2p/p2pmock/mock_io.go on lines 97..100
      p2p/p2pmock/mock_io.go on lines 135..138
      p2p/p2pmock/mock_io.go on lines 187..190
      p2p/p2pmock/mock_io.go on lines 239..242
      p2p/p2pmock/mock_io.go on lines 254..257
      p2p/p2pmock/mock_message.go on lines 213..216
      p2p/p2pmock/mock_message.go on lines 228..231
      p2p/p2pmock/mock_message.go on lines 411..414
      p2p/p2pmock/mock_metricsman.go on lines 99..102
      p2p/p2pmock/mock_msgio.go on lines 60..63
      p2p/p2pmock/mock_msgio.go on lines 86..89
      p2p/p2pmock/mock_msgorder.go on lines 117..120
      p2p/p2pmock/mock_msgorder.go on lines 129..132
      p2p/p2pmock/mock_msgorder.go on lines 208..211
      p2p/p2pmock/mock_msgorder.go on lines 222..225
      p2p/p2pmock/mock_msgorder.go on lines 236..239
      p2p/p2pmock/mock_msgorder.go on lines 264..267
      p2p/p2pmock/mock_networktransport.go on lines 160..163
      p2p/p2pmock/mock_networktransport.go on lines 216..219
      p2p/p2pmock/mock_networktransport.go on lines 358..361
      p2p/p2pmock/mock_peerfinder.go on lines 45..48
      p2p/p2pmock/mock_peerfinder.go on lines 57..60
      p2p/p2pmock/mock_peerfinder.go on lines 92..95
      p2p/p2pmock/mock_peerfinder.go on lines 104..107
      p2p/p2pmock/mock_peerfinder.go on lines 151..154
      p2p/p2pmock/mock_peerfinder.go on lines 163..166
      p2p/p2pmock/mock_peerfinder.go on lines 177..180
      p2p/p2pmock/mock_peerfinder.go on lines 189..192
      p2p/p2pmock/mock_peerfinder.go on lines 213..216
      p2p/p2pmock/mock_peerfinder.go on lines 225..228
      p2p/p2pmock/mock_peermanager.go on lines 45..48
      p2p/p2pmock/mock_peermanager.go on lines 113..116
      p2p/p2pmock/mock_peermanager.go on lines 125..128
      p2p/p2pmock/mock_peermanager.go on lines 137..140
      p2p/p2pmock/mock_peermanager.go on lines 149..152
      p2p/p2pmock/mock_peermanager.go on lines 164..167
      p2p/p2pmock/mock_peermanager.go on lines 246..249
      p2p/p2pmock/mock_peermanager.go on lines 258..261
      p2p/p2pmock/mock_peerrole.go on lines 96..99
      p2p/p2pmock/mock_protobuf.go on lines 61..64
      p2p/p2pmock/mock_protobuf.go on lines 75..78
      p2p/p2pmock/mock_protobuf.go on lines 89..92
      p2p/p2pmock/mock_protobuf.go on lines 103..106
      p2p/p2pmock/mock_protobuf.go on lines 117..120
      p2p/p2pmock/mock_protobuf.go on lines 129..132
      p2p/p2pmock/mock_remotepeer.go on lines 180..183
      p2p/p2pmock/mock_remotepeer.go on lines 256..259
      p2p/p2pmock/mock_remotepeer.go on lines 270..273
      p2p/p2pmock/mock_remotepeer.go on lines 296..299
      p2p/p2pmock/mock_remotepeer.go on lines 309..312
      p2p/p2pmock/mock_remotepeer.go on lines 323..326
      p2p/p2pmock/mock_remotepeer.go on lines 351..354
      p2p/p2pmock/mock_remotepeer.go on lines 389..392
      p2p/p2pmock/mock_remotepeer.go on lines 403..406
      p2p/p2pmock/mock_stream.go on lines 136..139
      p2p/p2pmock/mock_stream.go on lines 164..167
      p2p/p2pmock/mock_stream.go on lines 176..179
      p2p/p2pmock/mock_stream.go on lines 190..193
      p2p/p2pmock/mock_stream.go on lines 204..207
      p2p/p2pmock/mock_stream.go on lines 233..236
      p2p/p2pmock/mock_stream.go on lines 355..358
      p2p/p2pmock/mock_syncmanager.go on lines 107..110
      p2p/p2pmock/mock_syncmanager.go on lines 195..198

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 111.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 7 locations. Consider refactoring.
      Open

      func (m *MockNetworkTransport) Connect(arg0 context.Context, arg1 peer.AddrInfo) error {
          m.ctrl.T.Helper()
          ret := m.ctrl.Call(m, "Connect", arg0, arg1)
          ret0, _ := ret[0].(error)
          return ret0
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 6 other locations - About 35 mins to fix
      p2p/p2pmock/mock_host.go on lines 86..91
      p2p/p2pmock/mock_message.go on lines 234..239
      p2p/p2pmock/mock_message.go on lines 354..359
      p2p/p2pmock/mock_peerrole.go on lines 102..107
      p2p/p2pmock/mock_remotepeer.go on lines 276..281
      p2p/p2pmock/mock_remotepeer.go on lines 329..334

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 103.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNTContainerMockRecorder) GetNetworkTransport() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNetworkTransport", reflect.TypeOf((*MockNTContainer)(nil).GetNetworkTransport))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Mux() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Mux", reflect.TypeOf((*MockNetworkTransport)(nil).Mux))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Addrs() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Addrs", reflect.TypeOf((*MockNetworkTransport)(nil).Addrs))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) SelfMeta() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelfMeta", reflect.TypeOf((*MockNetworkTransport)(nil).SelfMeta))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) EventBus() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "EventBus", reflect.TypeOf((*MockNetworkTransport)(nil).EventBus))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Peerstore() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Peerstore", reflect.TypeOf((*MockNetworkTransport)(nil).Peerstore))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNTContainerMockRecorder) GenesisChainID() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GenesisChainID", reflect.TypeOf((*MockNTContainer)(nil).GenesisChainID))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) ConnManager() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ConnManager", reflect.TypeOf((*MockNetworkTransport)(nil).ConnManager))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Network() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Network", reflect.TypeOf((*MockNetworkTransport)(nil).Network))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Start() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockNetworkTransport)(nil).Start))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Stop() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stop", reflect.TypeOf((*MockNetworkTransport)(nil).Stop))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) Close() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Close", reflect.TypeOf((*MockNetworkTransport)(nil).Close))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNetworkTransportMockRecorder) ID() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ID", reflect.TypeOf((*MockNetworkTransport)(nil).ID))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 83..86
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Similar blocks of code found in 133 locations. Consider refactoring.
      Open

      func (mr *MockNTContainerMockRecorder) SelfMeta() *gomock.Call {
          mr.mock.ctrl.T.Helper()
          return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelfMeta", reflect.TypeOf((*MockNTContainer)(nil).SelfMeta))
      }
      Severity: Major
      Found in p2p/p2pmock/mock_networktransport.go and 132 other locations - About 30 mins to fix
      p2p/p2pmock/mock_actorcontext.go on lines 46..49
      p2p/p2pmock/mock_actorcontext.go on lines 72..75
      p2p/p2pmock/mock_actorcontext.go on lines 98..101
      p2p/p2pmock/mock_actorcontext.go on lines 112..115
      p2p/p2pmock/mock_actorcontext.go on lines 126..129
      p2p/p2pmock/mock_actorcontext.go on lines 138..141
      p2p/p2pmock/mock_actorcontext.go on lines 164..167
      p2p/p2pmock/mock_actorcontext.go on lines 216..219
      p2p/p2pmock/mock_actorcontext.go on lines 230..233
      p2p/p2pmock/mock_actorcontext.go on lines 309..312
      p2p/p2pmock/mock_actorservice.go on lines 129..132
      p2p/p2pmock/mock_certificate.go on lines 87..90
      p2p/p2pmock/mock_certificate.go on lines 101..104
      p2p/p2pmock/mock_certificate.go on lines 137..140
      p2p/p2pmock/mock_certificate.go on lines 149..152
      p2p/p2pmock/mock_chainaccessor.go on lines 61..64
      p2p/p2pmock/mock_chainaccessor.go on lines 90..93
      p2p/p2pmock/mock_chainaccessor.go on lines 104..107
      p2p/p2pmock/mock_chainaccessor.go on lines 133..136
      p2p/p2pmock/mock_consensus.go on lines 95..98
      p2p/p2pmock/mock_consensus.go on lines 109..112
      p2p/p2pmock/mock_handshake.go on lines 153..156
      p2p/p2pmock/mock_handshake.go on lines 234..237
      p2p/p2pmock/mock_host.go on lines 52..55
      p2p/p2pmock/mock_host.go on lines 66..69
      p2p/p2pmock/mock_host.go on lines 80..83
      p2p/p2pmock/mock_host.go on lines 108..111
      p2p/p2pmock/mock_host.go on lines 122..125
      p2p/p2pmock/mock_host.go on lines 136..139
      p2p/p2pmock/mock_host.go on lines 150..153
      p2p/p2pmock/mock_host.go on lines 184..187
      p2p/p2pmock/mock_internalservice.go on lines 47..50
      p2p/p2pmock/mock_internalservice.go on lines 61..64
      p2p/p2pmock/mock_internalservice.go on lines 75..78
      p2p/p2pmock/mock_internalservice.go on lines 89..92
      p2p/p2pmock/mock_internalservice.go on lines 103..106
      p2p/p2pmock/mock_internalservice.go on lines 117..120
      p2p/p2pmock/mock_internalservice.go on lines 131..134
      p2p/p2pmock/mock_internalservice.go on lines 145..148
      p2p/p2pmock/mock_io.go on lines 82..85
      p2p/p2pmock/mock_io.go on lines 172..175
      p2p/p2pmock/mock_io.go on lines 224..227
      p2p/p2pmock/mock_listmanager.go on lines 44..47
      p2p/p2pmock/mock_listmanager.go on lines 56..59
      p2p/p2pmock/mock_listmanager.go on lines 83..86
      p2p/p2pmock/mock_listmanager.go on lines 97..100
      p2p/p2pmock/mock_message.go on lines 47..50
      p2p/p2pmock/mock_message.go on lines 61..64
      p2p/p2pmock/mock_message.go on lines 75..78
      p2p/p2pmock/mock_message.go on lines 89..92
      p2p/p2pmock/mock_message.go on lines 103..106
      p2p/p2pmock/mock_message.go on lines 117..120
      p2p/p2pmock/mock_message.go on lines 152..155
      p2p/p2pmock/mock_message.go on lines 166..169
      p2p/p2pmock/mock_message.go on lines 178..181
      p2p/p2pmock/mock_message.go on lines 266..269
      p2p/p2pmock/mock_message.go on lines 313..316
      p2p/p2pmock/mock_metricsman.go on lines 44..47
      p2p/p2pmock/mock_metricsman.go on lines 56..59
      p2p/p2pmock/mock_metricsman.go on lines 113..116
      p2p/p2pmock/mock_metricsman.go on lines 127..130
      p2p/p2pmock/mock_metricsman.go on lines 141..144
      p2p/p2pmock/mock_msgio.go on lines 46..49
      p2p/p2pmock/mock_msgio.go on lines 74..77
      p2p/p2pmock/mock_msgorder.go on lines 47..50
      p2p/p2pmock/mock_msgorder.go on lines 61..64
      p2p/p2pmock/mock_msgorder.go on lines 75..78
      p2p/p2pmock/mock_msgorder.go on lines 89..92
      p2p/p2pmock/mock_msgorder.go on lines 103..106
      p2p/p2pmock/mock_networktransport.go on lines 55..58
      p2p/p2pmock/mock_networktransport.go on lines 69..72
      p2p/p2pmock/mock_networktransport.go on lines 132..135
      p2p/p2pmock/mock_networktransport.go on lines 146..149
      p2p/p2pmock/mock_networktransport.go on lines 174..177
      p2p/p2pmock/mock_networktransport.go on lines 202..205
      p2p/p2pmock/mock_networktransport.go on lines 284..287
      p2p/p2pmock/mock_networktransport.go on lines 298..301
      p2p/p2pmock/mock_networktransport.go on lines 312..315
      p2p/p2pmock/mock_networktransport.go on lines 346..349
      p2p/p2pmock/mock_networktransport.go on lines 372..375
      p2p/p2pmock/mock_networktransport.go on lines 410..413
      p2p/p2pmock/mock_networktransport.go on lines 424..427
      p2p/p2pmock/mock_peerfinder.go on lines 116..119
      p2p/p2pmock/mock_peerfinder.go on lines 201..204
      p2p/p2pmock/mock_peermanager.go on lines 59..62
      p2p/p2pmock/mock_peermanager.go on lines 73..76
      p2p/p2pmock/mock_peermanager.go on lines 87..90
      p2p/p2pmock/mock_peermanager.go on lines 101..104
      p2p/p2pmock/mock_peermanager.go on lines 178..181
      p2p/p2pmock/mock_peermanager.go on lines 192..195
      p2p/p2pmock/mock_peermanager.go on lines 206..209
      p2p/p2pmock/mock_peermanager.go on lines 234..237
      p2p/p2pmock/mock_peermanager.go on lines 272..275
      p2p/p2pmock/mock_peerrole.go on lines 44..47
      p2p/p2pmock/mock_peerrole.go on lines 56..59
      p2p/p2pmock/mock_peerrole.go on lines 82..85
      p2p/p2pmock/mock_protobuf.go on lines 47..50
      p2p/p2pmock/mock_remotepeer.go on lines 84..87
      p2p/p2pmock/mock_remotepeer.go on lines 98..101
      p2p/p2pmock/mock_remotepeer.go on lines 112..115
      p2p/p2pmock/mock_remotepeer.go on lines 126..129
      p2p/p2pmock/mock_remotepeer.go on lines 140..143
      p2p/p2pmock/mock_remotepeer.go on lines 154..157
      p2p/p2pmock/mock_remotepeer.go on lines 168..171
      p2p/p2pmock/mock_remotepeer.go on lines 206..209
      p2p/p2pmock/mock_remotepeer.go on lines 220..223
      p2p/p2pmock/mock_remotepeer.go on lines 232..235
      p2p/p2pmock/mock_remotepeer.go on lines 244..247
      p2p/p2pmock/mock_remotepeer.go on lines 377..380
      p2p/p2pmock/mock_stream.go on lines 51..54
      p2p/p2pmock/mock_stream.go on lines 65..68
      p2p/p2pmock/mock_stream.go on lines 79..82
      p2p/p2pmock/mock_stream.go on lines 93..96
      p2p/p2pmock/mock_stream.go on lines 107..110
      p2p/p2pmock/mock_stream.go on lines 121..124
      p2p/p2pmock/mock_stream.go on lines 150..153
      p2p/p2pmock/mock_stream.go on lines 218..221
      p2p/p2pmock/mock_stream.go on lines 270..273
      p2p/p2pmock/mock_stream.go on lines 284..287
      p2p/p2pmock/mock_stream.go on lines 298..301
      p2p/p2pmock/mock_stream.go on lines 312..315
      p2p/p2pmock/mock_stream.go on lines 326..329
      p2p/p2pmock/mock_stream.go on lines 340..343
      p2p/p2pmock/mock_stream.go on lines 369..372
      p2p/p2pmock/mock_stream.go on lines 383..386
      p2p/p2pmock/mock_stream.go on lines 397..400
      p2p/p2pmock/mock_stream.go on lines 411..414
      p2p/p2pmock/mock_syncmanager.go on lines 131..134
      p2p/p2pmock/mock_syncmanager.go on lines 143..146
      p2p/p2pmock/mock_syncmanager.go on lines 157..160
      p2p/p2pmock/mock_syncmanager.go on lines 209..212
      p2p/p2pmock/mock_syncmanager.go on lines 223..226

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 102.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      There are no issues that match your filters.

      Category
      Status