| function assert(assertion) { |
| if (typeof assertion != "string") |
| throw new Error("Invalid assertion."); |
| let result = eval(assertion); |
| throw new Error("Bad assertion: " + assertion); |
| let getSetProxyReplace = new Proxy( |
| replace: function(string, search, replaceWith) |
| return string.replace(search, replaceWith); |
| let replaceResult = getSetProxyReplace.replace("This is a test", / /g, "_"); |
| assert('replaceResult == "This_is_a_test"'); |
| assert('getSet == "replace"'); |
| replaceResult = getSetProxyReplace.replace("This is a test", " ", "_"); |
| assert('replaceResult == "This_is a test"'); |
| assert('getSet == "replace"'); |