Exemplo n.º 1
0
        public void Setup()
        {
            LoggingHelper.InitConsoleLogger("Test", LoggingLevel.Off);

            var startupConditions = Substitute.For <ICheckAllStartupConditions>();
            var starter           = Substitute.For <IMaybePipedApplicationStarter>();

            starter.StartupConditions.Returns(startupConditions);

            _resolver = Substitute.For <IAppStartResolver>();
            // We need some special syntax here to make NSubsitute work here: .Returns(x => new MainWindowStart(...));
            _resolver.ResolveAppStart <MainWindowStart>().Returns(x => new MainWindowStart(null, starter, Substitute.For <IPdfArchitectCheck>(), Substitute.For <IMainWindowThreadLauncher>()));
            _resolver.ResolveAppStart <DragAndDropStart>().Returns(x => new DragAndDropStart(Substitute.For <IFileConversionAssistant>(), starter));
            _resolver.ResolveAppStart <PrintFileStart>().Returns(x => new PrintFileStart(Substitute.For <ICheckAllStartupConditions>(), Substitute.For <IPrintFileHelper>(), null, Substitute.For <IStoredParametersManager>()));
            _resolver.ResolveAppStart <DirectConversionStart>().Returns(x => new DirectConversionStart(null, starter, null, null));
            _resolver.ResolveAppStart <NewPrintJobStart>().Returns(x => new NewPrintJobStart(null, null, null, starter, null));
            _resolver.ResolveAppStart <InitializeDefaultSettingsStart>().Returns(x => new InitializeDefaultSettingsStart(null, null, null, Substitute.For <IInstallationPathProvider>(), Substitute.For <IDataStorageFactory>()));
            _resolver.ResolveAppStart <StoreLicenseForAllUsersStart>().Returns(x => new StoreLicenseForAllUsersStart(null, null, new InstallationPathProvider("", "", "", RegistryHive.CurrentUser)));

            _pathUtil = Substitute.For <IPathUtil>();
            var directConversionHelper = Substitute.For <IDirectConversionHelper>();

            _appStartFactory = new AppStartFactory(_resolver, _pathUtil, directConversionHelper);

            // TODO: Add tests of thr Run() method as it is testable now
        }
Exemplo n.º 2
0
 public AppStartFactory(IAppStartResolver appStartResolver,
                        IPathUtil pathUtil,
                        IDirectConversionHelper directConversionHelper)
 {
     _appStartResolver       = appStartResolver;
     _pathUtil               = pathUtil;
     _directConversionHelper = directConversionHelper;
 }
Exemplo n.º 3
0
 public AppStartFactory(IAppStartResolver appStartResolver)
 {
     _appStartResolver = appStartResolver;
 }
Exemplo n.º 4
0
        private MaybePipedStart DetermineAppStart(CommandLineParser commandLineParser, IAppStartResolver appStartResolver)
        {
            // let's see if we have a new JobInfo passed as command line argument
            var newJob = FindJobInfoFile(commandLineParser);
            if (newJob != null)
            {
                var newPrintJobStart = appStartResolver.ResolveAppStart<NewPrintJobStart>();
                newPrintJobStart.NewJobInfoFile = newJob;
                return newPrintJobStart;
            }

            // or a PSFile?
            newJob = FindPSFile(commandLineParser);
            if (newJob != null)
            {
                var printerName = FindPrinterName(commandLineParser);

                var newPsJobStart = appStartResolver.ResolveAppStart<NewPsJobStart>();
                newPsJobStart.NewDirectConversionFile = newJob;
                newPsJobStart.PrinterName = printerName;

                return newPsJobStart;
            }

            // or a PdfFile?
            newJob = FindPdfFile(commandLineParser);
            if (newJob != null)
            {
                var printerName = FindPrinterName(commandLineParser);
                var newPdfJobStart = appStartResolver.ResolveAppStart<NewPdfJobStart>();
                newPdfJobStart.NewDirectConversionFile = newJob;
                newPdfJobStart.PrinterName = printerName;

                return newPdfJobStart;
            }

            // ...nope!? We have a MainWindowStart
            return appStartResolver.ResolveAppStart<MainWindowStart>();
        }
Exemplo n.º 5
0
 public AppStartFactory(IAppStartResolver appStartResolver, IParametersManager parametersManager)
 {
     _appStartResolver  = appStartResolver;
     _parametersManager = parametersManager;
 }
Exemplo n.º 6
0
        private MaybePipedStart DetermineAppStart(CommandLineParser commandLineParser, IAppStartResolver appStartResolver)
        {
            // let's see if we have a new JobInfo passed as command line argument
            var newJob = FindJobInfoFile(commandLineParser);

            if (newJob != null)
            {
                var newPrintJobStart = appStartResolver.ResolveAppStart <NewPrintJobStart>();
                newPrintJobStart.NewJobInfoFile = newJob;
                return(newPrintJobStart);
            }

            // or a PSFile?
            newJob = FindPSFile(commandLineParser);
            if (newJob != null)
            {
                var printerName      = FindPrinterName(commandLineParser);
                var profileParameter = "";

                if (string.IsNullOrWhiteSpace(printerName))
                {
                    profileParameter = FindProfileParameter(commandLineParser);
                }

                var outputFileParameter = FindOutputfileParameter(commandLineParser);
                var newPsJobStart       = appStartResolver.ResolveAppStart <NewPsJobStart>();
                newPsJobStart.NewDirectConversionFile = newJob;
                newPsJobStart.PrinterName             = printerName;
                newPsJobStart.OutputFileParameter     = outputFileParameter;
                newPsJobStart.ProfileParameter        = profileParameter;

                return(newPsJobStart);
            }

            // or a PdfFile?
            newJob = FindPdfFile(commandLineParser);
            if (newJob != null)
            {
                var printerName         = FindPrinterName(commandLineParser);
                var outputFileParameter = FindOutputfileParameter(commandLineParser);
                var profileParameter    = "";

                if (string.IsNullOrWhiteSpace(printerName))
                {
                    profileParameter = FindProfileParameter(commandLineParser);
                }

                var newPdfJobStart = appStartResolver.ResolveAppStart <NewPdfJobStart>();
                newPdfJobStart.NewDirectConversionFile = newJob;
                newPdfJobStart.PrinterName             = printerName;
                newPdfJobStart.OutputFileParameter     = outputFileParameter;
                newPdfJobStart.ProfileParameter        = profileParameter;

                return(newPdfJobStart);
            }

            // ...nope!? We have a MainWindowStart
            return(appStartResolver.ResolveAppStart <MainWindowStart>());
        }