Regarding the filter, you tried, not working, my hunch is that it’ not working, because it’s missing (priority and) accepted arg count parameter(s). At the moment
add_filter('woocommerce_product_get_price', 'test_change');
Defaults to priority 10 and 1 parameter for your callback, but you’re using two args in
function test_change($value, $prop) { return 666; }
Thus you’d need to change the filter like this,
add_filter('woocommerce_product_get_price', 'test_change', 10, 2);
You could also use some bigger or smaller number than 10 to make your filter fire later or earlier depending on your needs.