Beispiel #1
0
        public void TestLogLevel_ShouldtFilterLogLevelWithAttributes_BreadcrumbIsAvailable(LogType testedLevel)
        {
            const string message                             = "message";
            const string attributeName                       = "foo";
            const string attributeValue                      = "bar";
            const int    expectedNumberOfLogs                = 1;
            var          inMemoryBreadcrumbStorage           = new BacktraceInMemoryLogManager();
            var          breadcrumbsManager                  = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);
            var          unityEngineLogLevel                 = breadcrumbsManager.ConvertLogTypeToLogLevel(testedLevel);
            var          logTypeThatUnsupportCurrentTestCase =
                (Enum.GetValues(typeof(UnityEngineLogLevel)) as IEnumerable <UnityEngineLogLevel>)
                .First(n => n == unityEngineLogLevel);

            breadcrumbsManager.EnableBreadcrumbs(ManualBreadcrumbsType, logTypeThatUnsupportCurrentTestCase);
            var result = breadcrumbsManager.Log(message, testedLevel, new Dictionary <string, string>()
            {
                { attributeName, attributeValue }
            });

            Assert.IsTrue(result);
            Assert.AreEqual(expectedNumberOfLogs, inMemoryBreadcrumbStorage.Breadcrumbs.Count);
            var breadcrumb = inMemoryBreadcrumbStorage.Breadcrumbs.ElementAt(0);

            Assert.IsTrue(breadcrumb.Attributes.ContainsKey(attributeName));
            Assert.AreEqual(attributeValue, breadcrumb.Attributes[attributeName]);
        }
Beispiel #2
0
        public void TestLogLogs_ShouldEnableThem_EventsAreSet()
        {
            var inMemoryBreadcrumbStorage = new BacktraceInMemoryLogManager();
            var breadcrumbsManager        = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);
            UnityEngineLogLevel level     = UnityEngineLogLevel.Debug | UnityEngineLogLevel.Error | UnityEngineLogLevel.Fatal | UnityEngineLogLevel.Info | UnityEngineLogLevel.Warning;

            breadcrumbsManager.EnableBreadcrumbs(BacktraceBreadcrumbType.Log, level);

            Assert.IsTrue(breadcrumbsManager.EventHandler.HasRegisteredEvents);
            breadcrumbsManager.UnregisterEvents();
        }
Beispiel #3
0
        public void WarningLogLevel_ShouldFilterWarningLogLevel_BreadcrumbsWasntSave()
        {
            const string message = "message";
            const int    expectedNumberOfLogs                = 0;
            var          inMemoryBreadcrumbStorage           = new BacktraceInMemoryLogManager();
            var          breadcrumbsManager                  = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);
            var          logTypeThatUnsupportCurrentTestCase = UnityEngineLogLevel.Error;

            breadcrumbsManager.EnableBreadcrumbs(ManualBreadcrumbsType, logTypeThatUnsupportCurrentTestCase);
            var result = breadcrumbsManager.Warning(message);

            Assert.IsFalse(result);
            Assert.AreEqual(expectedNumberOfLogs, inMemoryBreadcrumbStorage.Breadcrumbs.Count);
        }
Beispiel #4
0
        public void WarningLogLevel_ShouldntFilterWarningLogLevel_BreadcrumbIsAvailable()
        {
            const string message = "message";
            const int    expectedNumberOfLogs      = 1;
            var          inMemoryBreadcrumbStorage = new BacktraceInMemoryLogManager();
            var          breadcrumbsManager        = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);
            var          supportedLogLevel         = UnityEngineLogLevel.Warning;

            breadcrumbsManager.EnableBreadcrumbs(ManualBreadcrumbsType, supportedLogLevel);

            var result = breadcrumbsManager.Warning(message);

            Assert.IsTrue(result);
            Assert.AreEqual(expectedNumberOfLogs, inMemoryBreadcrumbStorage.Breadcrumbs.Count);
        }
