public override int GetHashCode() { unchecked { return((Int16Value.GetHashCode() * 397) ^ (Value != null ? Value.GetHashCode() : 0)); } }
public void TestCase_Int16Value() { short d = 1; var value = new Int16Value(); Assert.AreEqual(PropertyDefinitionType.Data, value.PropertyDefType); Assert.AreEqual(PropertyValueType.Int16, value.Type); Assert.True(value.IsNull); Assert.Throws <Exception>(() => { var v = value.Value; }); Assert.Throws <Exception>(() => { var v = value.ValueAsString(); }); value.Value = d; Assert.NotNull(value.Value); Assert.AreEqual(d, value.Value); Assert.AreEqual("1", value.ValueAsString()); Assert.False(value.IsNull); value = new Int16Value(d); Assert.False(value.IsNull); Assert.NotNull(value.Value); Assert.AreEqual(d, value.Value); value.SetNull(); Assert.True(value.IsNull); Assert.Throws <Exception>(() => { var v = value.Value; }); }
private static DataValue ConvertInt16(Int16Value int16Value, DataType dataType, bool truncate) { switch (dataType) { case DataType.DataType_String: return(new StringValue(int16Value.Int16.ToString())); case DataType.DataType_Single: return(new SingleValue(Convert.ToSingle(int16Value.Int16))); case DataType.DataType_Double: return(new DoubleValue(Convert.ToDouble(int16Value.Int16))); case DataType.DataType_Decimal: return(new DecimalValue(Convert.ToDouble(int16Value.Int16))); case DataType.DataType_Int32: return(new Int32Value(Convert.ToInt32(int16Value.Int16))); case DataType.DataType_Int64: return(new Int64Value(Convert.ToInt64(int16Value.Int16))); default: return(null); } }
public void Converter_ChangeTypeWithType_With_TypeValues() { var typedDateTime = DateTimeValue.ChangeTypeWithType(typeof(DateTime), CultureInfo.InvariantCulture); Assert.AreEqual(DateTimeValue, typedDateTime); var typedDecimal = DecimalValue.ChangeTypeWithType(typeof(Decimal), CultureInfo.InvariantCulture); Assert.AreEqual(DecimalValue, typedDecimal); var typedString = StringValue.ChangeTypeWithType(typeof(String), CultureInfo.InvariantCulture); Assert.AreEqual(StringValue, typedString); var typedGuid = GuidValue.ChangeTypeWithType(typeof(Guid), CultureInfo.InvariantCulture); Assert.AreEqual(GuidValue, typedGuid); var typedInt16 = Int16Value.ChangeTypeWithType(typeof(Int16), CultureInfo.InvariantCulture); Assert.AreEqual(Int16Value, typedInt16); var typedInt32 = Int32Value.ChangeTypeWithType(typeof(Int32), CultureInfo.InvariantCulture); Assert.AreEqual(Int32Value, typedInt32); var typedInt64 = Int64Value.ChangeTypeWithType(typeof(Int64), CultureInfo.InvariantCulture); Assert.AreEqual(Int64Value, typedInt64); var typedBool = BoolValue.ChangeTypeWithType(typeof(bool), CultureInfo.InvariantCulture); Assert.AreEqual(BoolValue, typedBool); }
public override int GetHashCode() { unchecked { int hashCode = Int16Value.GetHashCode(); hashCode = (hashCode * 397) ^ Int32Value; hashCode = (hashCode * 397) ^ Int64Value.GetHashCode(); return(hashCode); } }
public void Bug520719() { // the following test should pass without Assert() in debug version. var int8 = new SByteValue(); int8.InnerText = "+10"; Assert.Equal(10, int8.Value); Assert.Equal("+10", int8.InnerText); var int16 = new Int16Value(); int16.InnerText = "+10"; Assert.Equal(10, int16.Value); Assert.Equal("+10", int16.InnerText); var int32 = new Int32Value(); int32.InnerText = "+10"; Assert.Equal(10, int32.Value); Assert.Equal("+10", int32.InnerText); var int64 = new Int64Value(); int64.InnerText = "+10"; Assert.Equal(10, int64.Value); Assert.Equal("+10", int64.InnerText); var integer = new IntegerValue(); integer.InnerText = "+10"; Assert.Equal(10, integer.Value); Assert.Equal("+10", integer.InnerText); var dec = new DecimalValue(); dec.InnerText = "+10"; Assert.Equal(10, dec.Value); Assert.Equal("+10", dec.InnerText); var single = new SingleValue(); single.InnerText = "+10"; Assert.Equal(10, single.Value); Assert.Equal("+10", single.InnerText); var dble = new DoubleValue(); dble.InnerText = "+10"; Assert.Equal(10, dble.Value); Assert.Equal("+10", dble.InnerText); }
static Constants() { BoolValue = true; DateTimeValue = DateTime.Parse(DateTime.MaxValue.ToString(), CultureInfo.InvariantCulture); DecimalValue = Decimal.MaxValue; GuidValue = Guid.NewGuid(); Int16Value = Int16.MaxValue; Int32Value = Int32.MaxValue; Int64Value = Int64.MaxValue; StringValue = Guid.NewGuid().ToString(); NullableInt64Value = Int64.MaxValue; BoolStringValue = BoolValue.ToString(); DateTimeStringValue = DateTimeValue.ToString(); DecimalStringValue = DecimalValue.ToString(); GuidStringValue = GuidValue.ToString(); Int16StringValue = Int16Value.ToString(); Int32StringValue = Int32Value.ToString(); Int64StringValue = Int64Value.ToString(); NullableInt64StringValue = NullableInt64Value.ToString(); }
public LocalNativeRecord(MgReader reader, FixedWKTReader mgReader, MgAgfReaderWriter agfRw, MgWktReaderWriter wktRw) { for (int i = 0; i < reader.GetPropertyCount(); i++) { string name = reader.GetPropertyName(i); _ordinalMap[i] = name; var pt = (PropertyValueType)reader.GetPropertyType(name); switch (pt) { case PropertyValueType.Blob: _values[name] = new BlobValue(); break; case PropertyValueType.Boolean: _values[name] = new BooleanValue(); break; case PropertyValueType.Byte: _values[name] = new ByteValue(); break; case PropertyValueType.Clob: _values[name] = new ClobValue(); break; case PropertyValueType.DateTime: _values[name] = new DateTimeValue(); break; case PropertyValueType.Double: _values[name] = new DoubleValue(); break; case PropertyValueType.Feature: _values[name] = new FeatureValue(); break; case PropertyValueType.Geometry: _values[name] = new GeometryValue(); break; case PropertyValueType.Int16: _values[name] = new Int16Value(); break; case PropertyValueType.Int32: _values[name] = new Int32Value(); break; case PropertyValueType.Int64: _values[name] = new Int64Value(); break; case PropertyValueType.Raster: _values[name] = new RasterValue(); break; case PropertyValueType.Single: _values[name] = new SingleValue(); break; case PropertyValueType.String: _values[name] = new StringValue(); break; } } for (int i = 0; i < reader.GetPropertyCount(); i++) { string name = _ordinalMap[i]; GetByteReaderMethod getblob = () => { return reader.GetBLOB(name); }; GetByteReaderMethod getclob = () => { return reader.GetCLOB(name); }; GetByteReaderMethod getgeom = () => { return reader.GetGeometry(name); }; if (!reader.IsNull(name)) { var pt = (PropertyValueType)reader.GetPropertyType(name); switch (pt) { case PropertyValueType.Blob: ((BlobValue)_values[name]).Value = Utility.StreamAsArray(new MgReadOnlyStream(getblob)); break; case PropertyValueType.Boolean: ((BooleanValue)_values[name]).Value = reader.GetBoolean(name); break; case PropertyValueType.Byte: ((ByteValue)_values[name]).Value = reader.GetByte(name); break; case PropertyValueType.Clob: byte[] b = Utility.StreamAsArray(new MgReadOnlyStream(getclob)); ((ClobValue)_values[name]).Value = Encoding.UTF8.GetChars(b); break; case PropertyValueType.DateTime: ((DateTimeValue)_values[name]).Value = Utility.ConvertMgDateTime(reader.GetDateTime(name)); break; case PropertyValueType.Double: ((DoubleValue)_values[name]).Value = reader.GetDouble(name); break; //case PropertyValueType.Feature: case PropertyValueType.Geometry: try { //TODO: See if SWIG issues come into play here var geom = agfRw.Read(reader.GetGeometry(name)); var wkt = wktRw.Write(geom); ((GeometryValue)_values[name]).Value = mgReader.Read(wkt); } catch //Invalid geometry fail! { ((GeometryValue)_values[name]).SetNull(); } break; case PropertyValueType.Int16: ((Int16Value)_values[name]).Value = reader.GetInt16(name); break; case PropertyValueType.Int32: ((Int32Value)_values[name]).Value = reader.GetInt32(name); break; case PropertyValueType.Int64: ((Int64Value)_values[name]).Value = reader.GetInt64(name); break; case PropertyValueType.Single: ((SingleValue)_values[name]).Value = reader.GetSingle(name); break; case PropertyValueType.String: ((StringValue)_values[name]).Value = reader.GetString(name); break; } } } }
public XmlRecord(XmlProperty[] properties, FixedWKTReader wktReader, XmlNodeList propertyNodes, string nameElement, string valueElement) { for (int i = 0; i < properties.Length; i++) { string name = properties[i].Name; _ordinalMap[i] = name; switch (properties[i].Type) { case PropertyValueType.Blob: _values[name] = new BlobValue(); break; case PropertyValueType.Boolean: _values[name] = new BooleanValue(); break; case PropertyValueType.Byte: _values[name] = new ByteValue(); break; case PropertyValueType.Clob: _values[name] = new ClobValue(); break; case PropertyValueType.DateTime: _values[name] = new DateTimeValue(); break; case PropertyValueType.Double: _values[name] = new DoubleValue(); break; case PropertyValueType.Feature: _values[name] = new FeatureValue(); break; case PropertyValueType.Geometry: _values[name] = new GeometryValue(); break; case PropertyValueType.Int16: _values[name] = new Int16Value(); break; case PropertyValueType.Int32: _values[name] = new Int32Value(); break; case PropertyValueType.Int64: _values[name] = new Int64Value(); break; case PropertyValueType.Raster: _values[name] = new RasterValue(); break; case PropertyValueType.Single: _values[name] = new SingleValue(); break; case PropertyValueType.String: _values[name] = new StringValue(); break; } } foreach (XmlNode propNode in propertyNodes) { var name = propNode[nameElement].InnerText; var valueNode = propNode[valueElement]; if (valueNode != null) { var value = valueNode.InnerText; switch (_values[name].Type) { case PropertyValueType.Blob: ((BlobValue)_values[name]).Value = Encoding.UTF8.GetBytes(value); break; case PropertyValueType.Boolean: ((BooleanValue)_values[name]).Value = XmlConvert.ToBoolean(value); break; case PropertyValueType.Byte: ((ByteValue)_values[name]).Value = XmlConvert.ToByte(value); break; case PropertyValueType.Clob: ((ClobValue)_values[name]).Value = value.ToCharArray(); break; case PropertyValueType.DateTime: var dt = ConvertToDateTime(value); if (dt.HasValue) { ((DateTimeValue)_values[name]).Value = dt.Value; } break; case PropertyValueType.Double: ((DoubleValue)_values[name]).Value = XmlConvert.ToDouble(value); break; case PropertyValueType.Feature: ((FeatureValue)_values[name]).Value = ConvertToFeatures(value); break; case PropertyValueType.Geometry: ((GeometryValue)_values[name]).Value = wktReader.Read(value); break; case PropertyValueType.Int16: ((Int16Value)_values[name]).Value = XmlConvert.ToInt16(value); break; case PropertyValueType.Int32: ((Int32Value)_values[name]).Value = XmlConvert.ToInt32(value); break; case PropertyValueType.Int64: ((Int64Value)_values[name]).Value = XmlConvert.ToInt64(value); break; case PropertyValueType.Raster: ((RasterValue)_values[name]).Value = ConvertToRaster(value); break; case PropertyValueType.Single: ((SingleValue)_values[name]).Value = XmlConvert.ToSingle(value); break; case PropertyValueType.String: ((StringValue)_values[name]).Value = value; break; } } } }
public void TestAssertInInnerTextForPlusSymbol() { // same issue for SByteValue, Int16Value, IntegerValue, DecimalValue, SingleValue, DoubleValue { var v = new SByteValue(); v.InnerText = "+100"; sbyte v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (sbyte)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new Int16Value(); v.InnerText = "+100"; short v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (short)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new Int32Value(); v.InnerText = "+100"; int v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, 100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new IntegerValue(); v.InnerText = "+100"; long v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, 100L, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new DecimalValue(); v.InnerText = "+100"; decimal v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, 100M, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new SingleValue(); v.InnerText = "+100"; float v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, 100F, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new DoubleValue(); v.InnerText = "+100"; double v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, 100D, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } }
public GenerateColumns(Int16Value columnCount) { this.columnCount = columnCount ?? throw new ArgumentNullException(nameof(columnCount)); }
public GenerateColumns(OnOffValue equalWidth, Int16Value columnCount) { this.equalWidth = equalWidth ?? throw new ArgumentNullException(nameof(equalWidth)); this.columnCount = columnCount ?? throw new ArgumentNullException(nameof(columnCount)); }
public void TestAssertInInnerTextForPlusSymbol() { this.MyTestInitialize(TestContext.GetCurrentMethod()); // same issue for SByteValue, Int16Value, IntegerValue, DecimalValue, SingleValue, DoubleValue { var v = new SByteValue(); v.InnerText = "+100"; sbyte v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (sbyte)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new Int16Value(); v.InnerText = "+100"; Int16 v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (Int16)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new Int32Value(); v.InnerText = "+100"; int v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (int)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new IntegerValue(); v.InnerText = "+100"; long v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (long)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new DecimalValue(); v.InnerText = "+100"; decimal v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (decimal)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new SingleValue(); v.InnerText = "+100"; float v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (float)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } { var v = new DoubleValue(); v.InnerText = "+100"; double v2 = v.Value; string t = v.InnerText; // Verify value and text Log.VerifyValue(v2, (double)100, "{0}.Value", v.GetType().Name); Log.VerifyValue(t, "+100", "{0}.InnerText", v.GetType().Name); } }
public static string GetInt16SqlValue() { return($"{Int16Value.ToString(CultureInfo.InvariantCulture)}"); }
private void Prepare(PropertyValueCollection propVals) { propVals.Clear(); currentValues.Clear(); // I do not trust the long-term stability of the PropertyValueCollection // // So what we do is load it up once with LiteralValue references and manipulate these // outside of the collection (via a cached dictionary). We cache everything from the wrapper API // that can be cached in the managed world so that we only have minimal contact with it // Omit read-only properties using (FdoFeatureService service = _conn.CreateFeatureService()) { ClassDefinition c = service.GetClassByName(this.ClassName); foreach (PropertyDefinition p in c.Properties) { string name = p.Name; PropertyValue pv = new PropertyValue(name, null); if (p.PropertyType == PropertyType.PropertyType_DataProperty) { DataPropertyDefinition d = p as DataPropertyDefinition; if (!d.ReadOnly && !d.IsAutoGenerated) { DataValue dv = null; switch (d.DataType) { case DataType.DataType_BLOB: dv = new BLOBValue(); break; case DataType.DataType_Boolean: dv = new BooleanValue(); break; case DataType.DataType_Byte: dv = new ByteValue(); break; case DataType.DataType_CLOB: dv = new CLOBValue(); break; case DataType.DataType_DateTime: dv = new DateTimeValue(); break; case DataType.DataType_Decimal: dv = new DecimalValue(); break; case DataType.DataType_Double: dv = new DoubleValue(); break; case DataType.DataType_Int16: dv = new Int16Value(); break; case DataType.DataType_Int32: dv = new Int32Value(); break; case DataType.DataType_Int64: dv = new Int64Value(); break; case DataType.DataType_Single: dv = new SingleValue(); break; case DataType.DataType_String: dv = new StringValue(); break; } if (dv != null) { pv.Value = dv; propVals.Add(pv); } } } else if (p.PropertyType == PropertyType.PropertyType_GeometricProperty) { GeometricPropertyDefinition g = p as GeometricPropertyDefinition; if (!g.ReadOnly) { GeometryValue gv = new GeometryValue(); pv.Value = gv; propVals.Add(pv); } } } c.Dispose(); } //Load property values into temp dictionary foreach (PropertyValue p in propVals) { currentValues[p.Name.Name] = p.Value as LiteralValue; } if (propertySnapshot == null) { propertySnapshot = new List<string>(); foreach (PropertyValue p in propVals) { propertySnapshot.Add(p.Name.Name); } } }
public Int16ValueTests() { SmallValue1 = new Int16Value((short)10); SmallValue2 = new Int16Value((short)10); LargeValue = new Int16Value((short)20); }
public static Expression ParseByDataType(string data, DataType dataType) { Expression expr = null; bool bIsNull = false; // NOTE: blob parsing doesn't work yet (ever?) in FDO: if (dataType != DataType.DataType_BLOB) { expr = Expression.Parse(data); if (expr is BooleanValue) { bIsNull = true; } else { bIsNull = false; } } switch (dataType) { case DataType.DataType_Boolean: { if (bIsNull) { BooleanValue val = new BooleanValue(); val.SetNull(); expr = val; } else { BooleanValue value = (BooleanValue)(expr); if (value == null) { Debug.Fail("Wrong data type!"); } } } break; case DataType.DataType_Byte: { if (bIsNull) { ByteValue val = new ByteValue(); val.SetNull(); expr = val; } else { Int32Value value = (Int32Value)(expr); if (value == null) { Debug.Fail("Wrong data type!"); } expr = new ByteValue((byte)value.Int32); } } break; case DataType.DataType_Int16: { if (bIsNull) { Int16Value val = new Int16Value(); val.SetNull(); expr = val; } else { Int32Value value = (Int32Value)(expr); if (value == null) { Debug.Fail("Wrong data type!"); } expr = new Int16Value((Int16)value.Int32); } } break; case DataType.DataType_Int32: { if (bIsNull) { Int32Value val = new Int32Value(); val.SetNull(); expr = val; } else { Int32Value value = (Int32Value)(expr); if (value == null) { Debug.Fail("Wrong data type!"); } } } break; case DataType.DataType_Int64: { if (bIsNull) { Int64Value val = new Int64Value(); val.SetNull(); expr = val; } else { Int64Value value = (Int64Value)(expr); if (value == null) { Debug.Fail("Wrong data type!"); } expr = new Int64Value((Int64)value.Int64); } } break; case DataType.DataType_Single: { if (bIsNull) { SingleValue val = new SingleValue(); val.SetNull(); expr = val; } else { DoubleValue value = (DoubleValue)(expr); if (value == null) { Debug.Fail("Wrong data type!"); } expr = new SingleValue((float)value.Double); } } break; case DataType.DataType_Double: { if (bIsNull) { DoubleValue val = new DoubleValue(); val.SetNull(); expr = val; } else { DoubleValue value = (DoubleValue)(expr); if (value == null) { Debug.Fail("Wrong data type!"); } } } break; case DataType.DataType_DateTime: { if (bIsNull) { DateTimeValue val = new DateTimeValue(); val.SetNull(); expr = val; } else { DateTimeValue value = (DateTimeValue)expr; if (value == null) { Debug.Fail("Wrong data type!"); } } } break; case DataType.DataType_Decimal: { if (bIsNull) { DecimalValue val = new DecimalValue(); val.SetNull(); expr = val; } else { DoubleValue valueDouble = (DoubleValue)expr; if (valueDouble != null) { expr = new DecimalValue((double)valueDouble.Double); } else { Int32Value valueInt32 = (Int32Value)expr; if (valueInt32 != null) { expr = new DecimalValue((double)valueInt32.Int32); } else { Debug.Fail("Wrong data type!"); } } } } break; case DataType.DataType_String: { if (bIsNull) { StringValue val = new StringValue(); val.SetNull(); expr = val; } else { StringValue value = (StringValue)expr; if (value == null) { Debug.Fail("Wrong data type!"); } } } break; default: Debug.Fail("Unhandled data type!"); break; } return(expr); }
private static DataValue ConvertInt16(Int16Value int16Value, DataType dataType, bool truncate) { switch (dataType) { case DataType.DataType_String: return new StringValue(int16Value.Int16.ToString()); case DataType.DataType_Single: return new SingleValue(Convert.ToSingle(int16Value.Int16)); case DataType.DataType_Double: return new DoubleValue(Convert.ToDouble(int16Value.Int16)); case DataType.DataType_Decimal: return new DecimalValue(Convert.ToDouble(int16Value.Int16)); case DataType.DataType_Int32: return new Int32Value(Convert.ToInt32(int16Value.Int16)); case DataType.DataType_Int64: return new Int64Value(Convert.ToInt64(int16Value.Int16)); default: return null; } }
public Dictionary <string, ValueExpression> GetValues() { Dictionary <string, ValueExpression> values = new Dictionary <string, ValueExpression>(); foreach (int idx in _modifiedRowIndices) { DataGridViewRow row = grdProperties.Rows[idx]; string name = row.Cells[0].Value.ToString(); PropertyDefinition propDef = row.Cells[0].Tag as PropertyDefinition; if (row.Cells[1].Value != null) { string str = row.Cells[1].Value.ToString(); if (!string.IsNullOrEmpty(str)) { ValueExpression expr = null; if (propDef.PropertyType == PropertyType.PropertyType_DataProperty) { DataPropertyDefinition dp = propDef as DataPropertyDefinition; switch (dp.DataType) { case DataType.DataType_Boolean: expr = new BooleanValue(Convert.ToBoolean(str)); break; case DataType.DataType_Byte: expr = new ByteValue(Convert.ToByte(str)); break; case DataType.DataType_DateTime: expr = new DateTimeValue(Convert.ToDateTime(str)); break; case DataType.DataType_Decimal: expr = new DecimalValue(Convert.ToDouble(str)); break; case DataType.DataType_Double: expr = new DoubleValue(Convert.ToDouble(str)); break; case DataType.DataType_Int16: expr = new Int16Value(Convert.ToInt16(str)); break; case DataType.DataType_Int32: expr = new Int32Value(Convert.ToInt32(str)); break; case DataType.DataType_Int64: expr = new Int64Value(Convert.ToInt64(str)); break; case DataType.DataType_Single: expr = new SingleValue(Convert.ToSingle(str)); break; case DataType.DataType_String: expr = new StringValue(str); break; default: throw new NotSupportedException("Unsupported data type: " + dp.DataType); } } else if (propDef.PropertyType == PropertyType.PropertyType_GeometricProperty) { FdoGeometryFactory fact = FdoGeometryFactory.Instance; OSGeo.FDO.Geometry.IGeometry geom = fact.CreateGeometry(str); byte[] fgf = fact.GetFgf(geom); expr = new GeometryValue(fgf); geom.Dispose(); } else if (propDef.PropertyType == PropertyType.PropertyType_AssociationProperty) { // TODO: don't assume all values are strings! Use schema. expr = new StringValue(str); } else if (propDef.PropertyType == PropertyType.PropertyType_ObjectProperty) { // TODO: don't assume all values are strings! Use schema. expr = new StringValue(str); } if (expr != null) { values.Add(name, expr); } } } } return(values); }
public GenerateTableCellRightMargin() { this.width = 108; this.type = TableWidthValues.Dxa; }
internal Property_Shape_CenterY(PropertyRoot owner) : base(owner) { Value = new Int16Value(this); }
public LocalNativeRecord(MgReader reader, FixedWKTReader mgReader, MgAgfReaderWriter agfRw, MgWktReaderWriter wktRw) { for (int i = 0; i < reader.GetPropertyCount(); i++) { string name = reader.GetPropertyName(i); _ordinalMap[i] = name; var pt = (PropertyValueType)reader.GetPropertyType(name); switch (pt) { case PropertyValueType.Blob: _values[name] = new BlobValue(); break; case PropertyValueType.Boolean: _values[name] = new BooleanValue(); break; case PropertyValueType.Byte: _values[name] = new ByteValue(); break; case PropertyValueType.Clob: _values[name] = new ClobValue(); break; case PropertyValueType.DateTime: _values[name] = new DateTimeValue(); break; case PropertyValueType.Double: _values[name] = new DoubleValue(); break; case PropertyValueType.Feature: _values[name] = new FeatureValue(); break; case PropertyValueType.Geometry: _values[name] = new GeometryValue(); break; case PropertyValueType.Int16: _values[name] = new Int16Value(); break; case PropertyValueType.Int32: _values[name] = new Int32Value(); break; case PropertyValueType.Int64: _values[name] = new Int64Value(); break; case PropertyValueType.Raster: _values[name] = new RasterValue(); break; case PropertyValueType.Single: _values[name] = new SingleValue(); break; case PropertyValueType.String: _values[name] = new StringValue(); break; } } for (int i = 0; i < reader.GetPropertyCount(); i++) { string name = _ordinalMap[i]; GetByteReaderMethod getblob = () => { return reader.GetBLOB(name); }; GetByteReaderMethod getclob = () => { return reader.GetCLOB(name); }; GetByteReaderMethod getgeom = () => { return reader.GetGeometry(name); }; if (!reader.IsNull(name)) { var pt = (PropertyValueType)reader.GetPropertyType(name); switch (pt) { case PropertyValueType.Blob: ((BlobValue)_values[name]).Value = Utility.StreamAsArray(new MgReadOnlyStream(getblob)); break; case PropertyValueType.Boolean: ((BooleanValue)_values[name]).Value = reader.GetBoolean(name); break; case PropertyValueType.Byte: ((ByteValue)_values[name]).Value = reader.GetByte(name); break; case PropertyValueType.Clob: byte [] b = Utility.StreamAsArray(new MgReadOnlyStream(getclob)); ((ClobValue)_values[name]).Value = Encoding.UTF8.GetChars(b); break; case PropertyValueType.DateTime: ((DateTimeValue)_values[name]).Value = Utility.ConvertMgDateTime(reader.GetDateTime(name)); break; case PropertyValueType.Double: ((DoubleValue)_values[name]).Value = reader.GetDouble(name); break; //case PropertyValueType.Feature: case PropertyValueType.Geometry: try { //TODO: See if SWIG issues come into play here var geom = agfRw.Read(reader.GetGeometry(name)); var wkt = wktRw.Write(geom); ((GeometryValue)_values[name]).Value = mgReader.Read(wkt); } catch //Invalid geometry fail! { ((GeometryValue)_values[name]).SetNull(); } break; case PropertyValueType.Int16: ((Int16Value)_values[name]).Value = reader.GetInt16(name); break; case PropertyValueType.Int32: ((Int32Value)_values[name]).Value = reader.GetInt32(name); break; case PropertyValueType.Int64: ((Int64Value)_values[name]).Value = reader.GetInt64(name); break; case PropertyValueType.Single: ((SingleValue)_values[name]).Value = reader.GetSingle(name); break; case PropertyValueType.String: ((StringValue)_values[name]).Value = reader.GetString(name); break; } } } }
public XmlRecord(XmlProperty[] properties, FixedWKTReader wktReader, XmlNodeList propertyNodes, string nameElement, string valueElement) { for (int i = 0; i < properties.Length; i++) { string name = properties[i].Name; _ordinalMap[i] = name; switch (properties[i].Type) { case PropertyValueType.Blob: _values[name] = new BlobValue(); break; case PropertyValueType.Boolean: _values[name] = new BooleanValue(); break; case PropertyValueType.Byte: _values[name] = new ByteValue(); break; case PropertyValueType.Clob: _values[name] = new ClobValue(); break; case PropertyValueType.DateTime: _values[name] = new DateTimeValue(); break; case PropertyValueType.Double: _values[name] = new DoubleValue(); break; case PropertyValueType.Feature: _values[name] = new FeatureValue(); break; case PropertyValueType.Geometry: _values[name] = new GeometryValue(); break; case PropertyValueType.Int16: _values[name] = new Int16Value(); break; case PropertyValueType.Int32: _values[name] = new Int32Value(); break; case PropertyValueType.Int64: _values[name] = new Int64Value(); break; case PropertyValueType.Raster: _values[name] = new RasterValue(); break; case PropertyValueType.Single: _values[name] = new SingleValue(); break; case PropertyValueType.String: _values[name] = new StringValue(); break; } } foreach (XmlNode propNode in propertyNodes) { var name = propNode[nameElement].InnerText; var valueNode = propNode[valueElement]; if (valueNode != null) { var value = valueNode.InnerText; switch (_values[name].Type) { case PropertyValueType.Blob: ((BlobValue)_values[name]).Value = Encoding.UTF8.GetBytes(value); break; case PropertyValueType.Boolean: ((BooleanValue)_values[name]).Value = XmlConvert.ToBoolean(value); break; case PropertyValueType.Byte: ((ByteValue)_values[name]).Value = XmlConvert.ToByte(value); break; case PropertyValueType.Clob: ((ClobValue)_values[name]).Value = value.ToCharArray(); break; case PropertyValueType.DateTime: var dt = ConvertToDateTime(value); if (dt.HasValue) ((DateTimeValue)_values[name]).Value = dt.Value; break; case PropertyValueType.Double: ((DoubleValue)_values[name]).Value = XmlConvert.ToDouble(value); break; case PropertyValueType.Feature: ((FeatureValue)_values[name]).Value = ConvertToFeatures(value); break; case PropertyValueType.Geometry: ((GeometryValue)_values[name]).Value = wktReader.Read(value); break; case PropertyValueType.Int16: ((Int16Value)_values[name]).Value = XmlConvert.ToInt16(value); break; case PropertyValueType.Int32: ((Int32Value)_values[name]).Value = XmlConvert.ToInt32(value); break; case PropertyValueType.Int64: ((Int64Value)_values[name]).Value = XmlConvert.ToInt64(value); break; case PropertyValueType.Raster: ((RasterValue)_values[name]).Value = ConvertToRaster(value); break; case PropertyValueType.Single: ((SingleValue)_values[name]).Value = XmlConvert.ToSingle(value); break; case PropertyValueType.String: ((StringValue)_values[name]).Value = value; break; } } } }
/// <summary> /// Gets the values. /// </summary> /// <returns></returns> public Dictionary<string, ValueExpression> GetValues() { Dictionary<string, ValueExpression> values = new Dictionary<string, ValueExpression>(); foreach (DataGridViewRow row in grdProperties.Rows) { string name = row.Cells[0].Value.ToString(); PropertyDefinition propDef = row.Cells[0].Tag as PropertyDefinition; if (row.Cells[1].Value != null) { string str = row.Cells[1].Value.ToString(); if (!string.IsNullOrEmpty(str)) { ValueExpression expr = null; if (propDef.PropertyType == PropertyType.PropertyType_DataProperty) { DataPropertyDefinition dp = propDef as DataPropertyDefinition; switch (dp.DataType) { case DataType.DataType_Boolean: expr = new BooleanValue(Convert.ToBoolean(str)); break; case DataType.DataType_Byte: expr = new ByteValue(Convert.ToByte(str)); break; case DataType.DataType_DateTime: expr = new DateTimeValue(Convert.ToDateTime(str)); break; case DataType.DataType_Decimal: expr = new DecimalValue(Convert.ToDouble(str)); break; case DataType.DataType_Double: expr = new DoubleValue(Convert.ToDouble(str)); break; case DataType.DataType_Int16: expr = new Int16Value(Convert.ToInt16(str)); break; case DataType.DataType_Int32: expr = new Int32Value(Convert.ToInt32(str)); break; case DataType.DataType_Int64: expr = new Int64Value(Convert.ToInt64(str)); break; case DataType.DataType_Single: expr = new SingleValue(Convert.ToSingle(str)); break; case DataType.DataType_String: expr = new StringValue(str); break; default: throw new NotSupportedException("Unsupported data type: " + dp.DataType); } } else if (propDef.PropertyType == PropertyType.PropertyType_GeometricProperty) { FdoGeometryFactory fact = FdoGeometryFactory.Instance; OSGeo.FDO.Geometry.IGeometry geom = fact.CreateGeometry(str); byte[] fgf = fact.GetFgf(geom); expr = new GeometryValue(fgf); geom.Dispose(); } if (expr != null) values.Add(name, expr); } } } return values; }
private void Prepare(PropertyValueCollection propVals) { propVals.Clear(); currentValues.Clear(); // I do not trust the long-term stability of the PropertyValueCollection // // So what we do is load it up once with LiteralValue references and manipulate these // outside of the collection (via a cached dictionary). We cache everything from the wrapper API // that can be cached in the managed world so that we only have minimal contact with it // Omit read-only properties using (FdoFeatureService service = _conn.CreateFeatureService()) { ClassDefinition c = service.GetClassByName(this.ClassName); foreach (PropertyDefinition p in c.Properties) { string name = p.Name; PropertyValue pv = new PropertyValue(name, null); if (p.PropertyType == PropertyType.PropertyType_DataProperty) { DataPropertyDefinition d = p as DataPropertyDefinition; if (!d.ReadOnly && !d.IsAutoGenerated) { DataValue dv = null; switch (d.DataType) { case DataType.DataType_BLOB: dv = new BLOBValue(); break; case DataType.DataType_Boolean: dv = new BooleanValue(); break; case DataType.DataType_Byte: dv = new ByteValue(); break; case DataType.DataType_CLOB: dv = new CLOBValue(); break; case DataType.DataType_DateTime: dv = new DateTimeValue(); break; case DataType.DataType_Decimal: dv = new DecimalValue(); break; case DataType.DataType_Double: dv = new DoubleValue(); break; case DataType.DataType_Int16: dv = new Int16Value(); break; case DataType.DataType_Int32: dv = new Int32Value(); break; case DataType.DataType_Int64: dv = new Int64Value(); break; case DataType.DataType_Single: dv = new SingleValue(); break; case DataType.DataType_String: dv = new StringValue(); break; } if (dv != null) { pv.Value = dv; propVals.Add(pv); } } } else if (p.PropertyType == PropertyType.PropertyType_GeometricProperty) { GeometricPropertyDefinition g = p as GeometricPropertyDefinition; if (!g.ReadOnly) { GeometryValue gv = new GeometryValue(); pv.Value = gv; propVals.Add(pv); } } } c.Dispose(); } //Load property values into temp dictionary foreach (PropertyValue p in propVals) { currentValues[p.Name.Name] = p.Value as LiteralValue; } if (propertySnapshot == null) { propertySnapshot = new List <string>(); foreach (PropertyValue p in propVals) { propertySnapshot.Add(p.Name.Name); } } }
internal Property_Shape_ExtentWest(PropertyRoot owner) : base(owner) { Value = new Int16Value(this); }
/// <summary> /// Gets the values. /// </summary> /// <returns></returns> public Dictionary <string, ValueExpression> GetValues() { Dictionary <string, ValueExpression> values = new Dictionary <string, ValueExpression>(); foreach (DataGridViewRow row in grdProperties.Rows) { bool enabled = Convert.ToBoolean(row.Cells[0].Value); bool setNull = Convert.ToBoolean(row.Cells[1].Value); if (enabled) { string name = row.Cells[2].Value.ToString(); PropertyDefinition propDef = row.Cells[2].Tag as PropertyDefinition; if (setNull) { LiteralValue expr = null; if (propDef.PropertyType == PropertyType.PropertyType_DataProperty) { DataPropertyDefinition dp = propDef as DataPropertyDefinition; switch (dp.DataType) { case DataType.DataType_BLOB: expr = new BLOBValue(); break; case DataType.DataType_Boolean: expr = new BooleanValue(); break; case DataType.DataType_Byte: expr = new ByteValue(); break; case DataType.DataType_CLOB: expr = new CLOBValue(); break; case DataType.DataType_DateTime: expr = new DateTimeValue(); break; case DataType.DataType_Decimal: expr = new DecimalValue(); break; case DataType.DataType_Double: expr = new DoubleValue(); break; case DataType.DataType_Int16: expr = new Int16Value(); break; case DataType.DataType_Int32: expr = new Int32Value(); break; case DataType.DataType_Int64: expr = new Int64Value(); break; case DataType.DataType_Single: expr = new SingleValue(); break; case DataType.DataType_String: expr = new StringValue(); break; } } else if (propDef.PropertyType == PropertyType.PropertyType_GeometricProperty) { expr = new GeometryValue(); } if (expr != null) { if (expr.LiteralValueType == LiteralValueType.LiteralValueType_Data) { (expr as DataValue).SetNull(); } else { (expr as GeometryValue).SetNull(); } values.Add(name, expr); } } else { if (row.Cells[2].Value != null) { string str = row.Cells[3].Value.ToString(); if (!string.IsNullOrEmpty(str)) { ValueExpression expr = null; if (propDef.PropertyType == PropertyType.PropertyType_DataProperty) { DataPropertyDefinition dp = propDef as DataPropertyDefinition; switch (dp.DataType) { case DataType.DataType_Boolean: expr = new BooleanValue(Convert.ToBoolean(str)); break; case DataType.DataType_Byte: expr = new ByteValue(Convert.ToByte(str)); break; case DataType.DataType_DateTime: expr = new DateTimeValue(Convert.ToDateTime(str)); break; case DataType.DataType_Decimal: expr = new DecimalValue(Convert.ToDouble(str)); break; case DataType.DataType_Double: expr = new DoubleValue(Convert.ToDouble(str)); break; case DataType.DataType_Int16: expr = new Int16Value(Convert.ToInt16(str)); break; case DataType.DataType_Int32: expr = new Int32Value(Convert.ToInt32(str)); break; case DataType.DataType_Int64: expr = new Int64Value(Convert.ToInt64(str)); break; case DataType.DataType_Single: expr = new SingleValue(Convert.ToSingle(str)); break; case DataType.DataType_String: expr = new StringValue(str); break; default: throw new NotSupportedException("Unsupported data type: " + dp.DataType); } } else if (propDef.PropertyType == PropertyType.PropertyType_GeometricProperty) { FdoGeometryFactory fact = FdoGeometryFactory.Instance; OSGeo.FDO.Geometry.IGeometry geom = fact.CreateGeometry(str); byte[] fgf = fact.GetFgf(geom); expr = new GeometryValue(fgf); geom.Dispose(); } if (expr != null) { values.Add(name, expr); } } } } } } return(values); }
public void OpenXmlSimpleTypeConverterTest() { // 1. Base64BinaryValue Base64BinaryValue base64 = new Base64BinaryValue(); base64 = "AA3322"; Assert.True(base64 == "AA3322"); Assert.Equal("AA3322", base64.Value); base64 = Base64BinaryValue.FromString("1234"); Assert.Equal("1234", base64.ToString()); Assert.Equal("1234", Base64BinaryValue.ToString(base64)); // 2. BooleanValue BooleanValue booleanValue = new BooleanValue(); booleanValue = true; Assert.True(booleanValue); Assert.True(booleanValue.Value); booleanValue = BooleanValue.FromBoolean(false); Assert.False(booleanValue); Assert.False(BooleanValue.ToBoolean(booleanValue)); // 3. ByteValue ByteValue byteValue = new ByteValue(); byte bt = 1; byteValue = bt; Assert.True(bt == byteValue); Assert.Equal(bt, byteValue.Value); bt = 2; byteValue = ByteValue.FromByte(bt); Assert.Equal(bt, ByteValue.ToByte(byteValue)); // 4. DateTimeValue DateTimeValue dtValue = new DateTimeValue(); DateTime dt = DateTime.Now; dtValue = dt; Assert.True(dt == dtValue); dt = DateTime.Now.AddDays(1); dtValue = DateTimeValue.FromDateTime(dt); Assert.Equal(dt, dtValue.Value); Assert.Equal(dt, DateTimeValue.ToDateTime(dt)); // 5. DecimalValue DecimalValue decimalValue = new DecimalValue(); decimal dcm = 10; decimalValue = dcm; Assert.True(dcm == decimalValue); decimalValue = DecimalValue.FromDecimal(20); Assert.Equal(20, decimalValue.Value); Assert.Equal(20, DecimalValue.ToDecimal(decimalValue)); // 6. DoubleValue DoubleValue doubleValue = new DoubleValue(); double dbl = 1.1; doubleValue = dbl; Assert.True(dbl == doubleValue); doubleValue = DoubleValue.FromDouble(2.2); Assert.Equal(2.2, doubleValue.Value); Assert.Equal(2.2, DoubleValue.ToDouble(doubleValue)); // 7. HexBinaryValue HexBinaryValue hexBinaryValue = new HexBinaryValue(); string hex = "0X99CCFF"; hexBinaryValue = hex; Assert.True(hex == hexBinaryValue); hex = "111111"; hexBinaryValue = HexBinaryValue.FromString(hex); Assert.Equal(hex, hexBinaryValue.Value); Assert.Equal(hex, HexBinaryValue.ToString(hexBinaryValue)); // 8. Int16 Int16Value int16Value = new Int16Value(); short int16 = 16; int16Value = int16; Assert.True(int16 == int16Value); int16 = 17; int16Value = Int16Value.FromInt16(int16); Assert.Equal(int16, int16Value.Value); Assert.Equal(int16, Int16Value.ToInt16(int16Value)); // 9. Int32 Int32Value int32Value = new Int32Value(); int int32 = 32; int32Value = int32; Assert.True(int32 == int32Value); int32 = 33; int32Value = Int32Value.FromInt32(int32); Assert.Equal(int32, int32Value.Value); Assert.Equal(int32, Int32Value.ToInt32(int32Value)); // 10. Int64 Int64Value int64Value = new Int64Value(); long int64 = 64; int64Value = int64; Assert.True(int64 == int64Value); int64 = 17; int64Value = Int64Value.FromInt64(int64); Assert.Equal(int64, int64Value.Value); Assert.Equal(int64, Int64Value.ToInt64(int64Value)); // 11. IntegerValue IntegerValue integerValue = new IntegerValue(); int integer = 64; integerValue = integer; Assert.True(integer == integerValue); integer = 17; integerValue = IntegerValue.FromInt64(integer); Assert.Equal(integer, integerValue.Value); Assert.Equal(integer, IntegerValue.ToInt64(integerValue)); // 12. OnOffValue OnOffValue onOffValue = new OnOffValue(); onOffValue = true; Assert.True(onOffValue); onOffValue = OnOffValue.FromBoolean(false); Assert.False(onOffValue.Value); Assert.False(OnOffValue.ToBoolean(onOffValue)); // 13. SByteValue SByteValue sbyteValue = new SByteValue(); sbyte sbt = sbyte.MaxValue; sbyteValue = sbt; Assert.True(sbt == sbyteValue); sbt = sbyte.MinValue; sbyteValue = SByteValue.FromSByte(sbt); Assert.Equal(sbt, sbyteValue.Value); Assert.Equal(sbt, SByteValue.ToSByte(sbt)); // 14. SingleValue SingleValue singleValue = new SingleValue(); float single = float.MaxValue; singleValue = single; Assert.True(single == singleValue); single = float.NaN; singleValue = SingleValue.FromSingle(single); Assert.Equal(single, singleValue.Value); Assert.Equal(single, SingleValue.ToSingle(singleValue)); // 15. StringValue StringValue stringValue = new StringValue(); string str = "Ethan"; stringValue = str; Assert.True(str == stringValue); str = "Yin"; stringValue = StringValue.FromString(str); Assert.Equal(str, stringValue.Value); Assert.Equal(str, stringValue.ToString()); Assert.Equal(str, StringValue.ToString(stringValue)); // 16. TrueFalseBlankValue TrueFalseBlankValue tfbValue = new TrueFalseBlankValue(); tfbValue = true; Assert.True(tfbValue); tfbValue = TrueFalseBlankValue.FromBoolean(false); Assert.False(tfbValue.Value); Assert.False(TrueFalseBlankValue.ToBoolean(tfbValue)); // 17. TrueFalseValue TrueFalseValue tfValue = new TrueFalseValue(); tfValue = true; Assert.True(tfValue); tfValue = TrueFalseValue.FromBoolean(false); Assert.False(tfValue.Value); Assert.False(TrueFalseValue.ToBoolean(tfValue)); // 18. UInt16Value UInt16Value uint16Value = new UInt16Value(); ushort uint16 = ushort.MaxValue; uint16Value = uint16; Assert.True(uint16 == uint16Value); uint16 = ushort.MinValue; uint16Value = UInt16Value.FromUInt16(uint16); Assert.Equal(uint16, uint16Value.Value); Assert.Equal(uint16, UInt16Value.ToUInt16(uint16Value)); // 19. UInt32Value UInt32Value uint32Value = new UInt32Value(); uint uint32 = uint.MaxValue; uint32Value = uint32; Assert.True(uint32 == uint32Value); uint32 = uint.MinValue; uint32Value = UInt32Value.FromUInt32(uint32); Assert.Equal(uint32, uint32Value.Value); Assert.Equal(uint32, UInt32Value.ToUInt32(uint32Value)); // 20. UInt64Value UInt64Value uint64Value = new UInt64Value(); ulong uint64 = ulong.MaxValue; uint64Value = uint64; Assert.True(uint64 == uint64Value); uint64 = ulong.MinValue; uint64Value = UInt64Value.FromUInt64(uint64); Assert.Equal(uint64, uint64Value.Value); Assert.Equal(uint64, UInt64Value.ToUInt64(uint64Value)); }
public void OpenXmlSimpleTypeConverterTest() { // 1. Base64BinaryValue Base64BinaryValue base64 = new Base64BinaryValue(); base64 = "AA3322"; Assert.True("AA3322" == base64); Assert.Equal("AA3322", base64.Value); base64 = Base64BinaryValue.FromString("1234"); Assert.Equal("1234", base64.ToString()); Assert.Equal("1234", Base64BinaryValue.ToString(base64)); // 2. BooleanValue BooleanValue booleanValue = new BooleanValue(); booleanValue = true; Assert.True(booleanValue); Assert.True(booleanValue.Value); booleanValue = BooleanValue.FromBoolean(false); Assert.False(booleanValue); Assert.Equal(false, BooleanValue.ToBoolean(booleanValue)); // 3. ByteValue ByteValue byteValue = new ByteValue(); Byte bt = 1; byteValue = bt; Assert.True(bt == byteValue); Assert.Equal(bt, byteValue.Value); bt = 2; byteValue = ByteValue.FromByte(bt); Assert.Equal(bt, ByteValue.ToByte(byteValue)); // 4. DateTimeValue DateTimeValue dtValue = new DateTimeValue(); DateTime dt = DateTime.Now; dtValue = dt; Assert.True(dt == dtValue); dt = DateTime.Now.AddDays(1); dtValue = DateTimeValue.FromDateTime(dt); Assert.Equal(dt, dtValue.Value); Assert.Equal(dt, DateTimeValue.ToDateTime(dt)); // 5. DecimalValue DecimalValue decimalValue = new DecimalValue(); decimal dcm = 10; decimalValue = dcm; Assert.True(dcm == decimalValue); decimalValue = DecimalValue.FromDecimal(20); Assert.Equal(20, decimalValue.Value); Assert.Equal(20, DecimalValue.ToDecimal(decimalValue)); // 6. DoubleValue DoubleValue doubleValue = new DoubleValue(); double dbl = 1.1; doubleValue = dbl; Assert.True(dbl == doubleValue); doubleValue = DoubleValue.FromDouble(2.2); Assert.Equal(2.2, doubleValue.Value); Assert.Equal(2.2, DoubleValue.ToDouble(doubleValue)); // 7. HexBinaryValue HexBinaryValue hexBinaryValue = new HexBinaryValue(); string hex = "0X99CCFF"; hexBinaryValue = hex; Assert.True(hex == hexBinaryValue); hex = "111111"; hexBinaryValue = HexBinaryValue.FromString(hex); Assert.Equal(hex, hexBinaryValue.Value); Assert.Equal(hex, HexBinaryValue.ToString(hexBinaryValue)); // 8. Int16 Int16Value int16Value = new Int16Value(); Int16 int16 = 16; int16Value = int16; Assert.True(int16 == int16Value); int16 = 17; int16Value = Int16Value.FromInt16(int16); Assert.Equal(int16, int16Value.Value); Assert.Equal(int16, Int16Value.ToInt16(int16Value)); // 9. Int32 Int32Value int32Value = new Int32Value(); Int32 int32 = 32; int32Value = int32; Assert.True(int32 == int32Value); int32 = 33; int32Value = Int32Value.FromInt32(int32); Assert.Equal(int32, int32Value.Value); Assert.Equal(int32, Int32Value.ToInt32(int32Value)); // 10. Int64 Int64Value int64Value = new Int64Value(); Int64 int64 = 64; int64Value = int64; Assert.True(int64 == int64Value); int64 = 17; int64Value = Int64Value.FromInt64(int64); Assert.Equal(int64, int64Value.Value); Assert.Equal(int64, Int64Value.ToInt64(int64Value)); // 11. IntegerValue IntegerValue integerValue = new IntegerValue(); int integer = 64; integerValue = integer; Assert.True(integer == integerValue); integer = 17; integerValue = IntegerValue.FromInt64(integer); Assert.Equal(integer, integerValue.Value); Assert.Equal(integer, IntegerValue.ToInt64(integerValue)); // 12. OnOffValue OnOffValue onOffValue = new OnOffValue(); onOffValue = true; Assert.True(onOffValue); onOffValue = OnOffValue.FromBoolean(false); Assert.Equal(false, onOffValue.Value); Assert.Equal(false, OnOffValue.ToBoolean(onOffValue)); // 13. SByteValue SByteValue sbyteValue = new SByteValue(); SByte sbt = SByte.MaxValue; sbyteValue = sbt; Assert.True(sbt == sbyteValue); sbt = SByte.MinValue; sbyteValue = SByteValue.FromSByte(sbt); Assert.Equal(sbt, sbyteValue.Value); Assert.Equal(sbt, SByteValue.ToSByte(sbt)); // 14. SingleValue SingleValue singleValue = new SingleValue(); Single single = Single.MaxValue; singleValue = single; Assert.True(single == singleValue); single = Single.NaN; singleValue = SingleValue.FromSingle(single); Assert.Equal(single, singleValue.Value); Assert.Equal(single, SingleValue.ToSingle(singleValue)); // 15. StringValue StringValue stringValue = new StringValue(); String str = "Ethan"; stringValue = str; Assert.True(str == stringValue); str = "Yin"; stringValue = StringValue.FromString(str); Assert.Equal(str, stringValue.Value); Assert.Equal(str, stringValue.ToString()); Assert.Equal(str, StringValue.ToString(stringValue)); // 16. TrueFalseBlankValue TrueFalseBlankValue tfbValue = new TrueFalseBlankValue(); tfbValue = true; Assert.True(tfbValue); tfbValue = TrueFalseBlankValue.FromBoolean(false); Assert.Equal(false, tfbValue.Value); Assert.Equal(false, TrueFalseBlankValue.ToBoolean(tfbValue)); // 17. TrueFalseValue TrueFalseValue tfValue = new TrueFalseValue(); tfValue = true; Assert.True(tfValue); tfValue = TrueFalseValue.FromBoolean(false); Assert.Equal(false, tfValue.Value); Assert.Equal(false, TrueFalseValue.ToBoolean(tfValue)); // 18. UInt16Value UInt16Value uint16Value = new UInt16Value(); UInt16 uint16 = UInt16.MaxValue; uint16Value = uint16; Assert.True(uint16 == uint16Value); uint16 = UInt16.MinValue; uint16Value = UInt16Value.FromUInt16(uint16); Assert.Equal(uint16, uint16Value.Value); Assert.Equal(uint16, UInt16Value.ToUInt16(uint16Value)); // 19. UInt32Value UInt32Value uint32Value = new UInt32Value(); UInt32 uint32 = UInt32.MaxValue; uint32Value = uint32; Assert.True(uint32 == uint32Value); uint32 = UInt32.MinValue; uint32Value = UInt32Value.FromUInt32(uint32); Assert.Equal(uint32, uint32Value.Value); Assert.Equal(uint32, UInt32Value.ToUInt32(uint32Value)); // 20. UInt64Value UInt64Value uint64Value = new UInt64Value(); UInt64 uint64 = UInt64.MaxValue; uint64Value = uint64; Assert.True(uint64 == uint64Value); uint64 = UInt64.MinValue; uint64Value = UInt64Value.FromUInt64(uint64); Assert.Equal(uint64, uint64Value.Value); Assert.Equal(uint64, UInt64Value.ToUInt64(uint64Value)); }
public object ChangeType_Int16() { return(Int16Value.ChangeType(typeof(Int16), CultureInfo.InvariantCulture)); }