Highly-opinionated (ex-bullshit-free) MTPROTO proxy for Telegram. If you use v1.0 or upgrade broke you proxy, please read the chapter Version 2
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

events_test.go 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package mtglib_test
  2. import (
  3. "net"
  4. "testing"
  5. "time"
  6. "github.com/9seconds/mtg/v2/mtglib"
  7. "github.com/stretchr/testify/suite"
  8. )
  9. type EventsTestSuite struct {
  10. suite.Suite
  11. }
  12. func (suite *EventsTestSuite) TestEventStart() {
  13. evt := mtglib.EventStart{
  14. CreatedAt: time.Now(),
  15. ConnID: "CONNID",
  16. RemoteIP: net.ParseIP("10.0.0.10"),
  17. }
  18. suite.Equal("CONNID", evt.StreamID())
  19. }
  20. func (suite *EventsTestSuite) TestEventFinish() {
  21. evt := mtglib.EventFinish{
  22. CreatedAt: time.Now(),
  23. ConnID: "CONNID",
  24. }
  25. suite.Equal("CONNID", evt.StreamID())
  26. }
  27. func (suite *EventsTestSuite) TestEventConnectedToDC() {
  28. evt := mtglib.EventConnectedToDC{
  29. CreatedAt: time.Now(),
  30. ConnID: "CONNID",
  31. RemoteIP: net.ParseIP("10.0.0.10"),
  32. DC: 3,
  33. }
  34. suite.Equal("CONNID", evt.StreamID())
  35. }
  36. func (suite *EventsTestSuite) TestEventTraffic() {
  37. evt := mtglib.EventTraffic{
  38. CreatedAt: time.Now(),
  39. ConnID: "CONNID",
  40. Traffic: 3,
  41. IsRead: true,
  42. }
  43. suite.Equal("CONNID", evt.StreamID())
  44. }
  45. func (suite *EventsTestSuite) TestEventConcurrencyLimited() {
  46. suite.Empty(mtglib.EventConcurrencyLimited{}.StreamID())
  47. }
  48. func (suite *EventsTestSuite) TestEventIPBlocklisted() {
  49. suite.Empty(mtglib.EventIPBlocklisted{}.StreamID())
  50. }
  51. func TestEvents(t *testing.T) {
  52. t.Parallel()
  53. suite.Run(t, &EventsTestSuite{})
  54. }