public void ReadDataDisconnectedTest()
        {
            string   _fileName = @"TestingData\g1765xa1.1";
            FileInfo _testFile = new FileInfo(_fileName);

            Assert.IsTrue(File.Exists(_fileName));
            using (LocalTextReaderApplicationLayerMaster _textReader = LocalTextReaderApplicationLayerMaster.Instance(5000))
            {
                for (int i = 0; i < 2; i++)
                {
                    Assert.AreEqual <TConnectReqRes>(TConnectReqRes.Success, _textReader.ConnectReq(RemoteAddress.Instance(_fileName)));
                    Assert.IsTrue(_textReader.Connected);
                    Assert.AreEqual <AL_ReadData_Result>(AL_ReadData_Result.ALRes_DatTransferErrr, _textReader.ReadData(new TestBlockDescription(0, 39, 0), 0, out IReadValue _value, 0));
                    string[] _content = File.ReadAllLines(_fileName);
                    File.WriteAllLines(_fileName, _content);
                    Thread.Sleep(3000);
                    Assert.AreEqual <AL_ReadData_Result>(AL_ReadData_Result.ALRes_Success, _textReader.ReadData(new TestBlockDescription(0, 39, 0), 0, out _value, 0));
                    Assert.IsNotNull(_value);
                    _value.ReturnEmptyEnvelope();
                    Thread.Sleep(30000);
                    Assert.AreEqual <AL_ReadData_Result>(AL_ReadData_Result.ALRes_DisInd, _textReader.ReadData(new TestBlockDescription(0, 39, 0), 0, out _value, 0));
                    Assert.IsFalse(_textReader.Connected);
                }
                Assert.AreEqual <int>(18, _textReader.TestTraceSource.TraceListener.Count);
            }
        }
 public void DisReqTest()
 {
     using (LocalTextReaderApplicationLayerMaster m_Item2Test = LocalTextReaderApplicationLayerMaster.Instance(10000))
     {
         Assert.AreEqual <TConnectReqRes>(TConnectReqRes.Success, m_Item2Test.ConnectReq(RemoteAddress.Instance(m_TestFileName)));
         Assert.IsTrue(m_Item2Test.Connected);
         m_Item2Test.DisReq();
         Assert.IsFalse(m_Item2Test.Connected);
     }
 }
        public void DisposeTest()
        {
            int _disposedCalled = 0;

            using (LocalComponent _component = new LocalComponent())
            {
                m_Item2Test = LocalTextReaderApplicationLayerMaster.Instance(_component, () => _disposedCalled++, 10000);
            }
            Assert.AreEqual <int>(1, _disposedCalled);
        }
        public void ReadDataTest()
        {
            Stopwatch _sw = new Stopwatch();

            _sw.Start();
            string   _fileName = @"TestingData\g1765xa1.1";
            FileInfo _testFile = new FileInfo(_fileName);

            Assert.IsTrue(File.Exists(_fileName));
            using (LocalTextReaderApplicationLayerMaster _textReader = LocalTextReaderApplicationLayerMaster.Instance(10000))
            {
                Assert.AreEqual <TConnectReqRes>(TConnectReqRes.Success, _textReader.ConnectReq(RemoteAddress.Instance(_fileName)));
                Assert.IsTrue(_textReader.Connected);
                Assert.AreEqual <int>(1, _textReader.TestTraceSource.TraceListener.Count, string.Join(",", _textReader.TestTraceSource.TraceListener));
                Assert.AreEqual <AL_ReadData_Result>(AL_ReadData_Result.ALRes_DatTransferErrr, _textReader.ReadData(new TestBlockDescription(0, 39, 0), 0, out IReadValue _value, 0));
                string[] _content = File.ReadAllLines(_fileName);
                Assert.AreEqual <int>(2422, _content.Length);
                File.WriteAllLines(_fileName, _content);
                Thread.Sleep(3000);
                Assert.AreEqual <int>(3, _textReader.TestTraceSource.TraceListener.Count);
                Assert.AreEqual <AL_ReadData_Result>(AL_ReadData_Result.ALRes_Success, _textReader.ReadData(new TestBlockDescription(0, 39, 0), 0, out _value, 0));
                Assert.IsNotNull(_value);
                Assert.AreEqual <int>(0, _value.dataType);
                Assert.IsFalse(_value.InPool);
                Assert.AreEqual <int>(39, _value.length);
                Assert.AreEqual <int>(0, _value.startAddress);
                float _tagValue = 0;
                for (int i = 2; i < _value.length - 3; i++)
                {
                    _tagValue = (float)_value.ReadValue(i, typeof(float));
                }
                _value.ReturnEmptyEnvelope();
                Thread.Sleep(15000);
                Assert.AreEqual <int>(5, _textReader.TestTraceSource.TraceListener.Count);
                Assert.AreEqual <AL_ReadData_Result>(AL_ReadData_Result.ALRes_DatTransferErrr, _textReader.ReadData(new TestBlockDescription(0, 39, 0), 0, out _value, 0));
                _textReader.DisReq();
                Assert.IsFalse(_textReader.Connected);
                Assert.AreEqual <AL_ReadData_Result>(AL_ReadData_Result.ALRes_DisInd, _textReader.ReadData(new TestBlockDescription(0, 39, 0), 0, out _value, 0));
            }
            _sw.Stop();
            Assert.IsTrue(_sw.ElapsedMilliseconds > 4000, $"Elapsed {_sw.ElapsedMilliseconds } mS");
        }
 public void TestInitializeMethod()
 {
     m_Item2Test = LocalTextReaderApplicationLayerMaster.Instance(10000);
 }