public void DeleteRowOnWorksheetWithComment()
        {
            var ws = new XLWorkbook().AddWorksheet();

            ws.Cell(4, 1).Comment.AddText("test");
            ws.Column(1).Width = 100;
            Assert.DoesNotThrow(() => ws.Row(1).Delete());
        }
        public void SparklineRemovedWhenShiftedTooFarRight()
        {
            var ws    = new XLWorkbook().AddWorksheet("Sheet 1");
            var group = ws.SparklineGroups.Add("XFD1", "A1:Z1");

            ws.Column(1).InsertColumnsBefore(1);

            Assert.AreEqual(0, group.Count());
        }
        public void CellsUsedIncludeStyles2()
        {
            IXLWorksheet ws = new XLWorkbook().Worksheets.Add("Sheet1");

            ws.Row(2).Style.Fill.BackgroundColor    = XLColor.Red;
            ws.Column(2).Style.Fill.BackgroundColor = XLColor.Red;
            ws.Cell(3, 3).Value = "ASDF";
            var range = ws.RangeUsed(true).RangeAddress.ToString();

            Assert.AreEqual("B2:C3", range);
        }
        public void SparklineRemovedWhenColumnDeleted()
        {
            var ws    = new XLWorkbook().AddWorksheet("Sheet 1");
            var group = ws.SparklineGroups.Add("A1:B1", "C2:D6");

            ws.Column(2).Delete();

            Assert.AreEqual(1, group.Count());
            Assert.AreEqual("A1", group.Single().Location.Address.ToString());
            Assert.AreEqual("B2:B6", group.Single().SourceData.RangeAddress.ToString());
        }
        public void SparklineRangeInvalidatedWhenDeleted()
        {
            var ws    = new XLWorkbook().AddWorksheet("Sheet 1");
            var group = ws.SparklineGroups.Add("A1:B1", "C2:D6");

            ws.Column(4).Delete();

            Assert.AreEqual(2, group.Count());
            Assert.AreEqual("A1", group.First().Location.Address.ToString());
            Assert.AreEqual("C2:C6", group.First().SourceData.RangeAddress.ToString());
            Assert.AreEqual("B1", group.Last().Location.Address.ToString());
            Assert.IsFalse(group.Last().SourceData.RangeAddress.IsValid);
        }
        public void SparklinesShiftOnColumnInsert()
        {
            var ws     = new XLWorkbook().AddWorksheet("Sheet 1");
            var group1 = ws.SparklineGroups.Add("B2", "D4:F4");
            var group2 = ws.SparklineGroups.Add("C3", "D4:D8");
            var group3 = ws.SparklineGroups.Add("D4", "A4:E4");

            ws.Column(2).InsertColumnsAfter(3);

            Assert.AreEqual("B2", group1.First().Location.Address.ToString());
            Assert.AreEqual("G4:I4", group1.First().SourceData.RangeAddress.ToString());
            Assert.AreEqual("F3", group2.First().Location.Address.ToString());
            Assert.AreEqual("G4:G8", group2.First().SourceData.RangeAddress.ToString());
            Assert.AreEqual("G4", group3.First().Location.Address.ToString());
            Assert.AreEqual("A4:H4", group3.First().SourceData.RangeAddress.ToString());
        }