Beispiel #1
0
 public FilterWindowControlViewModel([NotNull] IFilterController filterController)
 {
     _filterController   = filterController ?? throw new ArgumentNullException(nameof(filterController));
     ApplyFiltersCommand = new RelayCommand <object>(obj => OnApplyFiltersCommand());
     AddFilterCommand    = new RelayCommand <FilterControlViewModel>(OnAddFilterCommand);
     RemoveFilterCommand = new RelayCommand <FilterControlViewModel>(OnRemoveFilterCommand);
 }
 public MainWindow()
 {
     InitializeComponent();
     controller           = new Controller();
     controller.OnReload += (s, e) => ReDraw();
     filterController     = new FilterFileController();
     signalController     = new SignalFileController();
 }
        public void ExportControllerExportsFiles()
        {
            // INITIALISE an IReadController, IWriteController, IFilterController, IReportController as their respective
            // concrete implementations, ReadController, WriteController, FilterController and ReportController
            readController   = new ReadController();
            writeController  = new WriteController();
            filterController = new FilterController();
            reportController = new ReportController();

            // INITIALISE the IExportController
            exportController = new ExportController(readController, writeController, filterController, reportController);

            conversationConfig = new CommandLineArgumentParser().ParseCommandLineArguments(new string[] { "chat.txt", "chatE.json" }, filterController);

            exportController.ExportConversation(conversationConfig.inputFilePath, conversationConfig.outputFilePath);

            var serializedConversation = new StreamReader(new FileStream("chatE.json", FileMode.Open)).ReadToEnd();

            Conversation savedConversation = JsonConvert.DeserializeObject <Conversation>(serializedConversation);

            Assert.That(savedConversation.Name, Is.EqualTo("My Conversation"));

            var messages = savedConversation.Messages.ToList();

            Assert.That(savedConversation.Report.mostActiveUser, Is.EqualTo("angus"));

            Assert.That(savedConversation.Report.userActivityRanking[0], Is.EqualTo("Rank 1 is angus with 4 messages"));
            Assert.That(savedConversation.Report.userActivityRanking[1], Is.EqualTo("Rank 2 is bob with 3 messages"));
            Assert.That(savedConversation.Report.userActivityRanking[2], Is.EqualTo("Rank 3 is mike with 2 messages"));

            Assert.That(messages[0].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470901)));
            Assert.That(messages[0].SenderId, Is.EqualTo("bob"));
            Assert.That(messages[0].Content, Is.EqualTo("Hello there!"));

            Assert.That(messages[1].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470905)));
            Assert.That(messages[1].SenderId, Is.EqualTo("mike"));
            Assert.That(messages[1].Content, Is.EqualTo("how are you?"));

            Assert.That(messages[2].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470906)));
            Assert.That(messages[2].SenderId, Is.EqualTo("bob"));
            Assert.That(messages[2].Content, Is.EqualTo("I'm good thanks, do you like pie?"));

            Assert.That(messages[3].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470910)));
            Assert.That(messages[3].SenderId, Is.EqualTo("mike"));
            Assert.That(messages[3].Content, Is.EqualTo("no, let me ask Angus..."));

            Assert.That(messages[4].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470912)));
            Assert.That(messages[4].SenderId, Is.EqualTo("angus"));
            Assert.That(messages[4].Content, Is.EqualTo("Hell yes! Are we buying some pie?"));

            Assert.That(messages[5].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470914)));
            Assert.That(messages[5].SenderId, Is.EqualTo("bob"));
            Assert.That(messages[5].Content, Is.EqualTo("No, just want to know if there's anybody else in the pie society..."));

            Assert.That(messages[6].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470915)));
            Assert.That(messages[6].SenderId, Is.EqualTo("angus"));
            Assert.That(messages[6].Content, Is.EqualTo("YES! I'm the head pie eater there..."));
        }
