public void TestCategoryThemeWithRange()
        {
            // Arrange
            var ct = new CategoryTheme <double>();

            ct.ColumnName = "Value";
            ct.Default    = VectorStyle.CreateRandomStyle();

            // Add unordered
            ct.Add(new CategoryThemeRangeItem <double> {
                LowerBound = 0d, UpperBound = 5d, Style = VectorStyle.CreateRandomStyle()
            });
            ct.Add(new CategoryThemeRangeItem <double> {
                LowerBound = 10d, UpperBound = 15d, Style = VectorStyle.CreateRandomStyle()
            });
            ct.Add(new CategoryThemeRangeItem <double> {
                LowerBound = 5d, UpperBound = 10d, Style = VectorStyle.CreateRandomStyle()
            });
            ct.Add(new CategoryThemeRangeItem <double> {
                LowerBound = 20d, UpperBound = 25d, Style = VectorStyle.CreateRandomStyle()
            });

            // act & assert
            Assert.That(ct, Is.Not.Null);

            Assert.That(ct.ItemsAsReadOnly(), Is.Not.Null);
            Assert.That(ct.ItemsAsReadOnly().Count, Is.EqualTo(4));

            var fdt = CreateTable("test", ct.ColumnName, typeof(double), 1, 7, 12, 18, 24);

            DoTest(ct, fdt);
        }
        public void TestCategoryThemeWithValues()
        {
            // Arrange
            var ct = new CategoryTheme <string>();

            ct.ColumnName = "Value";
            ct.Default    = VectorStyle.CreateRandomStyle();

            // Add unordered
            ct.Add(new CategoryThemeValuesItem <string> {
                Values = new List <string> {
                    "A", "B"
                }, Style = VectorStyle.CreateRandomStyle()
            });
            ct.Add(new CategoryThemeValuesItem <string> {
                Values = new List <string> {
                    "C", "D"
                }, Style = VectorStyle.CreateRandomStyle()
            });
            ct.Add(new CategoryThemeValuesItem <string> {
                Values = new List <string> {
                    "E", "F"
                }, Style = VectorStyle.CreateRandomStyle()
            });
            ct.Add(new CategoryThemeValuesItem <string> {
                Values = new List <string> {
                    "G", "H"
                }, Style = VectorStyle.CreateRandomStyle()
            });

            // act & assert
            Assert.That(ct, Is.Not.Null);

            Assert.That(ct.ItemsAsReadOnly(), Is.Not.Null);
            Assert.That(ct.ItemsAsReadOnly().Count, Is.EqualTo(4));

            var fdt = CreateTable("test", ct.ColumnName, typeof(string), "A", "B", "C", "D", "E", "F", "G", "H", "I");

            DoTest(ct, fdt);
        }