package imap

//import (
//	"crypto/tls"
//	"fmt"
//	"git.loafle.net/overflow/overflow_probe/discovery/discovery/scan/matcher/packet"
//	"git.loafle.net/overflow/overflow_probe/discovery/discovery/scan/matcher/scaninfo"
//	"git.loafle.net/overflow/overflow_probe/discovery/discovery/types"
//	"net"
//	"testing"
//)
//
//func ImapRun(client net.Conn, t *testing.T) {
//
//	lm := NewIMAPMatcher()
//
//	port := types.NewPort("143", types.NewHost("192.168.1.215"), types.TYPE_TCP)
//
//	scanInfo := scaninfo.NewServiceScanInfo(port)
//
//	var ipport string
//	ipport = port.Host.Ip + ":" + string(port.Port)
//
//	fmt.Println(ipport)
//	//client, _ := net.Dial("tcp", ipport)
//
//	//defer client.Close()
//
//	bytett := make([]byte, 1024)
//
//	rr, _ := client.Read(bytett)
//
//	bb := lm.Match(0, packet.NewPacket(bytett, rr), scanInfo)
//
//	if bb {
//		t.Log("good!")
//	}
//
//	fmt.Println(lm.PacketCount())
//
//	for ii := 0; ii < lm.PacketCount(); ii++ {
//
//		pack := lm.Packet(ii)
//
//		//fmt.Println(pack)
//
//		client.Write(pack.Buffer)
//
//		bytes := make([]byte, 1024)
//
//		read, _ := client.Read(bytes)
//
//		fmt.Println(cap(bytes))
//
//		//fmt.Println(bytes)
//
//		b := lm.Match(ii+1, packet.NewPacket(bytes, read), scanInfo)
//
//		if b {
//			t.Log("send Good!")
//		}
//
//	}
//	t.Log(scanInfo)
//
//}
//
//func TestIMapTls(t *testing.T) {
//
//	conn, _ := tls.Dial(
//		"tcp",
//		"192.168.1.215:993",
//		&tls.Config{
//			InsecureSkipVerify: true,
//			ServerName:         "192.168.1.215",
//		},
//	)
//
//	defer conn.Close()
//
//	ImapRun(conn, t)
//
//}
//
//func TestIMapNormal(t *testing.T) {
//
//	client, _ := net.Dial("tcp", "192.168.1.215:143")
//
//	defer client.Close()
//
//	ImapRun(client, t)
//
//}
//
//func TestImap(t *testing.T) {
//
//	lm := NewIMAPMatcher()
//
//	port := types.NewPort("143", types.NewHost("192.168.1.215"), types.TYPE_TCP)
//
//	scanInfo := scaninfo.NewServiceScanInfo(port)
//
//	var ipport string
//	ipport = port.Host.Ip + ":" + string(port.Port)
//
//	fmt.Println(ipport)
//	client, _ := net.Dial("tcp", ipport)
//
//	defer client.Close()
//
//	bytett := make([]byte, 1024)
//
//	rr, _ := client.Read(bytett)
//
//	bb := lm.Match(0, packet.NewPacket(bytett, rr), scanInfo)
//
//	if bb {
//		t.Log("good!")
//	}
//
//	fmt.Println(lm.PacketCount())
//
//	for ii := 0; ii < lm.PacketCount(); ii++ {
//
//		pack := lm.Packet(ii)
//
//		//fmt.Println(pack)
//
//		client.Write(pack.Buffer)
//
//		bytes := make([]byte, 1024)
//
//		read, _ := client.Read(bytes)
//
//		fmt.Println(cap(bytes))
//
//		//fmt.Println(bytes)
//
//		b := lm.Match(ii+1, packet.NewPacket(bytes, read), scanInfo)
//
//		if b {
//			t.Log("send Good!")
//		}
//
//	}
//	t.Log(scanInfo)
//}
