Beispiel #1
0
        public void ParseCandidatesList_WhenCollectionIsNull_TheOutputIsEmpty()
        {
            var initialCounter = new InitialCounter();

            initialCounter.ParseCandidatesList(null);

            Assert.Empty(initialCounter.ToString());
        }
Beispiel #2
0
        public void GetTotalCount_WhenMultipleInitialsCounted_ThenTotalIsCorrect()
        {
            var initalCounter = new InitialCounter();

            var candidates = new List <Candidate>
            {
                new Candidate("Morgan, Arthur"),
                new Candidate("Smith, Andy"),
                new Candidate("Lloyd, Jonathon"),
                new Candidate("Peters, Damian"),
                new Candidate("Jones, David")
            };

            initalCounter.ParseCandidatesList(candidates);

            var result = initalCounter.GetTotalCount();

            Assert.Equal(TestData.GetCleanCandidates.Length, result);
        }
Beispiel #3
0
        public void ParseCandidatesList_WhenCollectionSuppliedIsDirty_ThenOutputIsCorrect()
        {
            var candidates = new List <Candidate>()
            {
                new Candidate("Morgan, Arthur"),
                new Candidate("Smith,,, Andy"),
                new Candidate("Lloyd, Jonathon"),
                new Candidate("Peter"),
                new Candidate("Jones, David")
            };

            const string expectedOutput = "A - 1\r\nD - 1\r\nJ - 1\r\n";

            var initialCounter = new InitialCounter();

            initialCounter.ParseCandidatesList(candidates);

            Assert.Equal(expectedOutput, initialCounter.ToString());
        }
