Beispiel #1
0
        public void TestCatchExecption()
        {
            string msg;
            var    param    = CreateParam;
            var    log      = MockIlog();
            var    protocol = new Mock <IParallelProtocol>();
            var    floorNum = int.Parse(param["Floor"]);
            var    boardNum = int.Parse(param["Locate"]);

            var parallelProtocol = protocol.Object;
            var board            = new ParallelQsfp28(param, parallelProtocol, log);

            protocol.Setup(m => m.SelectDut(floorNum, boardNum, _seat, out msg)).Returns(true);
            protocol.Setup(m => m.SendPassword(out msg)).Returns(true);
            board.CatchException(_seat);


            protocol.Setup(m => m.SelectDut(floorNum, boardNum, _seat, out msg)).Returns(false);
            protocol.Setup(m => m.SendPassword(out msg)).Returns(true);
            board.CatchException(_seat);

            protocol.Setup(m => m.SelectDut(floorNum, boardNum, _seat, out msg)).Returns(true);
            protocol.Setup(m => m.SendPassword(out msg)).Returns(false);
            board.CatchException(_seat);
        }
Beispiel #2
0
        public void TestConstructDriver()
        {
            var log              = MockIlog();
            var protocol         = new Mock <IParallelProtocol>();
            var parallelProtocol = protocol.Object;
            var param            = CreateParam;
            var board            = new ParallelQsfp28(param, parallelProtocol, log);

            Assert.AreNotEqual(board, null);
        }
Beispiel #3
0
        public void TestVersion()
        {
            var log              = MockIlog();
            var protocol         = new Mock <IParallelProtocol>();
            var parallelProtocol = protocol.Object;
            var param            = CreateParam;
            var board            = new ParallelQsfp28(param, parallelProtocol, log);
            var vsn              = board.GetVersion();

            Assert.AreEqual(vsn, "V1.00");
        }
Beispiel #4
0
        public void TestAddSeat()
        {
            var param            = CreateParam;
            var log              = MockIlog();
            var protocol         = new Mock <IParallelProtocol>();
            var parallelProtocol = protocol.Object;
            var board            = new ParallelQsfp28(param, parallelProtocol, log);

            board.AddSeat(1, "A");
            board.AddSeat(2, "A");
            board.AddSeat(17, "B");
        }
Beispiel #5
0
        public IBoard CreateDriver(string driverType, ILog logger, Dictionary <string, string> param)
        {
            _log = logger;
            IBoard driver = null;

            switch (driverType.Trim())
            {
            case "TEST_TYPE":
                driver = new TestType(param, _log);
                break;

            case "CFP8TOSA":
                driver = new Cfp8Tosa(param, _log);
                break;

            case "TOSA25G":
                driver = new Tosa25G(param, _log);
                break;

            case "QSFP28G_TEC":
                driver = new Qsfp28G(param, _log);
                break;

            case "QSFP28G_NOTEC":
                driver = new Qsfp28GNoTec(param, _log);
                break;

            case "TOSA32G":
                driver = new Tosa32G(param, _log);
                break;

            case "CFP4":
                //driver = new QSFP28GNoTec(param, _log);
                break;

            case "IQMGenI":
                driver = new IqmGenI(param, _log);
                break;

            case "PARALLEL_QSFP28G_INTERNAL":
                var vbmsAddr         = VbmsDriverAddr.Inst();
                var cmd              = VbmsCmd.Inst();
                var parallelProtocol = ParallelProtocolQsfp28G.Inst(vbmsAddr, cmd);
                driver = new ParallelQsfp28(param, parallelProtocol, _log);
                break;

            default:
                _log.Error("BiBsp don't support the driver:" + driverType);
                break;
            }
            return(driver);
        }
Beispiel #6
0
        public void TestDisableBoard()
        {
            var msg = "ok";

            var param    = CreateParam;
            var log      = MockIlog();
            var protocol = new Mock <IParallelProtocol>();
            var floorNum = int.Parse(param["Floor"]);
            var boardNum = int.Parse(param["Locate"]);

            var parallelProtocol = protocol.Object;
            var board            = new ParallelQsfp28(param, parallelProtocol, log);

            protocol.Setup(m => m.SelectDut(floorNum, boardNum, _seat, out msg)).Returns(true);
            protocol.Setup(m => m.EnableVoltage(_seat, true, out msg)).Returns(true);

            var data = Encoding.Default.GetBytes("ABCDEFG");

            protocol.Setup(m => m.ReadParam(CmdType.ReadSn, out data, out msg)).Returns(true);
            var snSet = board.GetSnSet();

            Assert.AreEqual(true, (snSet.Count == 1));
            Assert.AreEqual(snSet[_seat], "ABCDEFG");

            snSet.Clear();
            data = Encoding.Default.GetBytes("       ");
            protocol.Setup(m => m.ReadParam(CmdType.ReadSn, out data, out msg)).Returns(true);
            snSet = board.GetSnSet();
            Assert.AreEqual(true, (snSet.Count == 0));


            data = Encoding.Default.GetBytes("ABCDEFG");
            snSet.Clear();
            protocol.Setup(m => m.SelectDut(floorNum, boardNum, _seat, out msg)).Returns(false);
            protocol.Setup(m => m.ReadParam(CmdType.ReadSn, out data, out msg)).Returns(true);
            snSet = board.GetSnSet();
            Assert.AreEqual(true, (snSet.Count == 0));

            snSet.Clear();
            protocol.Setup(m => m.SelectDut(floorNum, boardNum, _seat, out msg)).Returns(true);
            protocol.Setup(m => m.EnableVoltage(_seat, true, out msg)).Returns(false);
            protocol.Setup(m => m.ReadParam(CmdType.ReadSn, out data, out msg)).Returns(true);
            Assert.AreEqual(true, (snSet.Count == 0));


            snSet.Clear();
            protocol.Setup(m => m.SelectDut(floorNum, boardNum, _seat, out msg)).Returns(true);
            protocol.Setup(m => m.EnableVoltage(_seat, true, out msg)).Returns(true);
            protocol.Setup(m => m.ReadParam(CmdType.ReadSn, out data, out msg)).Returns(false);
            Assert.AreEqual(true, (snSet.Count == 0));
        }
Beispiel #7
0
        public void TestCheckCOnnections()
        {
            var param            = CreateParam;
            var log              = MockIlog();
            var protocol         = new Mock <IParallelProtocol>();
            var parallelProtocol = protocol.Object;
            var board            = new ParallelQsfp28(param, parallelProtocol, log);
            var connections      = board.CheckConnections();

            foreach (var con in connections)
            {
                Assert.AreEqual(true, con);
            }
        }