public void ProcessNewDiagnoseOutputEntry_NewEntryWithNonExistingProcessId_AddsNewProcess()
        {
            var mock = new Mock <IDiagnoseOutputEntry>();

            mock.Setup(x => x.ProcessId).Returns(1234);
            mock.Setup(x => x.ThreadNumber).Returns(1);
            mock.Setup(x => x.Type).Returns(DiagnoseType.SingleOutput);
            mock.Setup(x => x.Duration).Returns(2);
            mock.Setup(x => x.Gap).Returns(3);

            var sequenceDiagramViewModel = new SequenceDiagramViewModel();

            sequenceDiagramViewModel.ProcessNewDiagnoseOutputEntry(mock.Object);
            sequenceDiagramViewModel.Processes.Should().Contain(x => x.ProcessId == 1234);
        }
        public void TestInitialize()
        {
            windowManager     = Substitute.For <WindowManagerEx>();
            endpointExplorer  = Substitute.For <EndpointExplorerViewModel>();
            messageList       = Substitute.For <MessageListViewModel>();
            licenseStatusBar  = Substitute.For <LicenseStatusBar>();
            statusbarManager  = new StatusBarManager(licenseStatusBar);
            eventAggregator   = Substitute.For <IEventAggregator>();
            workNotifier      = Substitute.For <IWorkNotifier>();
            messageFlow       = Substitute.For <MessageFlowViewModel>();
            sagaWindow        = Substitute.For <SagaWindowViewModel>();
            messageBodyView   = Substitute.For <MessageBodyViewModel>();
            messageProperties = Substitute.For <MessagePropertiesViewModel>();
            view                = Substitute.For <IShellViewStub>();
            headerView          = Substitute.For <MessageHeadersViewModel>();
            sequenceDiagramView = Substitute.For <SequenceDiagramViewModel>();
            settingsProvider    = Substitute.For <ISettingsProvider>();
            licenseManager      = Substitute.For <AppLicenseManager>();
            logWindow           = Substitute.For <LogWindowViewModel>();
            settingsProvider.GetSettings <ProfilerSettings>().Returns(DefaultAppSetting());
            app = Substitute.For <IAppCommands>();
            commandLineArgParser = MockEmptyStartupOptions();

            shell = new ShellViewModel(
                app,
                windowManager,
                endpointExplorer,
                messageList,
                () => Substitute.For <ServiceControlConnectionViewModel>(),
                () => Substitute.For <LicenseMessageBoxViewModel>(),
                statusbarManager,
                eventAggregator,
                workNotifier,
                licenseManager,
                messageFlow,
                sagaWindow,
                messageBodyView,
                headerView,
                sequenceDiagramView,
                settingsProvider,
                messageProperties,
                logWindow,
                commandLineArgParser);

            ((IViewAware)shell).AttachView(view);
        }
        public void TestInitialize()
        {
            windowManager = Substitute.For<WindowManagerEx>();
            endpointExplorer = Substitute.For<EndpointExplorerViewModel>();
            messageList = Substitute.For<MessageListViewModel>();
            statusbarManager = Substitute.For<StatusBarManager>();
            eventAggregator = Substitute.For<IEventAggregator>();
            workNotifier = Substitute.For<IWorkNotifier>();
            messageFlow = Substitute.For<MessageFlowViewModel>();
            sagaWindow = Substitute.For<SagaWindowViewModel>();
            messageBodyView = Substitute.For<MessageBodyViewModel>();
            messageProperties = Substitute.For<MessagePropertiesViewModel>();
            view = Substitute.For<IShellViewStub>();
            headerView = Substitute.For<MessageHeadersViewModel>();
            sequenceDiagramView = Substitute.For<SequenceDiagramViewModel>();
            settingsProvider = Substitute.For<ISettingsProvider>();
            licenseManager = Substitute.For<AppLicenseManager>();
            logWindow = Substitute.For<LogWindowViewModel>();
            settingsProvider.GetSettings<ProfilerSettings>().Returns(DefaultAppSetting());
            app = Substitute.For<IAppCommands>();
            commandLineArgParser = MockEmptyStartupOptions();

            shell = new ShellViewModel(
                        app,
                        windowManager,
                        endpointExplorer,
                        messageList,
                        () => Substitute.For<ServiceControlConnectionViewModel>(),
                        () => Substitute.For<LicenseRegistrationViewModel>(),
                        statusbarManager,
                        eventAggregator,
                        workNotifier,
                        licenseManager,
                        messageFlow,
                        sagaWindow,
                        messageBodyView,
                        headerView,
                        sequenceDiagramView,
                        settingsProvider,
                        messageProperties,
                        logWindow,
                        commandLineArgParser);

            ((IViewAware)shell).AttachView(view);
        }
