public void FakeGetOrCreateChildComponentControlTest()
        {
            var control = new FakeComponentControl("Fake");
            var child   = control.GetOrCreateChildComponentControl(Guid.NewGuid().ToString(), Guid.NewGuid().ToString());

            Assert.NotNull(child);
            Assert.True(child.IsFake());
        }
        public void FakeGetOrCreateUnitTestControlTest()
        {
            var control         = new FakeComponentControl("Fake");
            var unitTestControl = control.GetOrCreateUnitTestControl(Guid.NewGuid().ToString());

            Assert.NotNull(unitTestControl);
            Assert.True(unitTestControl.IsFake());
        }
        public void FakeGetLogTest()
        {
            var control    = new FakeComponentControl("Fake");
            var logControl = control.Log;

            Assert.NotNull(logControl);
            Assert.True(logControl.IsFake());
        }
        public void FakeTypeTest()
        {
            var control = new FakeComponentControl("Fake");
            var type    = control.Type;

            Assert.NotNull(type);
            Assert.True(type.IsFake());
        }
        public void FakeAddComponentEventTest()
        {
            var control = new FakeComponentControl("Fake");

            Assert.True(control.IsFake());
            var eventObj = control.AddComponentEvent(Guid.NewGuid().ToString(), string.Empty);

            Assert.NotNull(eventObj);
        }
 protected CacheStorageBaseT()
 {
     _maxCount              = 20 * 1000;
     BeginUnloadCount       = 10 * 1000;
     StopUnloadCount        = 5 * 1000;
     ComponentControl       = new FakeComponentControl("FakeCacheControl");
     _saveChangesLoopWorker = new SingleThreadWorker(SaveChangesLoop);
     _unloadDataLoopWorker  = new SingleThreadWorker(UnloadDataLoop);
 }
        public void FakeSendComponentEventTest()
        {
            var control = new FakeComponentControl("Fake");

            Assert.True(control.IsFake());
            var eventObj = control.CreateComponentEvent(Guid.NewGuid().ToString());
            var response = eventObj.Send();

            Assert.False(response.Success);
        }
        public void FakeCreateAndAddApplicationErrorTest()
        {
            var control = new FakeComponentControl("Fake");

            Assert.True(control.IsFake());
            var eventObj = control.CreateApplicationError(Guid.NewGuid().ToString());
            var result   = eventObj.Add();

            Assert.NotNull(result);
        }
        public void FakeCreateAndSendApplicationErrorTest()
        {
            var control = new FakeComponentControl("Fake");

            Assert.True(control.IsFake());
            var eventObj = control.CreateApplicationError(Guid.NewGuid().ToString());
            var response = eventObj.Send();

            Assert.False(response.Success);
        }
 public void SqlTimeoutExceptionMessageTest()
 {
     using (var connection = new SqlConnection("Data Source=127.0.0.254;Connection Timeout=1"))
     {
         try
         {
             connection.Open();
         }
         catch (SqlException exception)
         {
             var component       = new FakeComponentControl("me");
             var exceptionRender = new ExceptionRender();
             var errorData       = exceptionRender.GetApplicationErrorData(component, exception);
             Assert.NotNull(errorData.Message);
         }
     }
 }
        public void MTest2()
        {
            var component       = new FakeComponentControl("me");
            var exceptionRender = new ExceptionRender();

            try
            {
                M1(null, null, null);
            }
            catch (Exception exception)
            {
                var    error    = exceptionRender.GetApplicationErrorData(component, exception);
                string joinKey1 = exceptionRender.GetExceptionTypeJoinKey(exception);

                string joinKey2 =
                    @"System.Exception
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.M1(String, Exception, FileInfo)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.MTest2()
System.Exception
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.M2()
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.M1(String, Exception, FileInfo)
System.Exception
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.M3()
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.M2()";

                Assert.Equal(joinKey1, joinKey2);

                var hash1 = HashHelper.GetInt32Dig5(joinKey2);

                var hash2 = exceptionRender.GetExceptionTypeCode(exception);
                Assert.Equal(hash1, hash2);

                Assert.True(error.TypeSystemName.Contains(hash1));

                Assert.Equal(
                    "Exception в SystemNameTests.M1(String, Exception, FileInfo) (hash 24824)",
                    error.TypeSystemName
                    );

                Assert.Equal(
                    "Exception в SystemNameTests.M1",
                    error.TypeDisplayName
                    );
            }
        }
        public void FileLineTest()
        {
            var exceptionRender = new ExceptionRender();
            var component       = new FakeComponentControl("me");

            // исключение в X1
            try
            {
                TypeSystemNameHelper.Throw("asas", null);
            }
            catch (Exception exception)
            {
                var    error    = exceptionRender.GetApplicationErrorData(component, exception, "My test error");
                string joinKey1 = exceptionRender.GetExceptionTypeJoinKey(exception);

                string joinKey2 =
                    @"System.ArgumentNullException
 ApiTests_1._0.Events.ApplicationErrors.TypeSystemNameHelper.Throw(String, String)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.FileLineTest()";

                Assert.Equal(joinKey2, joinKey1);

                var hash1 = HashHelper.GetInt32Dig5(joinKey2);

                var hash2 = exceptionRender.GetExceptionTypeCode(exception);
                Assert.Equal(hash1, hash2);

                Assert.True(error.TypeSystemName.Contains(hash1));

                Assert.Equal(
                    "My test error: ArgumentNullException в TypeSystemNameHelper.Throw(String, String) (hash 79602)",
                    error.TypeSystemName
                    );

                Assert.Equal(
                    "My test error: ArgumentNullException в TypeSystemNameHelper.Throw",
                    error.TypeDisplayName
                    );
            }
        }
        public void XTest()
        {
            var exceptionRender = new ExceptionRender();
            var component       = new FakeComponentControl("me");

            // исключение в X1
            try
            {
                X1(null, null, null);
            }
            catch (Exception exception)
            {
                var    error    = exceptionRender.GetApplicationErrorData(component, exception, "My test error");
                string joinKey1 = exceptionRender.GetExceptionTypeJoinKey(exception);

                string joinKey2 =
                    @"System.ArgumentException
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.X1(String, Exception, FileInfo)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.XTest()";

                Assert.Equal(joinKey1, joinKey2);

                var hash1 = HashHelper.GetInt32Dig5(joinKey2);

                var hash2 = exceptionRender.GetExceptionTypeCode(exception);
                Assert.Equal(hash1, hash2);

                Assert.True(error.TypeSystemName.Contains(hash1));

                Assert.Equal(
                    "My test error: ArgumentException в SystemNameTests.X1(String, Exception, FileInfo) (hash 83220)",
                    error.TypeSystemName
                    );

                Assert.Equal(
                    "My test error: ArgumentException в SystemNameTests.X1",
                    error.TypeDisplayName
                    );
            }

            // поймать StackOverflowException нельзя... пипец какой то

            // вызов x1=>x2=>x3 (последний кидает исключение)
            try
            {
                X1("2", null, null);
            }
            catch (Exception exception)
            {
                var error = exceptionRender.GetApplicationErrorData(component, exception, "My test error");

                string joinKey1 = exceptionRender.GetExceptionTypeJoinKey(exception);

                string joinKey2 =
                    @"System.ArgumentNullException
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.X3(String)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.X2(String)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.X1(String, Exception, FileInfo)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.XTest()";

                Assert.Equal(joinKey1, joinKey2);

                Assert.Equal(
                    "My test error: ArgumentNullException в SystemNameTests.X3(String) (hash 14446)",
                    error.TypeSystemName
                    );

                Assert.Equal(
                    "My test error: ArgumentNullException в SystemNameTests.X3",
                    error.TypeDisplayName
                    );
            }

            // вызов x1=>x3 (последний кидает исключение)
            try
            {
                X1("3", null, null);
            }
            catch (Exception exception)
            {
                var error = exceptionRender.GetApplicationErrorData(component, exception, "My test error");

                string joinKey1 = exceptionRender.GetExceptionTypeJoinKey(exception);

                string joinKey2 =
                    @"System.ArgumentNullException
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.X3(String)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.X1(String, Exception, FileInfo)
 ApiTests_1._0.Events.ApplicationErrors.SystemNameTests.XTest()";

                Assert.Equal(joinKey1, joinKey2);

                Assert.Equal(
                    "My test error: ArgumentNullException в SystemNameTests.X3(String) (hash 02471)",
                    error.TypeSystemName
                    );

                Assert.Equal(
                    "My test error: ArgumentNullException в SystemNameTests.X3",
                    error.TypeDisplayName
                    );
            }
        }