| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- package modules
-
- //
- //import (
- // "fmt"
- // "github.com/stretchr/testify/assert"
- // "math/rand"
- // "strconv"
- // "testing"
- // "time"
- //)
- //
- //
- //func makePubData(IsAlpha bool) MsgUnit{
- // rand.Seed(time.Now().UnixNano())
- // // Set Ipaddr
- // msg := Message{"", "1.0", "", PM}
- // for i := 0; i < 4; i++{
- // itoa := strconv.Itoa(rand.Int() % 256)
- // msg.From += itoa
- // if i != 3{
- // msg.From += "."
- // }
- // }
- //
- // // Set Time
- // msg.Time += strconv.Itoa(rand.Int()%24) + ":"
- // msg.Time += strconv.Itoa(rand.Int()%60)
- //
- // Topic := []int64{}
- // Value := []int64{}
- // content := []int64{}
- //
- // // Set Topic
- // topicLen := rand.Int() % 10 + 1
- // for i := 0 ; i < topicLen; i++{
- // Topic = append(Topic, rand.Int63())
- // }
- //
- // // Set Value
- // if IsAlpha {
- // valueLen := rand.Int() % 10 + 1
- // for i := 0 ; i < valueLen; i++{
- // Value = append(Value, rand.Int63())
- // }
- // } else {
- // Topic = append(Topic, rand.Int63())
- // Value = append(Value, rand.Int63())
- // }
- //
- // // Set content
- // contentLen := rand.Int() % 10
- // for i := 0; i < contentLen; i++{
- // content = append(content, rand.Int63())
- // }
- //
- // return &PublishMsg{msg, Topic, Value, content}
- //}
- //
- //func makeSubData(IsAlpha bool, Topic []int64, Value []int64) MsgUnit{
- // rand.Seed(time.Now().UnixNano())
- // // Set Ipaddr
- // msg := Message{"", "1.0", "", SM}
- // for i := 0; i < 4; i++{
- // itoa := strconv.Itoa(rand.Int() % 256)
- // msg.From += itoa
- // if i != 3{
- // msg.From += "."
- // }
- // }
- //
- // // Set Time
- // msg.Time += strconv.Itoa(rand.Int()%24) + ":"
- // msg.Time += strconv.Itoa(rand.Int()%60)
- //
- // // Set Topic, Value, Operator
- // Operator := []string{}
- // candOp := []string{">", ">=", "<=" ,"<", "=="}
- // logicalOp := []string{"&&", "||"}
- //
- // if IsAlpha {
- // Operator = append(Operator, "==")
- // } else {
- // randSeed := rand.Int() % 2
- // if randSeed == 0 {
- // lop := rand.Int() % 2
- // Operator = append(Operator, candOp[rand.Int()%2])
- // if lop == 0 {
- // Operator = append(Operator, logicalOp[0])
- // for {
- // x := rand.Int63()
- // if x > Value[0] {
- // Value = append(Value, x)
- // break
- // }
- // }
- // } else {
- // Operator = append(Operator, logicalOp[1])
- // Value = append(Value, rand.Int63())
- // }
- // Operator = append(Operator, candOp[rand.Int()%2+2])
- // } else {
- // op := candOp[rand.Int()%5]
- // Operator = append(Operator, op)
- // }
- // }
- //
- // return &SubscriptionMsg{msg, Topic, Value, Operator, IsAlpha}
- //}
- //
- //func Test_matching(t *testing.T) {
- // rand.Seed(time.Now().UnixNano())
- // assert.Equal(t, 1, 1)
- // mos := Moscato{ sub_mng: *newSubmng(),}
- // mos.queue.queue_init()
- //
- // // 1. Make Publish Data
- // pubLen := rand.Int()%100 + 1 // Set dataLength
- // var pubDataList []MsgUnit
- //
- // for i := 0; i < pubLen; i++{
- // if i % 2 == 1 {
- // msg := makePubData(true)
- // mos.queue.push(msg)
- // pubDataList = append(pubDataList, msg)
- // } else{
- // msg := makePubData(false)
- // mos.queue.push(msg)
- // pubDataList = append(pubDataList, msg)
- // }
- // }
- //
- // // 2. Creates subscription data with (the same <Topic, Value> or (the same <Topic, difValue>
- // // And Add Subscription
- // subLen := pubLen
- // var subDataList []MsgUnit
- // for i := 0; i < subLen; i++{
- // Topic := pubDataList[i].(*PublishMsg).Topic
- // Value := pubDataList[i].(*PublishMsg).Value
- // if i % 2 == 1{
- // msg := makeSubData(true, Topic, Value)
- // mos.sub_mng.addSubscription(msg)
- // subDataList = append(subDataList, msg)
- //
- // } else{
- // msg := makeSubData(false, Topic, Value)
- // mos.sub_mng.addSubscription(msg)
- // subDataList = append(subDataList, msg)
- // }
- // }
- //
- // // 3. Watch Data
- //
- // // fmt.Println("PubData")
- // // watchData(pubDataList, pubLen, false)
- // // fmt.Println("\nSubData")
- // // watchData(subDataList, subLen, true)
- //
- // // 4. Matching
- // for i := 0; i < pubLen; i++ {
- // matching, pubmsg, err := mos.MatchingManager.Matching(&mos.queue, &mos.sub_mng)
- //
- // // Check if matching is correct
- // assert.Equal(t, nil, err)
- //
- // fmt.Println("matching list = ", matching)
- // fmt.Println("pub msg = ", pubmsg)
- // fmt.Println("err ?= ", err)
- // }
- //}
|