+> /connect foo.bar.baz foo bar:baz
+log 1 $.. isupport cleared
+log 1 $.. isupport:CHANTYPES set to: [#&]
+log 1 $.. isupport:PREFIX set to: [(ov)@+]
+log 1 $.. isupport:USERLEN set to: [10]
+log 1 $.. caps cleared
+log 1 $.. users cleared
+log 1 $.. channels cleared
+log , $.. DISCONNECTED
+log 1 $.. hostname set to: [foo.bar.baz]
+log 1 $.. port set to: [-1]
+log 1 $.. nick_wanted set to: [foo]
+log 1 $.. user_wanted set to: [baz]
+log 1 $.. realname set to: [bar]
+log 1 $.. port set to: [6697]
+log 1 $.. connection_state set to: [connecting]
+log 1 $.. connection_state set to: [connected]
+log , $.. CONNECTED
+log 1 >.. CAP LS :302
+log 1 >.. USER baz 0 * :bar
+log 1 >.. NICK :foo
+> /window 1
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :Welcome to the foo.bar.baz network
+log 1 $.. users:me:nick set to: [?]
+log 1 $.. users:me:nick set to: [foo]
+
+# check full line not wrapped
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 12345678 0
+line 21 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 12345678 0§§
+
+# check wrap if last space-separated item one char too long
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 12345678 01
+line 20 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 12345678§§
+line 21 on_black,bright_white 01§§
+
+# check wrap if item starts right after width-final space
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 123456789 1
+line 20 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 123456789§§
+line 21 on_black,bright_white 1§§
+
+# check wrap if item starts right after space after item extending to end of width
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 1234567890 2
+line 20 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 1234567890§§
+line 21 on_black,bright_white 2§§
+
+# check wrap if item starts right after double-space after item extending to end of width
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 1234567890 3
+line 20 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 1234567890§§
+line 21 on_black,bright_white 3§§
+
+# check wrap on item too large to fit into screen width minus indent
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :2345678_1_2345678_2_2345678_3_2345678_4_2345678_5_2345678_6_2345678_7_2345678
+line 19 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo§§
+line 20 on_black,bright_white :2345678_1_2345678_2_2345678_3_2345678_4_2345678_5_2345678_6_2345678_7_234567§§
+line 21 on_black,bright_white 8
+
+# check wrapping calculation on double-width character (tbh not much of a test since the tester itself counts specifically this char as two, so it's pretty much the same as above testing with a sequence of two ASCII chars; mostly just ensures that the wrapping code relies on Terminal.length_to_term)
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 1234567 💓
+line 21 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 1234567 💓§§
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 12345678 💓
+line 20 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo :6789 123456789 123456789 123456789 12345678§§
+line 21 on_black,bright_white 💓§§
+loggedservermsg 0 1 <.. :foo.bar.baz 001 foo :2345678_1_2345678_2_2345678_3_2345678_4_2345678_5_2345678_6_2345678_7_23456💓
+line 19 on_black,bright_white <.. §§:§§:§§ :foo.bar.baz 001 foo§§
+line 20 on_black,bright_white :2345678_1_2345678_2_2345678_3_2345678_4_2345678_5_2345678_6_2345678_7_23456§§
+line 21 on_black,bright_white 💓§§
+
+# check interpretation and escape of formatting characters
+servermsg 0 :*.?.net NOTICE * :*** checking {esc|ape}s, formatting not counting into wrap
+log 1 <.. :*.?.net NOTICE * :*** checking {{esc|ape{}s, formatting not counting into wrap
+log 2 <.. ({bold|server}) *** checking {{esc|ape{}s, formatting not counting into wrap
+line 20 on_black,bright_white <.. §§:§§:§§ :*.?.net NOTICE * :*** checking {esc|ape}s, formatting not counting§§
+line 21 on_black,bright_white into wrap§§
+> /window 2
+line 21 on_black,bright_white <.. §§:§§:§§ (§§§§§§) *** checking {esc|ape}s, formatting not counting into wrap§§
+line 21 on_black,bright_white,bold §§§§§§§§§§§§§§server§