示例#1
0
        public static IList <Assembly> GetAssemblies(IList <string> gacFolders, Func <string, bool> assemblyNameCondition, Func <string, bool> assemblyVersionCondition)
        {
            var assemblyList = new List <Assembly>();
            var logger       = new TraceLogger("GSoft.Dynamite", "GSoft.Dynamite", false);

            try
            {
                foreach (string folder in gacFolders)
                {
                    var path = Path.Combine(FolderPath, folder);
                    if (Directory.Exists(path))
                    {
                        string[] assemblyFolders = Directory.GetDirectories(path);

                        foreach (string assemblyFolder in assemblyFolders)
                        {
                            ProcessFolder(assemblyFolder, assemblyNameCondition, assemblyVersionCondition, assemblyList, logger);
                        }
                    }
                }
            }
            catch (Exception error)
            {
                logger.Fatal(string.Format(CultureInfo.InvariantCulture, "GACAssemblyLocator failed to scan GAC. Error: {0}", error.ToString()));
            }

            return(assemblyList);
        }
示例#2
0
        public void FatalMessageWritesAsTraceError()
        {
            string message   = "message";
            string logname   = "logger";
            var    mockTrace = new Mock <ITrace>();

            mockTrace.Setup(x => x.TraceError("[{0}] {1} {2}", "FATAL", logname, message)).Verifiable();
            ITrace trace  = mockTrace.Object;
            ILog   tested = new TraceLogger(logname, trace);

            tested.Fatal(message);
            mockTrace.Verify();
        }
示例#3
0
        public void Test_Fatal()
        {
            StringBuilder sb          = new StringBuilder();
            StringWriter  sw          = new StringWriter(sb);
            TraceSource   traceSource = new TraceSource("Test", SourceLevels.All);

            traceSource.Listeners.Add(new TextWriterTraceListener(sw));
            var traceLogger = new TraceLogger(new IMessageFormatter[] { new StringMessageFormatterMock() }, traceSource);
            var message     = "Test_Fatal";

            traceLogger.Fatal(message);
            Assert.AreEqual("Test Critical: 3 : " + message + Environment.NewLine, sb.ToString());
        }
示例#4
0
        public void FormattedFatalMessageWritesAsTraceInformation()
        {
            string format    = "message {0}";
            string arg       = "theArg";
            string logname   = "logger";
            var    mockTrace = new Mock <ITrace>();

            mockTrace.Setup(x => x.TraceError("[{0}] {1} {2}", "FATAL", logname, string.Format(format, arg))).Verifiable();
            ITrace trace  = mockTrace.Object;
            ILog   tested = new TraceLogger(logname, trace);

            tested.Fatal(format, arg);
            mockTrace.Verify();
        }