public void ValueMappings(object value, SpannerDbType spannerType, DbType adoType, System.Type defaultClrType) { var parameter = new SpannerParameter { Value = value }; Assert.Equal(defaultClrType, spannerType.DefaultClrType); Assert.Equal(spannerType, parameter.SpannerDbType); Assert.Equal(adoType, parameter.DbType); }
public void CopyToArrayWithBuffer(int extraBuffer) { var parameters1 = Enumerable.Range(0, 5).Select( x => new SpannerParameter($"Param{x}", SpannerDbType.String)).ToArray(); var parameters2 = new SpannerParameter[parameters1.Length + extraBuffer]; var collection = new SpannerParameterCollection(); collection.AddRange(parameters1); collection.CopyTo(parameters2, extraBuffer); Assert.True(parameters1.SequenceEqual(parameters2.Skip(extraBuffer))); }
public void SetDefaultSize(SpannerDbType spannerType) { var param = new SpannerParameter { SpannerDbType = spannerType }; // The default size should be 0 for all types. Assert.Equal(0, param.Size); // Setting the size to the same (default) value should be allowed for all types. param.Size = 0; Assert.Equal(0, param.Size); }
public void DbTypeMappgings(SpannerDbType spannerType, DbType adoType) { var parameter = new SpannerParameter { SpannerDbType = spannerType }; Assert.Equal(adoType, parameter.DbType); parameter.ResetDbType(); parameter.DbType = adoType; Assert.Equal(spannerType, parameter.SpannerDbType); }
public void SetIndividualParameterName() { var parameters = Enumerable.Range(0, 5).Select( x => new SpannerParameter($"Param{x}", SpannerDbType.String)).ToArray(); var collection = new SpannerParameterCollection(); collection.AddRange(parameters); var newParameter = new SpannerParameter("Param4", SpannerDbType.Float64); collection[newParameter.ParameterName] = newParameter; Assert.True(collection.Contains(newParameter)); Assert.False(collection.Contains(parameters[4])); }
public void SizeTest(SpannerDbType spannerType, int size) { var parameter = new SpannerParameter { SpannerDbType = spannerType.WithSize(size) }; Assert.Equal(parameter.Size, size); Assert.Equal(parameter.SpannerDbType.TypeCode, spannerType.TypeCode); parameter = new SpannerParameter { SpannerDbType = spannerType, Size = size }; Assert.Equal(parameter.Size, size); Assert.Equal(parameter.SpannerDbType.TypeCode, spannerType.TypeCode); }
public void Clone() { var param1 = new SpannerParameter("Param1", SpannerDbType.Int64, 1L); var param2 = new SpannerParameter("Param2", SpannerDbType.String, "original"); var original = new SpannerParameterCollection(new [] { param1, param2 }); var clone = original.Clone(); // The values in the clone should initially be equal to the original collection. Assert.True(original.SequenceEqual(clone, new SpannerParameterEqualityComparer())); // Change the original parameters. // This should be reflected in the original collection, but not in the clone. param1.Value = 2L; param2.Value = "new value"; Assert.False(original.SequenceEqual(clone, new SpannerParameterEqualityComparer())); // Verify that the changed parameter values were set on the instances in the original collection. Assert.Equal(2L, original[0].Value); Assert.Equal("new value", original[1].Value); // Verify that the cloned collection still has the original value. Assert.Equal(1L, clone[0].Value); Assert.Equal("original", clone[1].Value); }