Esempio n. 4
0
        public void TestInitialize()
        {
            WindowManager     = Substitute.For <WindowManagerEx>();
            EndpointExplorer  = Substitute.For <EndpointExplorerViewModel>();
            MessageList       = Substitute.For <MessageListViewModel>();
            StatusbarManager  = Substitute.For <StatusBarManager>();
            EventAggregator   = Substitute.For <IEventAggregator>();
            MessageFlow       = Substitute.For <MessageFlowViewModel>();
            SagaWindow        = Substitute.For <SagaWindowViewModel>();
            MessageBodyView   = Substitute.For <MessageBodyViewModel>();
            MessageProperties = Substitute.For <MessagePropertiesViewModel>();
            View                = Substitute.For <IShellViewStub>();
            HeaderView          = Substitute.For <MessageHeadersViewModel>();
            SequenceDiagramView = Substitute.For <SequenceDiagramViewModel>();
            SettingsProvider    = Substitute.For <ISettingsProvider>();
            LicenseManager      = Substitute.For <AppLicenseManager>();
            LogWindow           = Substitute.For <LogWindowViewModel>();
            SettingsProvider.GetSettings <ProfilerSettings>().Returns(DefaultAppSetting());
            App = Substitute.For <IAppCommands>();
            CommandLineArgParser = MockEmptyStartupOptions();

            shell = new ShellViewModel(
                App,
                WindowManager,
                EndpointExplorer,
                MessageList,
                () => Substitute.For <ServiceControlConnectionViewModel>(),
                () => Substitute.For <LicenseRegistrationViewModel>(),
                StatusbarManager,
                EventAggregator,
                LicenseManager,
                MessageFlow,
                SagaWindow,
                MessageBodyView,
                HeaderView,
                SequenceDiagramView,
                SettingsProvider,
                MessageProperties,
                LogWindow,
                CommandLineArgParser);

            ((IViewAware)shell).AttachView(View);
        }
