public void Integer_constant_types_with_same_value_are_equal(int value) { var type1 = new IntegerConstantType(value); var type2 = new IntegerConstantType(value); Assert.Equal(type1, type2); }
public void Integer_constant_types_not_assignable_to_int32(long value) { var constType = new IntegerConstantType(value); var assignable = DataType.Int.IsAssignableFrom(constType); Assert.False(assignable); }
public void Is_integer_numeric_simple_value_type() { var type = new IntegerConstantType(1); Assert.OfType <IntegerType>(type); Assert.OfType <NumericType>(type); Assert.OfType <SimpleType>(type); Assert.OfType <ValueType>(type); }
public void Converts_to_non_constant_int_type() { // TODO larger values need to convert to larger integer types var type = new IntegerConstantType(42); var nonConstant = type.ToNonConstantType(); Assert.Same(DataType.Int, nonConstant); }
public void Has_integer_value(long value) { var type = new IntegerConstantType(value); Assert.Equal(value, type.Value); }
public void Has_copy_semantics() { var type = new IntegerConstantType(1); Assert.Equal(TypeSemantics.Copy, type.Semantics); }
public void Is_not_empty_type() { var type = new IntegerConstantType(1); Assert.False(type.IsEmpty); }
public void Is_known_type() { var type = new IntegerConstantType(1); Assert.True(type.IsKnown); }
public void Is_constant() { var type = new IntegerConstantType(1); Assert.True(type.IsConstant); }