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
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

init_test.go 1.9KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package record_test
  2. import (
  3. "testing"
  4. "github.com/9seconds/mtg/v2/mtglib/internal/faketls/record"
  5. "github.com/stretchr/testify/suite"
  6. )
  7. type TypeTestSuite struct {
  8. suite.Suite
  9. }
  10. func (suite *TypeTestSuite) TestChangeCipherSpec() {
  11. suite.Contains(record.TypeChangeCipherSpec.String(), "changeCipher")
  12. suite.Contains(record.TypeChangeCipherSpec.String(), "0x14")
  13. suite.NoError(record.TypeChangeCipherSpec.Valid())
  14. }
  15. func (suite *TypeTestSuite) TestHandshake() {
  16. suite.Contains(record.TypeHandshake.String(), "handshake")
  17. suite.Contains(record.TypeHandshake.String(), "0x16")
  18. suite.NoError(record.TypeHandshake.Valid())
  19. }
  20. func (suite *TypeTestSuite) TestApplicationData() {
  21. suite.Contains(record.TypeApplicationData.String(), "applicationData")
  22. suite.Contains(record.TypeApplicationData.String(), "0x17")
  23. suite.NoError(record.TypeApplicationData.Valid())
  24. }
  25. func (suite *TypeTestSuite) TestUnknown() {
  26. value := record.Type(0x20)
  27. suite.Contains(value.String(), "unknown")
  28. suite.Contains(value.String(), "0x20")
  29. suite.Error(value.Valid())
  30. }
  31. type VersionTestSuite struct {
  32. suite.Suite
  33. }
  34. func (suite *VersionTestSuite) Test10() {
  35. suite.Equal("tls1.0", record.Version10.String())
  36. suite.NoError(record.Version10.Valid())
  37. }
  38. func (suite *VersionTestSuite) Test11() {
  39. suite.Equal("tls1.1", record.Version11.String())
  40. suite.NoError(record.Version11.Valid())
  41. }
  42. func (suite *VersionTestSuite) Test12() {
  43. suite.Equal("tls1.2", record.Version12.String())
  44. suite.NoError(record.Version12.Valid())
  45. }
  46. func (suite *VersionTestSuite) Test13() {
  47. suite.Equal("tls1.3", record.Version13.String())
  48. suite.NoError(record.Version13.Valid())
  49. }
  50. func (suite *VersionTestSuite) TestUnknown() {
  51. value := record.Version(900)
  52. suite.Equal("tls?(900)", value.String())
  53. suite.Error(value.Valid())
  54. }
  55. func TestType(t *testing.T) {
  56. t.Parallel()
  57. suite.Run(t, &TypeTestSuite{})
  58. }
  59. func TestVersion(t *testing.T) {
  60. t.Parallel()
  61. suite.Run(t, &VersionTestSuite{})
  62. }