Esempio n. 5
0
        public SequenceDiagram()
        {
            InitializeComponent();

            ViewModel                = new SequenceDiagramViewModel();
            _orientationLines        = new List <Line>();
            _currentOrientationLine  = null;
            _isControlPressed        = false;
            _orientationLineXBinding = new MultiBinding();
            Binding diagnoseOutputItemsControlActualWidthBinding = new Binding();

            diagnoseOutputItemsControlActualWidthBinding.ElementName = "DiagnoseOutputItemsControl";
            diagnoseOutputItemsControlActualWidthBinding.Path        = new PropertyPath("ActualWidth");
            _orientationLineXBinding.Bindings.Add(diagnoseOutputItemsControlActualWidthBinding);
            Binding scrollViewerViewportWidthBinding = new Binding();

            scrollViewerViewportWidthBinding.ElementName = "ScrollViewer";
            scrollViewerViewportWidthBinding.Path        = new PropertyPath("ViewportWidth");
            _orientationLineXBinding.Bindings.Add(scrollViewerViewportWidthBinding);
            _orientationLineXBinding.Converter = new MaxConverter();
            _orientationLineYBinding           = new MultiBinding();
            Binding lineDurationBinding = new Binding();

            lineDurationBinding.RelativeSource = new RelativeSource(RelativeSourceMode.Self);
            lineDurationBinding.Path           = new PropertyPath("Tag");
            _orientationLineYBinding.Bindings.Add(lineDurationBinding);
            Binding lineZoomBinding = new Binding();

            lineZoomBinding.ElementName = "ZoomSlider";
            lineZoomBinding.Path        = new PropertyPath("Value");
            _orientationLineYBinding.Bindings.Add(lineZoomBinding);
            Binding sequenceDiagramUserControlHeightBinding = new Binding();

            sequenceDiagramUserControlHeightBinding.ElementName = "SequenceDiagramUserControl";
            sequenceDiagramUserControlHeightBinding.Path        = new PropertyPath("ActualHeight");
            _orientationLineYBinding.Bindings.Add(sequenceDiagramUserControlHeightBinding);
            _orientationLineYBinding.Converter = new DurationToHeightConverter();

            MainGrid.ContextMenu = null;
            DiagnoseOutputItemsControl.LayoutUpdated += new EventHandler(DiagnoseOutputItemsControlOnLayoutUpdated);
        }
        public ShellViewModel(
            IAppCommands appCommander,
            IWindowManagerEx windowManager,
            EndpointExplorerViewModel endpointExplorer,
            MessageListViewModel messages,
            Func <ServiceControlConnectionViewModel> serviceControlConnection,
            Func <LicenseRegistrationViewModel> licenceRegistration,
            StatusBarManager statusBarManager,
            IEventAggregator eventAggregator,
            AppLicenseManager licenseManager,
            MessageFlowViewModel messageFlow,
            SagaWindowViewModel sagaWindow,
            MessageBodyViewModel messageBodyViewer,
            MessageHeadersViewModel messageHeadersViewer,
            SequenceDiagramViewModel sequenceDiagramViewer,
            ISettingsProvider settingsProvider,
            MessagePropertiesViewModel messageProperties,
            LogWindowViewModel logWindow,
            CommandLineArgParser comandLineArgParser)
        {
            this.appCommander             = appCommander;
            this.windowManager            = windowManager;
            this.eventAggregator          = eventAggregator;
            this.licenseManager           = licenseManager;
            this.settingsProvider         = settingsProvider;
            this.comandLineArgParser      = comandLineArgParser;
            this.serviceControlConnection = serviceControlConnection;
            this.licenceRegistration      = licenceRegistration;
            MessageProperties             = messageProperties;
            MessageFlow      = messageFlow;
            SagaWindow       = sagaWindow;
            StatusBarManager = statusBarManager;
            EndpointExplorer = endpointExplorer;
            MessageHeaders   = messageHeadersViewer;
            MessageBody      = messageBodyViewer;
            SequenceDiagram  = sequenceDiagramViewer;
            Messages         = messages;
            LogWindow        = logWindow;

            Items.Add(endpointExplorer);
            Items.Add(messages);
            Items.Add(messageHeadersViewer);
            Items.Add(messageBodyViewer);
            Items.Add(messageFlow);

            InitializeAutoRefreshTimer();
            InitializeIdleTimer();

            ShutDownCommand = this.CreateCommand(() => this.appCommander.ShutdownImmediately());
            AboutCommand    = this.CreateCommand(() => this.windowManager.ShowDialog <AboutViewModel>());
            HelpCommand     = this.CreateCommand(() => Process.Start(@"http://docs.particular.net/"));
            ConnectToServiceControlCommand = this.CreateCommand(ConnectToServiceControl, vm => vm.CanConnectToServiceControl);

            RefreshAllCommand = this.CreateCommand(RefreshAll);

            RegisterCommand = this.CreateCommand(() =>
            {
                this.windowManager.ShowDialog <LicenseRegistrationViewModel>();
                DisplayRegistrationStatus();
            });

            ResetLayoutCommand = this.CreateCommand(() => View.OnResetLayout(settingsProvider));

            OptionsCommand = this.CreateCommand(() => windowManager.ShowDialog <OptionsViewModel>());
        }
        public void Constructor_Normal_ProcessesNotNull()
        {
            var sequenceDiagramViewModel = new SequenceDiagramViewModel();

            sequenceDiagramViewModel.Processes.Should().NotBeNull();
        }
        public void TestInitialize()
        {
            WindowManager = Substitute.For<WindowManagerEx>();
            EndpointExplorer = Substitute.For<EndpointExplorerViewModel>();
            MessageList = Substitute.For<MessageListViewModel>();
            StatusbarManager = Substitute.For<StatusBarManager>();
            EventAggregator = Substitute.For<IEventAggregator>();
            MessageFlow = Substitute.For<MessageFlowViewModel>();
            SagaWindow = Substitute.For<SagaWindowViewModel>();
            MessageBodyView = Substitute.For<MessageBodyViewModel>();
            MessageProperties = Substitute.For<MessagePropertiesViewModel>();
            View = Substitute.For<IShellViewStub>();
            HeaderView = Substitute.For<MessageHeadersViewModel>();
            SequenceDiagramView = Substitute.For<SequenceDiagramViewModel>();
            SettingsProvider = Substitute.For<ISettingsProvider>();
            LicenseManager = Substitute.For<AppLicenseManager>();
            LogWindow = Substitute.For<LogWindowViewModel>();
            SettingsProvider.GetSettings<ProfilerSettings>().Returns(DefaultAppSetting());
            App = Substitute.For<IAppCommands>();
            CommandLineArgParser = MockEmptyStartupOptions();

            shell = new ShellViewModel(
                        App,
                        WindowManager,
                        EndpointExplorer,
                        MessageList,
                        () => Substitute.For<ServiceControlConnectionViewModel>(),
                        () => Substitute.For<LicenseRegistrationViewModel>(),
                        StatusbarManager,
                        EventAggregator,
                        LicenseManager,
                        MessageFlow,
                        SagaWindow,
                        MessageBodyView,
                        HeaderView,
                        SequenceDiagramView,
                        SettingsProvider,
                        MessageProperties,
                        LogWindow,
                        CommandLineArgParser);

            ((IViewAware)shell).AttachView(View);
        }