Beispiel #4
0
 /// <summary>
 /// CONSTRUCTOR for ExportController class, takes 2 params
 /// </summary>
 /// <param name="readController"> <see cref="IReadController"> variable </param>
 /// <param name="writeController"> <see cref="IWriteController"> variable </param>
 public ExportController(IReadController readController, IWriteController writeController,
                         IFilterController filterController, IReportController reportController)
 {
     // SET the read, write and filter controller variables passed in
     // to their respective local variables in this class
     this.readController   = readController;
     this.writeController  = writeController;
     this.filterController = filterController;
     this.reportController = reportController;
 }
Beispiel #5
0
        public MockFilterController(IFilterController filterController)
        {
            _filterController = filterController;

            // Adding Mock Filter
            _filterController.Filters.Add(new ComparableFilter <DateTime>(telemetry => telemetry.Timestamp, new DateTime(2018, 2, 22, 17, 20, 40))
            {
                FilterKind = FilterKind.IsGreaterEqualThen
            });

            _filterController.FiltersChanged += FiltersChanged;
        }
Beispiel #6
0
        public FiltersView(IFilterController filterController, IProjectController projectController)
        {
            this.filterController = filterController;

            InitializeComponent();

            filtersListBox.DisplayMember = "FilterName";

            WireUpHandler(projectController);

            LoadFilters(projectController);
        }
Beispiel #7
0
        public FiltersView(IFilterController filterController, IProjectController projectController)
        {
            this.filterController = filterController;

            InitializeComponent();

            filtersListBox.DisplayMember = "FilterName";

            WireUpHandler(projectController);

            LoadFilters(projectController);
        }
Beispiel #8
0
        public void SetUp()
        {
            windowManager = MockRepository.GenerateStub <IWindowManager>();
            windowManager.Stub(wm => wm.Register(Arg <string> .Is.Anything, Arg <GallioAction> .Is.Anything))
            .Do((GallioAction <string, GallioAction>)((i, a) => a()));

            menuManager = MockRepository.GenerateStub <IMenuManager>();
            windowManager.Stub(wm => wm.MenuManager).Return(menuManager);

            filterController = MockRepository.GenerateStub <IFilterController>();

            projectController = MockRepository.GenerateStub <IProjectController>();
            projectController.Stub(pc => pc.TestFilters).Return(new Observable <IList <FilterInfo> >(new List <FilterInfo>()));

            filtersPackage = new FiltersPackage(windowManager, filterController, projectController);
        }
        public void SetUp()
        {
            windowManager = MockRepository.GenerateStub<IWindowManager>();
            windowManager.Stub(wm => wm.Register(Arg<string>.Is.Anything, Arg<Action>.Is.Anything))
                .Do((Action<string, Action>)((i, a) => a()));

            menuManager = MockRepository.GenerateStub<IMenuManager>();
            windowManager.Stub(wm => wm.MenuManager).Return(menuManager);

            filterController = MockRepository.GenerateStub<IFilterController>();

            projectController = MockRepository.GenerateStub<IProjectController>();
            projectController.Stub(pc => pc.TestFilters).Return(new Observable<IList<FilterInfo>>(new List<FilterInfo>()));

            filtersPackage = new FiltersPackage(windowManager, filterController, projectController);
        }
        public void ExportControllerExportsFilesWithMultipleFilters2()
        {
            // INITIALISE an IReadController, IWriteController, IFilterController, IReportController as their respective
            // concrete implementations, ReadController, WriteController, FilterController and ReportController
            readController   = new ReadController();
            writeController  = new WriteController();
            filterController = new FilterController();
            reportController = new ReportController();

            // INITIALISE the IExportController
            exportController = new ExportController(readController, writeController, filterController, reportController);

            conversationConfig =
                new CommandLineArgumentParser().ParseCommandLineArguments(
                    new string[] { "chat.txt", "chatH.json", "-filter-user", "bob", "-filter-blacklist-word", "pie|society", "-filter-obfuscate" },
                    filterController);

            exportController.ExportConversation(conversationConfig.inputFilePath, conversationConfig.outputFilePath);

            var serializedConversation = new StreamReader(new FileStream("chatH.json", FileMode.Open)).ReadToEnd();

            Conversation savedConversation = JsonConvert.DeserializeObject <Conversation>(serializedConversation);

            Assert.That(savedConversation.Name, Is.EqualTo("My Conversation"));

            var messages = savedConversation.Messages.ToList();

            Assert.That(savedConversation.Report.mostActiveUser, Is.EqualTo("User3071"));

            Assert.That(savedConversation.Report.userActivityRanking[0], Is.EqualTo("Rank 1 is User3071 with 3 messages"));

            Assert.That(messages[0].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470901)));
            Assert.That(messages[0].SenderId, Is.EqualTo("User3071"));
            Assert.That(messages[0].Content, Is.EqualTo("Hello there!"));

            Assert.That(messages[1].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470906)));
            Assert.That(messages[1].SenderId, Is.EqualTo("User3071"));
            Assert.That(messages[1].Content, Is.EqualTo("I'm good thanks, do you like \\*redacted\\*?"));

            Assert.That(messages[2].Timestamp, Is.EqualTo(DateTimeOffset.FromUnixTimeSeconds(1448470914)));
            Assert.That(messages[2].SenderId, Is.EqualTo("User3071"));
            Assert.That(messages[2].Content, Is.EqualTo("No, just want to know if there's anybody else in the \\*redacted\\* \\*redacted\\*..."));
        }
 public ImageController(IFilterController filterController, IEdgeDetectionController edgeController)
 {
     this.filterController        = filterController;
     this.edgeDetectionController = edgeController;
     this.image = null;
 }
 public RepositoriesFilterViewController(IFilterController<RepositoriesFilterModel> filterController)
 {
     _filterController = filterController;
 }
 public SourceFilterViewController(IFilterController<SourceFilterModel> filterController)
 {
     _filterController = filterController;
 }
 public IssuesFilterViewController(IFilterController<IssuesFilterModel> filterController)
 {
     _filterController = filterController;
 }
 	public FiltersPackage(IWindowManager windowManager, IFilterController filterController, IProjectController projectController)
     {
         this.windowManager = windowManager;
         this.filterController = filterController;
         this.projectController = projectController;
     }
 public FiltersPackage(IWindowManager windowManager, IFilterController filterController, IProjectController projectController)
 {
     this.windowManager     = windowManager;
     this.filterController  = filterController;
     this.projectController = projectController;
 }
