package rabbitmq_test import ( "context" "testing" "time" "surveyService/util/rabbitmq" "github.com/streadway/amqp" ) var broker2 = rabbitmq.Broker{ Ssl: false, // bool Username: "md", // string Password: "fNaxiyVthc", // string Server: "47.109.41.4", // string Port: "5672", // string Vhost: "drmd", // string TSL: nil, // *tls.Config ProxyAddr: "", // string Beatime: 15 * time.Second, // time.Duration } func TestRabbitmq(t *testing.T) { conn, err := rabbitmq.New(context.Background(), broker2) if err != nil { t.Fatal(err) } p, err := conn.Producer(nil, &rabbitmq.Queue{ Name: "queue:dev:pdf:builder", Durable: true, AutoDelete: true, }) if err != nil { t.Fatal(err) } err = p.Publish(amqp.Publishing{ ContentType: "text/plain", DeliveryMode: amqp.Persistent, Body: []byte("hello"), }) if err != nil { t.Fatal(err) } err = p.Publish(amqp.Publishing{ ContentType: "text/plain", DeliveryMode: amqp.Persistent, Body: []byte("world"), }) if err != nil { t.Fatal(err) } time.Sleep(time.Second * 1) } func TestRabbitmqDelay(t *testing.T) { conn, err := rabbitmq.New(context.Background(), broker2) if err != nil { t.Fatal(err) } p, err := conn.Producer(&rabbitmq.Exchange{ Name: "queue:webhook:exchange", Kind: amqp.ExchangeDirect, Key: "queue:webhook:routing", }, nil) if err != nil { t.Fatal(err) } err = p.PublishExchange(amqp.Publishing{ Headers: amqp.Table{ "x-delay": int64(10000), }, ContentType: "text/plain", DeliveryMode: amqp.Persistent, Body: []byte("hello world"), }) if err != nil { t.Fatal(err) } time.Sleep(time.Second * 1) }