Beispiel #4
0
        private void lvwCategory_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lvwCategory.SelectedItems.Count > 0)
            {
                try
                {
                    PerformanceCounter[] pcs;
                    List <ListViewItem>  lvwInstances = new List <ListViewItem>();
                    List <ListViewItem>  lvwCounters  = new List <ListViewItem>();
                    lvwCounter.Items.Clear();
                    lvwInstance.Items.Clear();

                    PerformanceCounterCategory pcCat = new PerformanceCounterCategory(lvwCategory.SelectedItems[0].Text, txtComputer.Text);
                    string instanceName = "";
                    if (pcCat.CategoryType == PerformanceCounterCategoryType.MultiInstance)
                    {
                        string[] instances = pcCat.GetInstanceNames();
                        foreach (string instanceNameItem in (from s in instances
                                                             orderby s
                                                             select s))
                        {
                            lvwInstances.Add(new ListViewItem(instanceNameItem));
                        }
                        lvwInstance.Items.AddRange(lvwInstances.ToArray());
                        if (instances.Length > 0)
                        {
                            instanceName = pcCat.GetInstanceNames()[0];
                        }
                        pcs = pcCat.GetCounters(instanceName);
                    }
                    else
                    {
                        pcs = pcCat.GetCounters();
                    }
                    foreach (PerformanceCounter pc in (from p in pcs
                                                       orderby p.CounterName
                                                       select p))
                    {
                        lvwCounters.Add(new ListViewItem(pc.CounterName));
                    }
                    lvwCounter.Items.AddRange(lvwCounters.ToArray());
                    if (InitialCounter != null && InitialCounter.Length > 0)
                    {
                        for (int i = 0; i < lvwCounter.Items.Count; i++)
                        {
                            if (lvwCounter.Items[i].Text.ToLower() == InitialCounter.ToLower())
                            {
                                lvwCounter.Items[i].Selected = true;
                                lvwCounter.Items[i].EnsureVisible();
                                break;
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            CheckForValidCounter();
        }
Beispiel #5
0
        private void lvwCategories_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lvwCategories.SelectedItems.Count > 0)
            {
                try
                {
                    PerformanceCounter[] pcs;
                    lvwCounters.Items.Clear();
                    lvwInstances.Items.Clear();
                    string category = lvwCategories.SelectedItems[0].Text;

                    PerformanceCounterCategory pcCat = new PerformanceCounterCategory(category, txtComputer.Text);
                    string instanceName = "";
                    if (pcCat.CategoryType == PerformanceCounterCategoryType.MultiInstance)
                    {
                        string[] instances = pcCat.GetInstanceNames();
                        foreach (string instanceNameItem in (from string s in instances
                                                             orderby s
                                                             select s))
                        {
                            ListViewItem lvi = new ListViewItem(instanceNameItem);
                            if (instanceNameItem.ToLower() == InitialInstance.ToLower())
                            {
                                lvi.Selected = true;
                            }
                            lvwInstances.Items.Add(lvi);
                        }
                        if (instances.Length > 0)
                        {
                            instanceName = pcCat.GetInstanceNames()[0];
                        }
                        pcs = pcCat.GetCounters(instanceName);
                    }
                    else
                    {
                        pcs = pcCat.GetCounters();
                    }
                    foreach (PerformanceCounter pc in (from p in pcs
                                                       orderby p.CounterName
                                                       select p))
                    {
                        ListViewItem lvi = new ListViewItem(pc.CounterName);
                        if (pc.CounterName.ToLower() == InitialCounter.ToLower())
                        {
                            lvi.Selected = true;
                        }
                        lvwCounters.Items.Add(lvi);
                    }
                    if (lvwInstances.SelectedItems.Count > 0)
                    {
                        lvwInstances.SelectedItems[0].EnsureVisible();
                    }
                    if (lvwCounters.SelectedItems.Count > 0)
                    {
                        lvwCounters.SelectedItems[0].EnsureVisible();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            CheckForValidCounter();
        }
Beispiel #6
0
        private void cboCategory_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (cboCategory.Text.Length > 0)
            {
                try
                {
                    PerformanceCounter[] pcs;
                    cboCounter.Items.Clear();
                    cboCounter.Text = "";
                    cboInstance.Items.Clear();
                    cboInstance.Text = "";

                    PerformanceCounterCategory pcCat = new PerformanceCounterCategory(cboCategory.Text, txtComputer.Text);
                    string instanceName = "";
                    if (pcCat.CategoryType == PerformanceCounterCategoryType.MultiInstance)
                    {
                        string[] instances = pcCat.GetInstanceNames();
                        foreach (string instanceNameItem in instances)
                        {
                            cboInstance.Items.Add(instanceNameItem);
                        }
                        if (instances.Length > 0)
                        {
                            instanceName = pcCat.GetInstanceNames()[0];
                        }
                        pcs = pcCat.GetCounters(instanceName);
                    }
                    else
                    {
                        pcs = pcCat.GetCounters();
                    }
                    foreach (PerformanceCounter pc in pcs)
                    {
                        cboCounter.Items.Add(pc.CounterName);
                    }
                    if (InitialCounter != null && InitialCounter.Length > 0)
                    {
                        for (int i = 0; i < cboCounter.Items.Count; i++)
                        {
                            if (cboCounter.Items[i].ToString().ToLower() == InitialCounter.ToLower())
                            {
                                cboCounter.SelectedIndex = i;
                                break;
                            }
                        }
                    }
                    if (InitialInstance != null && InitialInstance.Length > 0)
                    {
                        for (int i = 0; i < cboInstance.Items.Count; i++)
                        {
                            if (cboInstance.Items[i].ToString().ToLower() == InitialInstance.ToLower())
                            {
                                cboInstance.SelectedIndex = i;
                                break;
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            CheckForValidCounter();
        }
Beispiel #7
0
 public string GetCandidatesInitialCountOutput()
 {
     _initialCounter = new InitialCounter();
     _initialCounter.ParseCandidatesList(_candidateList);
     return(_initialCounter.ToString());
 }
Beispiel #8
0
 public Candidates(IUserRepository userRepository)
 {
     _userRepository = userRepository;
     _initialCounter = new InitialCounter();
 }