Running ‘testthat.R’ [33s/44s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/tests.html
  > # * https://testthat.r-lib.org/reference/test_package.html#special-files
  > 
  > library(testthat)
  > library(xlr)
  > 
  > test_check("xlr")
  Saving _problems/test-build_multiple_response_table-22.R
  Saving _problems/test-build_multiple_response_table-43.R
  Saving _problems/test-build_multiple_response_table-66.R
  Saving _problems/test-build_multiple_response_table-90.R
  Saving _problems/test-build_multiple_response_table-328.R
  Saving _problems/test-build_multiple_response_table-352.R
  Saving _problems/test-build_multiple_response_table-383.R
  Saving _problems/test-build_multiple_response_table-507.R
  Saving _problems/test-build_multiple_response_table-530.R
  Saving _problems/test-build_multiple_response_table-560.R
  Saving _problems/test-build_multiple_response_table-650.R
  Saving _problems/test-build_multiple_response_table-672.R
  Saving _problems/test-build_multiple_response_table-696.R
  Saving _problems/test-build_multiple_response_table-723.R
  Saving _problems/test-build_multiple_response_table-742.R
  
  Attaching package: 'dplyr'
  
  The following objects are masked from 'package:stats':
  
      filter, lag
  
  The following objects are masked from 'package:base':
  
      intersect, setdiff, setequal, union
  
  [ FAIL 15 | WARN 0 | SKIP 100 | PASS 655 ]
  
  ══ Skipped tests (100) ═════════════════════════════════════════════════════════
  • On CRAN (100): 'test-build_multiple_response_table.R:183:1',
    'test-build_multiple_response_table.R:187:1',
    'test-build_multiple_response_table.R:193:1',
    'test-build_multiple_response_table.R:199:1',
    'test-build_multiple_response_table.R:205:1',
    'test-build_multiple_response_table.R:210:1',
    'test-build_multiple_response_table.R:236:1',
    'test-build_multiple_response_table.R:270:1',
    'test-build_multiple_response_table.R:277:1',
    'test-build_multiple_response_table.R:290:1',
    'test-build_multiple_response_table.R:299:1',
    'test-build_multiple_response_table.R:746:1',
    'test-build_question_block_table.R:1:1',
    'test-build_question_block_table.R:6:1',
    'test-build_question_block_table.R:12:1',
    'test-build_question_block_table.R:17:1',
    'test-build_question_block_table.R:32:1',
    'test-build_question_block_table.R:41:1',
    'test-build_question_block_table.R:253:1', 'test-build_table.R:1:1',
    'test-build_table.R:9:1', 'test-build_table.R:85:1',
    'test-create_table_of_contents.R:17:1',
    'test-create_table_of_contents.R:29:1',
    'test-create_table_of_contents.R:40:1',
    'test-create_table_of_contents.R:51:1',
    'test-create_table_of_contents.R:63:1',
    'test-create_table_of_contents.R:75:1',
    'test-create_table_of_contents.R:155:3', 'test-error_utils.R:1:1',
    'test-make_wider.R:1:1', 'test-make_wider.R:9:1', 'test-make_wider.R:23:1',
    'test-make_wider.R:85:1', 'test-make_wider.R:122:1',
    'test-table_utils.R:44:1', 'test-table_utils.R:55:1',
    'test-table_utils.R:89:1', 'test-table_utils.R:111:1',
    'test-table_utils.R:133:1', 'test-table_utils.R:155:1',
    'test-table_utils.R:178:1', 'test-table_utils.R:201:1',
    'test-write_xlsx.R:16:1', 'test-write_xlsx.R:32:1', 'test-write_xlsx.R:54:1',
    'test-write_xlsx.R:76:1', 'test-xlr_format.R:3:1', 'test-xlr_format.R:217:1',
    'test-xlr_format.R:241:1', 'test-xlr_format.R:254:1',
    'test-xlr_integer.R:60:1', 'test-xlr_integer.R:142:1',
    'test-xlr_integer.R:186:1', 'test-xlr_n_percent.R:44:1',
    'test-xlr_n_percent.R:95:1', 'test-xlr_n_percent.R:100:1',
    'test-xlr_numeric.R:73:1', 'test-xlr_numeric.R:80:1',
    'test-xlr_numeric.R:157:1', 'test-xlr_numeric.R:162:1',
    'test-xlr_percent.R:95:1', 'test-xlr_percent.R:227:1',
    'test-xlr_percent.R:232:1', 'test-xlr_table.R:45:1',
    'test-xlr_to_workbook.R:31:1', 'test-xlr_to_workbook.R:39:1',
    'test-xlr_to_workbook.R:64:1', 'test-xlr_to_workbook.R:104:1',
    'test-xlr_to_workbook.R:210:3', 'test-xlr_to_workbook.R:454:3',
    'test-xlr_to_workbook.R:508:3', 'test-xlr_to_workbook.R:544:3',
    'test-xlr_to_workbook.R:555:1', 'test-xlr_to_workbook.R:595:3',
    'test-xlr_to_workbook.R:632:3', 'test-xlr_to_workbook.R:700:3',
    'test-xlr_to_workbook.R:709:1', 'test-xlr_to_workbook.R:719:1',
    'test-xlr_to_workbook.R:768:3', 'test-xlr_to_workbook.R:777:1',
    'test-xlr_to_workbook.R:785:1', 'test-xlr_to_workbook.R:796:1',
    'test-xlr_to_workbook.R:804:1', 'test-xlr_to_workbook.R:811:1',
    'test-xlr_to_workbook.R:816:1', 'test-xlr_to_workbook.R:821:1',
    'test-xlr_to_workbook.R:826:1', 'test-xlr_to_workbook.R:834:1',
    'test-xlr_to_workbook.R:841:1', 'test-xlr_to_workbook.R:846:1',
    'test-xlr_to_workbook.R:852:1', 'test-xlr_to_workbook.R:858:1',
    'test-xlr_to_workbook.R:884:3', 'test-xlr_to_workbook.R:929:3',
    'test-xlr_to_workbook.R:964:3', 'test-xlr_to_workbook.R:999:3',
    'test-xlr_vector.R:68:1', 'test-xlr_vector.R:79:1', 'test-xlr_vector.R:92:1'
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Failure ('test-build_multiple_response_table.R:22:3'): build_multiple_response_table() works for the simplest case ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:      
  `attr(expected, 'row.names')`: 1 2 3
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:              
  `expected$N`: "3" "4" "5"
  
  `actual$N_group`:              
  `expected$N_group`: "6" "6" "6"
  
  `actual$Percent`:                    
  `expected$Percent`: "50%" "67%" "83%"
  
  ── Failure ('test-build_multiple_response_table.R:43:3'): build_multiple_response_table() works with question labels ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:      
  `attr(expected, 'row.names')`: 1 2 3
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:              
  `expected$N`: "3" "4" "5"
  
  `actual$N_group`:              
  `expected$N_group`: "6" "6" "6"
  
  `actual$Percent`:                    
  `expected$Percent`: "50%" "67%" "83%"
  
  ── Failure ('test-build_multiple_response_table.R:66:3'): build_multiple_response_table() works when we add one grouping variable ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:                
  `attr(expected, 'row.names')`: 1 2 3 4 5 6 7 8
  
  `actual$col_1`:                                  
  `expected$col_1`: "a" "a" "a" "b" "b" "c" "c" "c"
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                                  
  `expected$N`: "2" "1" "2" "2" "2" "1" "1" "1"
  
  `actual$N_group`:                                  
  `expected$N_group`: "2" "2" "2" "2" "2" "2" "2" "2"
  
  `actual$Percent`:                                                      
  `expected$Percent`: "100%" "50%" "100%" "100%" "100%" "50%" "50%" "50%"
  
  ── Failure ('test-build_multiple_response_table.R:90:3'): build_multiple_response_table() works when we add two grouping variables ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:                     
  `attr(expected, 'row.names')`: 1 2 3 4 5 6 7 8 9 10
  
  `actual$col_1`:                                          
  `expected$col_1`: "a" "a" "a" "b" "b" "b" "b" "c" "c" "c"
  
  `actual$col_2`:                                          
  `expected$col_2`: "d" "d" "d" "d" "d" "e" "e" "e" "e" "e"
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                                          
  `expected$N`: "2" "1" "2" "1" "1" "1" "1" "1" "1" "1"
  
  `actual$N_group`:                                          
  `expected$N_group`: "2" "2" "2" "1" "1" "1" "1" "2" "2" "2"
  
   actual$Percent | expected$Percent     
                  - "100%"           [1] 
                  - "50%"            [2] 
                  - "100%"           [3] 
                  - "100%"           [4] 
                  - "100%"           [5] 
                  - "100%"           [6] 
                  - "100%"           [7] 
                  - "50%"            [8] 
                  - "50%"            [9] 
                  - "50%"            [10]
  
  ── Failure ('test-build_multiple_response_table.R:328:3'): build_multiple_response_table() works for a simple NA case ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:        
  `attr(expected, 'row.names')`: 1 2 3 4
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                  
  `expected$N`: "3" "4" "5" "1"
  
  `actual$N_group`:                  
  `expected$N_group`: "7" "7" "7" "7"
  
  `actual$Percent`:                          
  `expected$Percent`: "43%" "57%" "71%" "14%"
  
  ── Failure ('test-build_multiple_response_table.R:352:3'): build_multiple_response_table() works for NA case and a column group ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:                  
  `attr(expected, 'row.names')`: 1 2 3 4 5 6 7 8 9
  
  `actual$col_1`:                                      
  `expected$col_1`: "a" "a" "a" "b" "b" "c" "c" "c" "c"
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                                      
  `expected$N`: "2" "1" "2" "2" "2" "1" "1" "1" "1"
  
  `actual$N_group`:                                      
  `expected$N_group`: "2" "2" "2" "2" "2" "3" "3" "3" "3"
  
  `actual$Percent`:                                                            
  `expected$Percent`: "100%" "50%" "100%" "100%" "100%" "33%" "33%" "33%" "33%"
  
  ── Failure ('test-build_multiple_response_table.R:383:3'): build_multiple_response_table() works for NA for a group and multiple response column ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:                      and 1 more...
  `attr(expected, 'row.names')`: 1 2 3 4 5 6 7 8 9 10           ...
  
      actual$col_1 | expected$col_1               
                   - "a "           [1]           
                   - "a "           [2]           
                   - "b "           [3]           
                   - "b "           [4]           
                   - "c "           [5]           
                   - "c "           [6]           
                   - "c "           [7]           
                   - "c "           [8]           
                   - "NA"           [9]           
                   - "NA"           [10]          
  ... ...            ...            and 1 more ...
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                                           and 1 more...
  `expected$N`: "1" "1" "2" "2" "1" "1" "1" "1" "1" "1" ...          
  
  `actual$N_group`:                                           and 1 more...
  `expected$N_group`: "1" "1" "2" "2" "3" "3" "3" "3" "1" "1" ...          
  
      actual$Percent | expected$Percent               
                     - "100%"           [1]           
                     - "100%"           [2]           
                     - "100%"           [3]           
                     - "100%"           [4]           
                     - "33%"            [5]           
                     - "33%"            [6]           
                     - "33%"            [7]           
                     - "33%"            [8]           
                     - "100%"           [9]           
                     - "100%"           [10]          
  ... ...              ...              and 1 more ...
  
  ── Failure ('test-build_multiple_response_table.R:507:3'): build_mtable works with weights in the simplest case ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:      
  `attr(expected, 'row.names')`: 1 2 3
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                    
  `expected$N`: "0.7" "0.7" "0.9"
  
  `actual$N_group`:                    
  `expected$N_group`: "1.2" "1.2" "1.2"
  
  `actual$Percent`:                    
  `expected$Percent`: "58%" "58%" "75%"
  
  ── Failure ('test-build_multiple_response_table.R:530:3'): build_mtable works with weights in the simplest case and NA ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:        
  `attr(expected, 'row.names')`: 1 2 3 4
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                          
  `expected$N`: "0.7" "0.7" "0.9" "0.4"
  
  `actual$N_group`:                          
  `expected$N_group`: "1.6" "1.6" "1.6" "1.6"
  
  `actual$Percent`:                          
  `expected$Percent`: "44%" "44%" "56%" "25%"
  
  ── Failure ('test-build_multiple_response_table.R:560:3'): build_mtable works with weights, one multiple response col,
            and cut column ──
  Expected `func_output` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:                
  `attr(expected, 'row.names')`: 1 2 3 4 5 6 7 8
  
  `actual$col_1`:                                  
  `expected$col_1`: "a" "a" "a" "b" "b" "c" "c" "c"
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                                                  
  `expected$N`: "0.4" "0.2" "0.4" "0.2" "0.2" "0.3" "0.3" "0.3"
  
  `actual$N_group`:                                                  
  `expected$N_group`: "0.4" "0.4" "0.4" "0.2" "0.2" "0.6" "0.6" "0.6"
  
  `actual$Percent`:                                                      
  `expected$Percent`: "100%" "50%" "100%" "100%" "100%" "50%" "50%" "50%"
  
  ── Failure ('test-build_multiple_response_table.R:650:3'): build_mtable works when you specify exclude_codes for 0 ──
  Expected `out` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:      
  `attr(expected, 'row.names')`: 1 2 3
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:              
  `expected$N`: "3" "4" "5"
  
  `actual$N_group`:              
  `expected$N_group`: "6" "6" "6"
  
  `actual$Percent`:                    
  `expected$Percent`: "50%" "67%" "83%"
  
  ── Failure ('test-build_multiple_response_table.R:672:3'): build_mtable works when you specify exclude_codes for 0, with NA value ──
  Expected `out` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:        
  `attr(expected, 'row.names')`: 1 2 3 4
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                  
  `expected$N`: "3" "4" "5" "1"
  
  `actual$N_group`:                  
  `expected$N_group`: "7" "7" "7" "7"
  
  `actual$Percent`:                          
  `expected$Percent`: "43%" "57%" "71%" "14%"
  
  ── Failure ('test-build_multiple_response_table.R:696:3'): build_mtable works when you specify exclude_codes for a character value ──
  Expected `out` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:        
  `attr(expected, 'row.names')`: 1 2 3 4
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                  
  `expected$N`: "3" "4" "5" "1"
  
  `actual$N_group`:                  
  `expected$N_group`: "7" "7" "7" "7"
  
  `actual$Percent`:                          
  `expected$Percent`: "43%" "57%" "71%" "14%"
  
  ── Failure ('test-build_multiple_response_table.R:723:3'): build_mtable allows you to specify the value for seen but answered, and
            that this value is always LAST in the the table ──
  Expected `out` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:        
  `attr(expected, 'row.names')`: 1 2 3 4
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                  
  `expected$N`: "3" "4" "5" "1"
  
  `actual$N_group`:                  
  `expected$N_group`: "7" "7" "7" "7"
  
  `actual$Percent`:                          
  `expected$Percent`: "43%" "57%" "71%" "14%"
  
  ── Failure ('test-build_multiple_response_table.R:742:3'): build_mtable allows you to specify the value for seen but answered, and
            that this value is always LAST in the the table ──
  Expected `out` to equal `expected_output`.
  Differences:
    `attr(actual, 'row.names')`:              
  `attr(expected, 'row.names')`: 1 2 3 4 5 6 7
  
  `actual$col_1`:                              
  `expected$col_1`: "a" "a" "a" "a" "c" "c" "c"
  
  `actual$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a logical vector
  `expected$enjoy_fruit` is an S3 object of class <xlr_vector/vctrs_vctr>, a character vector
  
  `actual$N`:                              
  `expected$N`: "1" "1" "1" "1" "2" "3" "4"
  
  `actual$N_group`:                              
  `expected$N_group`: "3" "3" "3" "3" "4" "4" "4"
  
  `actual$Percent`:                                             
  `expected$Percent`: "33%" "33%" "33%" "33%" "50%" "75%" "100%"
  
  
  [ FAIL 15 | WARN 0 | SKIP 100 | PASS 655 ]
  Error:
  ! Test failures.
  Execution halted