+}}
+
+function itMakesValidStrings (parent, lerp) { with (parent) {
+ it("doesn't make half a poo", function () { with (this) {
+ var poos = "\uD83D\uDCA9\uD83D\uDCA9\uD83D\uDCA9\uD83D\uDCA9";
+ assertEqual("\uD83D\uDCA9\uD83D\uDCA9", lerp("", poos, 0.5));
+ assertEqual("\uD83D\uDCA9", lerp("", poos, 0.35));
+
+ for (var i = 0; i <= 1; i += 1/256)
+ assertNot(lerp("", poos, i).match(HALF_POOS));
+ }});
+
+ it("doesn't misplace combining marks", function () { with (this) {
+ for (var i = 0; i <= 1; i += 1/256) {
+ var r = lerp("a", UNUSUAL_Q, i);
+ assert(r === "a" || r === UNUSUAL_Q);
+ }
+ }});
+}}