Ejemplo n.º 1
0
        /// <summary>
        ///     Makes the recordset evaluate ready.
        /// </summary>
        /// <param name="keepIdx">The keep idx.</param>
        /// <param name="keepCol">The keep col.</param>
        /// <param name="error">The error.</param>
        public void MakeRecordsetEvaluateReady(int keepIdx, string keepCol, out string error)
        {
            error            = string.Empty;
            _isEvalauteReady = true;

            // use only wants a specific column retained, not the entire row
            if (keepCol != null)
            {
                IList <Dev2Column> newCols = new List <Dev2Column>(Columns.Count)
                {
                    new Dev2Column(keepCol, string.Empty)
                };
                // remove values
                Columns = newCols;
            }

            if (keepIdx == GlobalConstants.AllIndexes || _internalObj.IsEmtpy)
            {
                return;
            }

            var minIdx = (keepIdx - 1);

            _internalObj.ReInstateMaxValue(keepIdx);

            if (minIdx >= 1)
            {
                _internalObj.ReInstateMinValue(minIdx);
                _internalObj.AddGap(minIdx);
            }
        }
Ejemplo n.º 2
0
        public void SBinaryDataListEntry_MoveIndexDataForClone_MinMaxAndGapsMove_SameDataBothSides()
        {
            //------------Setup for test--------------------------
            var sBinaryDataListEntry = new SBinaryDataListEntry();

            sBinaryDataListEntry.Init(1);
            sBinaryDataListEntry.ReInstateMinValue(2);
            sBinaryDataListEntry.ReInstateMaxValue(5);
            sBinaryDataListEntry.AddGap(1);
            var targetEntry = new SBinaryDataListEntry();

            targetEntry.Init(1);

            //------------Execute Test---------------------------
            targetEntry.MoveIndexDataForClone(sBinaryDataListEntry.Keys.MinIndex(), sBinaryDataListEntry.Keys.MaxIndex(), sBinaryDataListEntry.FetchGaps());

            //------------Assert Results-------------------------

            var targetKeys = targetEntry.Keys;
            var parentKeys = sBinaryDataListEntry.Keys;

            var targetMin   = targetKeys.MinIndex();
            var targetMax   = targetKeys.MaxIndex();
            var targetCount = targetKeys.Count;

            var parentMin   = parentKeys.MinIndex();
            var parentMax   = parentKeys.MaxIndex();
            var parentCount = parentKeys.Count;

            // found count we can tell if gaps moved ;)
            Assert.AreEqual(3, parentCount);
            Assert.AreEqual(parentCount, targetCount);

            Assert.AreEqual(parentMin, targetMin);
            Assert.AreEqual(parentMax, targetMax);
        }