<===> unquoted/input.scss
a {b: quote(c)}

<===> unquoted/output.css
a {
  b: "c";
}

<===>
================================================================================
<===> quoted_double/input.scss
a {b: quote("c")}

<===> quoted_double/output.css
a {
  b: "c";
}

<===>
================================================================================
<===> quoted_single/input.scss
a {b: quote('c')}

<===> quoted_single/output.css
a {
  b: "c";
}

<===>
================================================================================
<===> quote_unquoted_quote/single/input.scss
// See sass/libsass#2873
a {b: quote(unquote('"'))}

<===> quote_unquoted_quote/single/output.css
a {
  b: '"';
}

<===>
================================================================================
<===> quote_unquoted_quote/double/input.scss
// See sass/libsass#2873
a {b: quote(unquote('"') + unquote("'"))}

<===> quote_unquoted_quote/double/output.css
a {
  b: "\"'";
}

<===>
================================================================================
<===> escape/input.scss
a {b: quote(\0)}

<===> escape/output.css
a {
  b: "\\0 ";
}

<===> escape/output-libsass.css
a {
  b: "\\0";
}

<===>
================================================================================
<===> named/input.scss
a {b: quote($string: c)}

<===> named/output.css
a {
  b: "c";
}

<===>
================================================================================
<===> error/type/input.scss
a {b: quote((1, 2, 3))}

<===> error/type/error
Error: $string: 1, 2, 3 is not a string.
  ,
1 | a {b: quote((1, 2, 3))}
  |       ^^^^^^^^^^^^^^^^
  '
  input.scss 1:7  root stylesheet

<===> error/type/error-libsass
Error: argument `$string` of `quote($string)` must be a string
        on line 1:7 of input.scss, in function `quote`
        from line 1:7 of input.scss
>> a {b: quote((1, 2, 3))}

   ------^

<===>
================================================================================
<===> error/too_few_args/input.scss
a {b: quote()}

<===> error/too_few_args/error
Error: Missing argument $string.
  ,--> input.scss
1 | a {b: quote()}
  |       ^^^^^^^ invocation
  '
  ,--> sass:string
1 | @function quote($string) {
  |           ============== declaration
  '
  input.scss 1:7  root stylesheet

<===> error/too_few_args/error-libsass
Error: Function quote is missing argument $string.
        on line 1 of input.scss
>> a {b: quote()}

   ------^

<===>
================================================================================
<===> error/too_many_args/input.scss
a {b: quote(c, d)}

<===> error/too_many_args/error
Error: Only 1 argument allowed, but 2 were passed.
  ,--> input.scss
1 | a {b: quote(c, d)}
  |       ^^^^^^^^^^^ invocation
  '
  ,--> sass:string
1 | @function quote($string) {
  |           ============== declaration
  '
  input.scss 1:7  root stylesheet

<===> error/too_many_args/error-libsass
Error: wrong number of arguments (2 for 1) for `quote'
        on line 1:7 of input.scss
>> a {b: quote(c, d)}

   ------^