optional value getter  and non optional value getter
add the test case.