2017-08-03 10:08:34 +00:00
|
|
|
package queue
|
|
|
|
|
|
|
|
import (
|
2017-08-04 02:32:31 +00:00
|
|
|
//"git.loafle.net/overflow/overflow_probe/agent_api/observer"
|
|
|
|
//"git.loafle.net/overflow/overflow_probe/agent_api/messages"
|
2017-08-03 10:08:34 +00:00
|
|
|
"log"
|
|
|
|
"reflect"
|
|
|
|
"testing"
|
2017-08-04 02:32:31 +00:00
|
|
|
//"time"
|
2017-08-03 10:08:34 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestNewQueue(t *testing.T) {
|
2017-08-04 02:32:31 +00:00
|
|
|
//senderChanel := make(chan interface{}, 0)
|
|
|
|
//
|
|
|
|
//lq := NewQueue(messages.QUEUE_DATA, 3, senderChanel)
|
|
|
|
//
|
|
|
|
//log.Println(lq)
|
|
|
|
//
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data1111")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data2222")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data3333")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data4444")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data5555")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data6666")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data7777")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data8888")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data9999")
|
|
|
|
//
|
|
|
|
//go GetItemTest(senderChanel)
|
|
|
|
//
|
|
|
|
//time.Sleep(time.Second * 3)
|
|
|
|
//
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data1111")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data2222")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data3333")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data4444")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data5555")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data6666")
|
|
|
|
//observer.Notify(messages.QUEUE_DATA, "data7777")
|
|
|
|
//
|
|
|
|
//time.Sleep(time.Second * 10)
|
|
|
|
//
|
|
|
|
//lq.Close()
|
|
|
|
//close(senderChanel)
|
2017-08-03 10:08:34 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
func GetItemTest(senderChanel chan interface{}) {
|
|
|
|
|
|
|
|
for sc := range senderChanel {
|
|
|
|
items := reflect.ValueOf(sc)
|
|
|
|
if items.Kind() != reflect.Slice {
|
|
|
|
log.Println("ddddd")
|
|
|
|
}
|
|
|
|
//log.Println(items.Len())
|
|
|
|
for i := 0; i < items.Len(); i++ {
|
|
|
|
d := items.Index(i).Elem().Interface()
|
|
|
|
dd := d.(Item)
|
|
|
|
|
|
|
|
log.Printf("data: %s , periorty: %d", dd.Value, dd.Priority)
|
|
|
|
}
|
|
|
|
//fmt.Println(sc)
|
|
|
|
}
|
|
|
|
}
|