Beispiel #5
0
        public void TestManualLogs_ShouldFilterAllManualLogs_BreadcrumbsWasntSaved(LogType testedLevel)
        {
            const string message = "message";
            const int    expectedNumberOfLogs      = 0;
            var          inMemoryBreadcrumbStorage = new BacktraceInMemoryLogManager();
            var          breadcrumbsManager        = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);
            //anything else than Manual
            var breadcrumbType        = BacktraceBreadcrumbType.Configuration;
            UnityEngineLogLevel level = UnityEngineLogLevel.Debug | UnityEngineLogLevel.Error | UnityEngineLogLevel.Fatal | UnityEngineLogLevel.Info | UnityEngineLogLevel.Warning;

            breadcrumbsManager.EnableBreadcrumbs(breadcrumbType, level);
            var result = breadcrumbsManager.Log(message, testedLevel);

            Assert.IsFalse(result);
            Assert.AreEqual(expectedNumberOfLogs, inMemoryBreadcrumbStorage.Breadcrumbs.Count);
        }
Beispiel #6
0
        public void TestLogLevel_ShouldFilterLogLevel_BreadcrumbIsNotAvailable(LogType testedLevel)
        {
            const string message = "message";
            const int    expectedNumberOfLogs      = 0;
            var          inMemoryBreadcrumbStorage = new BacktraceInMemoryLogManager();
            var          breadcrumbsManager        = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);

            var logTypeThatUnsupportCurrentTestCase =
                (Enum.GetValues(typeof(UnityEngineLogLevel)) as IEnumerable <UnityEngineLogLevel>)
                .First(n => n != breadcrumbsManager.ConvertLogTypeToLogLevel(testedLevel));

            breadcrumbsManager.EnableBreadcrumbs(ManualBreadcrumbsType, logTypeThatUnsupportCurrentTestCase);

            var result = breadcrumbsManager.Log(message, testedLevel);

            Assert.IsFalse(result);
            Assert.AreEqual(expectedNumberOfLogs, inMemoryBreadcrumbStorage.Breadcrumbs.Count);
        }
Beispiel #7
0
        public void TestLogLevel_ShouldtFilterLogLevel_BreadcrumbIsAvailable(LogType testedLevel)
        {
            const string message = "message";
            const int    expectedNumberOfLogs                = 1;
            var          inMemoryBreadcrumbStorage           = new BacktraceInMemoryLogManager();
            var          breadcrumbsManager                  = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);
            var          unityEngineLogLevel                 = breadcrumbsManager.ConvertLogTypeToLogLevel(testedLevel);
            var          logTypeThatUnsupportCurrentTestCase =
                (Enum.GetValues(typeof(UnityEngineLogLevel)) as IEnumerable <UnityEngineLogLevel>)
                .First(n => n == unityEngineLogLevel);

            breadcrumbsManager.EnableBreadcrumbs(ManualBreadcrumbsType, logTypeThatUnsupportCurrentTestCase);
            var result = breadcrumbsManager.Log(message, testedLevel);

            Assert.IsTrue(result);
            Assert.AreEqual(expectedNumberOfLogs, inMemoryBreadcrumbStorage.Breadcrumbs.Count);
            var breadcrumb = inMemoryBreadcrumbStorage.Breadcrumbs.ElementAt(0);

            Assert.AreEqual(message, breadcrumb.Message);
            Assert.AreEqual(unityEngineLogLevel, breadcrumb.Level);
            Assert.AreEqual(BreadcrumbLevel.Manual, breadcrumb.Type);
            Assert.IsNull(breadcrumb.Attributes);
        }
Beispiel #8
0
        public void DebugLogLevel_ShouldntFilterDebugLogLevelWithAttributes_BreadcrumbIsAvailable()
        {
            const string message                   = "message";
            const string attributeName             = "foo";
            const string attributeValue            = "bar";
            const int    expectedNumberOfLogs      = 1;
            var          inMemoryBreadcrumbStorage = new BacktraceInMemoryLogManager();
            var          breadcrumbsManager        = new BacktraceBreadcrumbs(inMemoryBreadcrumbStorage);
            var          supportedLogLevel         = UnityEngineLogLevel.Debug;

            breadcrumbsManager.EnableBreadcrumbs(ManualBreadcrumbsType, supportedLogLevel);
            var result = breadcrumbsManager.Debug(message, new Dictionary <string, string>()
            {
                { attributeName, attributeValue }
            });

            Assert.IsTrue(result);
            Assert.AreEqual(expectedNumberOfLogs, inMemoryBreadcrumbStorage.Breadcrumbs.Count);
            var breadcrumbAttributes = inMemoryBreadcrumbStorage.Breadcrumbs.ElementAt(0).Attributes;

            Assert.IsTrue(breadcrumbAttributes.ContainsKey(attributeName));
            Assert.AreEqual(attributeValue, breadcrumbAttributes[attributeName]);
        }