コード例 #1
0
        public void GenericParameterTest()
        {
            var intParameter = new GenericParameter <int> {
                Value = 23
            };
            var stringParameter = new GenericParameter <string> {
                Value = "qwerty1234"
            };
            var dynamicParameter = new GenericParameter <Task> {
                Value = Task.CompletedTask
            };
            var objectParameter = new GenericParameter <object> {
                Value = CancellationToken.None
            };

            intParameter.GetParamType().Should().BeAssignableTo <int>();
            stringParameter.GetParamType().Should().BeAssignableTo <string>();
            dynamicParameter.GetParamType().Should().BeAssignableTo <Task>();
            objectParameter.GetParamType().Should().BeAssignableTo <object>();

            intParameter.GetValue().Should().BeAssignableTo <int>();
            stringParameter.GetValue().Should().BeAssignableTo <string>();
            dynamicParameter.GetValue().Should().BeAssignableTo <Task>();
            objectParameter.GetValue().Should().BeAssignableTo <CancellationToken>();

            intParameter.GetValue().Should().Be(23);
            stringParameter.GetValue().Should().Be("qwerty1234");
            dynamicParameter.GetValue().Should().Be(Task.CompletedTask);
            objectParameter.GetValue().Should().Be(CancellationToken.None);
        }