Add test cases for Hash#asset_valid_keys

@rafaelfranca : Although I think all new test cases are valid, but Lets first take this example. Here we are testing the case when *valid_keys are more than the keys in the original hash. In this case assert_valid_keys will pass, Please check this, it is not covered in other test cases.

Previously we were only testing for the cases where number of keys in Original hash were equal to the number of elements sent in the *valid_keys. So I think we were missing tests for cases where number of keys in Original hash are different from number of elements sent in the *valid_keys.

So Please reconsider this PR. :smile: