public void getLinkValueTest() { DcValues target = new DcValues(false, false); string actual = target.getLinkValue(0); Assert.AreEqual(null, actual); }
public void getIndexOfTest() { Manager.Environment = new TestEnvironment(); DcValues target = new DcValues(false, false); string[] strValues = new string[] { "A", "B", "C", "D" }; target.setType(StorageAttribute.ALPHA); target.SetLinkValues(strValues); int[] indice; indice = target.getIndexOf("A", false, false, null, null, true); Assert.AreEqual(1, indice.Length); Assert.AreEqual(0, indice[0]); indice = target.getIndexOf("B,E,D", false, false, null, null, true); Assert.AreEqual(3, indice.Length); Assert.AreEqual(1, indice[0]); Assert.AreEqual(DcValues.NOT_FOUND, indice[1]); Assert.AreEqual(3, indice[2]); indice = target.getIndexOf("B,E,D", false, false, new String[] { "E" }, null, true); Assert.AreEqual(3, indice.Length); Assert.AreEqual(2, indice[0]); Assert.AreEqual(0, indice[1]); Assert.AreEqual(4, indice[2]); //string[] intValues = new string[] { "00000000000000000001", "0000000000000000002A", "0000000000000000003B", "00000000000000000014" }; }
public void DcValuesConstructorTest() { DcValues target = new DcValues(false, false); Assert.AreEqual(0, target.getId()); target = new DcValues(true, false); Assert.AreEqual(DcValues.EMPTY_DCREF, target.getId()); }
void TestLinkValues(DcValues target, string[] linkValues, StorageAttribute type) { target.setType(type); target.SetLinkValues(linkValues); Assert.IsNotNull(target.GetLinkVals()); Assert.AreNotSame(linkValues, target.GetLinkVals()); CompareArrays(linkValues, target.GetLinkVals()); }
public async Task <DcValues> GetDcEarningsData(short academicYear, byte collectionPeriod, List <long> ukprnList) { var sql = ScriptHelpers.GetSqlScriptText(DcEarnings); sql = sql.Replace(UkprnListToken, string.Join(",", ukprnList)); var results = new DcValues(); using (var connection = GetDataStoreConnectionString(academicYear)) { using (var cmd = connection.CreateCommand()) { cmd.CommandTimeout = configuration.SqlCommandTimeout.Seconds; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; cmd.Parameters.AddWithValue("@collectionPeriod", collectionPeriod); connection.Open(); using (var reader = await cmd.ExecuteReaderAsync()) { while (await reader.ReadAsync()) { var newValues = new DcContractTypeTotals(); Func <SqlDataReader, int, decimal> getValueAsNullableDecimal = (dataReader, i) => !dataReader.IsDBNull(i) ? (decimal)dataReader.GetValue(i) : (decimal)0; newValues.ContractType = (int)reader[0]; newValues.TT1 = getValueAsNullableDecimal(reader, 1); newValues.TT2 = getValueAsNullableDecimal(reader, 2); newValues.TT3 = getValueAsNullableDecimal(reader, 3); newValues.TT4 = getValueAsNullableDecimal(reader, 4); newValues.TT5 = getValueAsNullableDecimal(reader, 5); newValues.TT6 = getValueAsNullableDecimal(reader, 6); newValues.TT7 = getValueAsNullableDecimal(reader, 7); newValues.TT8 = getValueAsNullableDecimal(reader, 8); newValues.TT9 = getValueAsNullableDecimal(reader, 9); newValues.TT10 = getValueAsNullableDecimal(reader, 10); newValues.TT11 = getValueAsNullableDecimal(reader, 11); newValues.TT12 = getValueAsNullableDecimal(reader, 12); newValues.TT13 = getValueAsNullableDecimal(reader, 13); newValues.TT14 = getValueAsNullableDecimal(reader, 14); newValues.TT15 = getValueAsNullableDecimal(reader, 15); newValues.TT16 = getValueAsNullableDecimal(reader, 16); results.DcContractTypeTotals.Add(newValues); } } } } return(results); }
public void DisplayValuesTest() { DcValues target = new DcValues(false, false); Assert.IsNull(target.getDispVals()); string[] displayValues = { "DV1", "DV2", "DV3" }; target.SetDisplayValues(displayValues); Assert.IsNotNull(target.getDispVals()); Assert.AreNotSame(displayValues, target.getDispVals()); CompareArrays(displayValues, target.getDispVals()); }
public void SetTypeTest() { DcValues target = new DcValues(false, false); StorageAttribute type = StorageAttribute.ALPHA; target.setType(type); Assert.AreEqual(type, target.GetAttr()); type = StorageAttribute.NUMERIC; target.setType(type); Assert.AreEqual(type, target.GetAttr()); }
/// <summary> /// Initialize the DcValues according to the values set in the tokens vector. /// </summary> /// <param name="tokensVector">A set of attribute value pairs built by the XmlParser.</param> private void InitDCValues(DcValues dcv, List <string> tokensVector) { StorageAttribute type = StorageAttribute.NONE; string[] displayValues = null; string serializedLinkValues = null; for (int j = 0; j < tokensVector.Count; j += 2) { String attribute = (tokensVector[j]); String valueStr = (tokensVector[j + 1]); switch (attribute) { case XMLConstants.MG_ATTR_ID: SetId(dcv, XmlParser.getInt(valueStr)); break; case XMLConstants.MG_ATTR_TYPE: type = (StorageAttribute)valueStr[0]; SetType(dcv, type); break; case ConstInterface.MG_ATTR_DISP: valueStr = XmlParser.unescape(valueStr); displayValues = ParseValues(valueStr, StorageAttribute.UNICODE); break; case ConstInterface.MG_ATTR_LINKED: // optional tag valueStr = XmlParser.unescape(valueStr); serializedLinkValues = valueStr; break; case ConstInterface.MG_ATTR_NULL_FLAGS: SetNullFlags(dcv, valueStr); break; default: Logger.Instance.WriteExceptionToLog("in DcValues.initElements() unknown attribute: " + attribute); break; } } SetDisplayValues(dcv, displayValues); if (serializedLinkValues == null) { SetLinkValues(dcv, displayValues); } else { SetLinkValues(dcv, ParseValues(serializedLinkValues, type)); } }
public override DcValues Build() { FetchValuesFromView(); DcValues dcv = CreateDcValues(false); SetId(dcv, dcValuesIdGenerator.GenerateId()); SetType(dcv, linkType); SetDisplayValues(dcv, displayValues.ToArray()); SetLinkValues(dcv, linkValues.ToArray()); SetNullFlags(dcv, nullValueFlags.ToArray()); return(dcv); }
public void LinkValuesTest() { Manager.Environment = new TestEnvironment(); DcValues target = new DcValues(false, false); PrivateObject privateObj = new PrivateObject(target); Assert.IsNull(target.GetLinkVals()); string[] strValues = new string[] { "A", "B", "C", "D" }; TestLinkValues(target, strValues, StorageAttribute.ALPHA); Assert.IsNull(privateObj.GetField("_numVals")); string[] intValues = new string[] { "00000000000000000001", "0000000000000000002A", "0000000000000000003B", "00000000000000000014" }; TestLinkValues(target, intValues, StorageAttribute.NUMERIC); Assert.IsNotNull(privateObj.GetField("_numVals")); }
public void RefCountTest() { DcValues target = new DcValues(false, false); Assert.IsFalse(target.HasReferences); target.AddReference(); Assert.IsTrue(target.HasReferences); target.AddReference(); Assert.IsTrue(target.HasReferences); target.RemoveReference(); Assert.IsTrue(target.HasReferences); target.RemoveReference(); Assert.IsFalse(target.HasReferences); // Should throw an exception. target.RemoveReference(); }
public override DcValues Build() { dcv = null; int endContext = parser.getXMLdata().IndexOf(XMLConstants.TAG_TERM, parser.getCurrIndex()); if (endContext != -1 && endContext < parser.getXMLdata().Length) { // last position of its tag String tag = parser.getXMLsubstring(endContext); parser.add2CurrIndex(tag.IndexOf(ConstInterface.MG_TAG_DC_VALS) + ConstInterface.MG_TAG_DC_VALS.Length); List <String> tokensVector = XmlParser.getTokens(parser.getXMLsubstring(endContext), XMLConstants.XML_ATTR_DELIM); dcv = (DcValues)CreateDcValues(false); InitDCValues(dcv, tokensVector); } return(dcv); }
public void NullFlagsTest() { DcValues target = new DcValues(false, false); Assert.IsFalse(target.isNull(0)); Assert.IsFalse(target.isNull(4)); Assert.IsFalse(target.isNull(60)); bool[] nullFlags = new bool[] { true, false, false, true, false, false }; target.setNullFlags(nullFlags); Assert.IsTrue(target.isNull(0)); Assert.IsFalse(target.isNull(4)); Assert.IsFalse(target.isNull(5)); // Should throw an exception. Assert.IsFalse(target.isNull(55)); }
/// <summary> /// Add new dcValues , set dcValues reference to control and refresh the control. /// </summary> /// <param name="dcValues"></param> /// <param name="rangeData"></param> /// <param name="control"></param> internal void ApplyDCValuesAndRefreshControl(DcValues dcValues, DataControlRangeDataCollection rangeData, MgControlBase control) { //add new DC values collection DataviewManager.DataviewSynchronizer.AddDcValues(dcValues, rangeData); //set dc values reference Task.SetDataControlValuesReference(control.getDitIdx(), dcValues.getId()); //Update DCValRef of every record after fetching the dataControl values. for (int i = 0; i < ((DataView)Task.DataView).getSize(); i++) { ((DataView)Task.DataView).getRecByIdx(i).AddDcValuesReference(control.getDitIdx(), dcValues.getId()); } //Update DCValRef of original record. ((DataView)Task.DataView).getOriginalRec().AddDcValuesReference(control.getDitIdx(), dcValues.getId()); control.RefreshDisplay(); }
/// <summary> /// Binds a DC values object to the record and the control. /// </summary> /// <param name="dcValues">The bound DC values object.</param> /// <param name="record">The record holding the DC values references.</param> /// <param name="controlId">The identifier of the control that should be bound to the DC values object.</param> internal void ApplyDcValues(DcValues dcValues, IRecord record, int controlId) { record.AddDcValuesReference(controlId, dcValues.getId()); Task.SetDataControlValuesReference(controlId, dcValues.getId()); }
/// <summary> /// Adds the dcValues object to the data view's DC values collection. /// </summary> /// <param name="dcValues">Object to be added to the data view.</param> internal void AddDcValues(DcValues dcValues, DataControlRangeDataCollection dcValuesRange) { Dataview.AddDcValues(dcValues); DataviewManager.MapDcValues(dcValuesRange, dcValues.getId()); }