$config = <<'EOT';
floating_minimum_size 80x55
-floating_minimum_size 80 x 55
+floating_minimum_size 80 x 55
floating_maximum_size 73 x 10
EOT
################################################################################
$config = <<'EOT';
-workspace "3" output DP-1
-workspace "3" output VGA-1
+workspace "3" output DP-1
+workspace "3" output VGA-1
EOT
$expected = <<'EOT';
new_window 1pixel
new_window normal
new_window none
+default_border 1pixel
+default_border normal
+default_border none
new_float 1pixel
new_float normal
new_float none
+default_floating_border 1pixel
+default_floating_border normal
+default_floating_border none
EOT
$expected = <<'EOT';
-cfg_new_window(new_window, 1pixel, -1)
-cfg_new_window(new_window, normal, 2)
-cfg_new_window(new_window, none, -1)
-cfg_new_window(new_float, 1pixel, -1)
-cfg_new_window(new_float, normal, 2)
-cfg_new_window(new_float, none, -1)
-EOT
+cfg_default_border(new_window, 1pixel, -1)
+cfg_default_border(new_window, normal, 2)
+cfg_default_border(new_window, none, -1)
+cfg_default_border(default_border, 1pixel, -1)
+cfg_default_border(default_border, normal, 2)
+cfg_default_border(default_border, none, -1)
+cfg_default_border(new_float, 1pixel, -1)
+cfg_default_border(new_float, normal, 2)
+cfg_default_border(new_float, none, -1)
+cfg_default_border(default_floating_border, 1pixel, -1)
+cfg_default_border(default_floating_border, normal, 2)
+cfg_default_border(default_floating_border, none, -1)
+EOT
+
+# TODO: are there no tests for "border pixel 1" etc?
is(parser_calls($config),
$expected,
workspace 3 output VGA-1
workspace "4: output" output VGA-2
workspace bleh output LVDS1/I_1
+# See #3646
+workspace foo output a b c "a b c"
EOT
$expected = <<'EOT';
cfg_workspace(3, VGA-1)
cfg_workspace(4: output, VGA-2)
cfg_workspace(bleh, LVDS1/I_1)
+cfg_workspace(foo, a)
+cfg_workspace((null), b)
+cfg_workspace((null), c)
+cfg_workspace((null), a b c)
EOT
is(parser_calls($config),
floating_modifier
default_orientation
workspace_layout
+ default_border
new_window
+ default_floating_border
new_float
hide_edge_borders
for_window
fake-outputs
force_display_urgency_hint
focus_on_window_activation
+ title_align
show_marks
workspace
ipc_socket
ipc-socket
+ ipc_kill_timeout
restart_state
popup_during_fullscreen
exec_always
$expected = <<'EOT';
cfg_bar_start()
cfg_bar_output(LVDS-1)
-ERROR: CONFIG: Expected one of these tokens: <end>, '#', 'set', 'i3bar_command', 'status_command', 'socket_path', 'mode', 'hidden_state', 'id', 'modifier', 'wheel_up_cmd', 'wheel_down_cmd', 'bindsym', 'position', 'output', 'tray_output', 'tray_padding', 'font', 'separator_symbol', 'binding_mode_indicator', 'workspace_buttons', 'strip_workspace_numbers', 'verbose', 'colors', '}'
+ERROR: CONFIG: Expected one of these tokens: <end>, '#', 'set', 'i3bar_command', 'status_command', 'socket_path', 'mode', 'hidden_state', 'id', 'modifier', 'wheel_up_cmd', 'wheel_down_cmd', 'bindsym', 'position', 'output', 'tray_output', 'tray_padding', 'font', 'separator_symbol', 'binding_mode_indicator', 'workspace_buttons', 'strip_workspace_numbers', 'strip_workspace_name', 'verbose', 'colors', '}'
ERROR: CONFIG: (in file <stdin>)
ERROR: CONFIG: Line 1: bar {
ERROR: CONFIG: Line 2: output LVDS-1