Beispiel #17
0
        /// <summary>
        /// Parses the given <paramref name="arguments"/> into the exporter configuration.
        /// </summary>
        /// <param name="arguments">
        /// The command line arguments.
        /// </param>
        /// <returns>
        /// A <see cref="ConversationExporterConfiguration"/> representing the command line arguments.
        /// </returns>
        public ConversationExporterConfiguration ParseCommandLineArguments(string[] arguments, IFilterController filterController)
        {
            try
            {
                if (arguments.Length > 2)
                {
                    // INITIALISE an array of string, max length 18, gives some over head
                    // for each filter to have an argument passed for it
                    string[] filters = new string[18];
                    // CALL arguments CopyTo method, copying to the array for filters,
                    // starting at index 2 (this is any string after the output file)
                    arguments.CopyTo(filters, 2);
                    // CALL to filterController CheckForFilters method, to let it handle the filters
                    filterController.CheckForFilters(filters);
                }

                return(new ConversationExporterConfiguration(arguments[0], arguments[1]));
            }
            catch (IndexOutOfRangeException inner)
            {
                throw new IndexOutOfRangeException("No output file specified/Not enough arguments passed", inner);
            }
            catch (ArgumentNullException inner)
            {
                throw new ArgumentNullException("No input or output paths were specified", inner);
            }
        }
Beispiel #18
0
 public MethodPerformanceData(IFilterController filterController)
 {
     _filterController = filterController;
     ExecutionTimes.CollectionChanged += (s, e) => OnFilterRenew();
     filterController.FiltersChanged  += (s, e) => OnFilterRenew();
 }