R version 4.6.0 RC (2026-04-17 r89914 ucrt) -- "Because it was There" Copyright (C) 2026 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > # 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/testing-design.html#sec-tests-files-overview > # * https://testthat.r-lib.org/articles/special-files.html > > library(testthat) > library(emln) > > test_check("emln") Input: a bipartite matrix Input: an unipartite edge list Input: a bipartite edge list Input: an igraph object: 3TRUEc(0, 1)c(1, 2)NULLNULLNULLNULLlist(c(1, 0, 1), list(), list(name = c("A", "B", "C")), list(weight = c(1, 1))) Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Input: a bipartite matrix Done. Layer #2 processing. Input: a bipartite matrix Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Input: a bipartite matrix Done. Layer #2 processing. Input: a bipartite matrix Done. Creating extended link list with node IDs Organizing state nodes Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, node_id)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, node_id)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, node_id)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, node_id)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, node_id)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, node_id)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, node_id)` Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Done. Layer #2 processing. Done. Creating extended link list with node IDs Organizing state nodes Layer attributes not provided, I added them (see layer_attributes in the final object) Layer #1 processing. Input: a bipartite matrix Done. Layer #2 processing. Input: a bipartite matrix Done. Creating extended link list with node IDs Organizing state nodes Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, layer_name)` Joining with `by = join_by(node_name, layer_name)` Warning: One or more rows sum to 0. This may be ok if you expect some links with only outgoing links (e.g., basal species in a food web) Warning: One or more columns sum to 0. This may be ok if you expect some links with only incoming links (e.g., top predators in a food web) Joining with `by = join_by(node_name, layer_name)` Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Creating state node map Creating extended link list with node IDs Assigning missing row names Assigning missing column names Assigning missing row and column names Saving _problems/test-search_emln-60.R Saving _problems/test-search_emln-68.R [ FAIL 2 | WARN 0 | SKIP 0 | PASS 126 ] ══ Failed tests ════════════════════════════════════════════════════════════════ ── Error ('test-search_emln.R:60:3'): search_emln filters by layer_number_minimum ── Error in `dplyr::filter(., .data$layer_num >= attributes_entered[["layer_number_minimum"]])`: i In argument: `.data$layer_num >= attributes_entered[["layer_number_minimum"]]`. Caused by error in `.data$layer_num >= attributes_entered[["layer_number_minimum"]]`: ! comparison (>=) is not possible for language types Backtrace: ▆ 1. ├─emln::search_emln(layer_number_minimum = min_layers) at test-search_emln.R:60:3 2. │ └─desc %>% ... 3. ├─dplyr::filter(., .data$layer_num >= attributes_entered[["layer_number_minimum"]]) 4. ├─dplyr:::filter.data.frame(., .data$layer_num >= attributes_entered[["layer_number_minimum"]]) 5. │ └─dplyr:::filter_impl(...) 6. │ └─dplyr:::filter_rows(...) 7. │ └─dplyr:::filter_eval(...) 8. │ ├─base::withCallingHandlers(...) 9. │ └─mask$eval_all_filter(dots_expanded, invert, env_filter) 10. │ └─dplyr (local) eval() 11. └─base::.handleSimpleError(...) 12. └─dplyr (local) h(simpleError(msg, call)) 13. └─rlang::abort(message, class = error_class, parent = parent, call = error_call) ── Error ('test-search_emln.R:68:3'): search_emln filters by node_number_minimum ── Error in `dplyr::filter(., .data$node_num >= attributes_entered[["node_number_minimum"]])`: i In argument: `.data$node_num >= attributes_entered[["node_number_minimum"]]`. Caused by error in `.data$node_num >= attributes_entered[["node_number_minimum"]]`: ! comparison (>=) is not possible for language types Backtrace: ▆ 1. ├─emln::search_emln(node_number_minimum = min_nodes) at test-search_emln.R:68:3 2. │ └─desc %>% ... 3. ├─dplyr::filter(., .data$node_num >= attributes_entered[["node_number_minimum"]]) 4. ├─dplyr:::filter.data.frame(., .data$node_num >= attributes_entered[["node_number_minimum"]]) 5. │ └─dplyr:::filter_impl(...) 6. │ └─dplyr:::filter_rows(...) 7. │ └─dplyr:::filter_eval(...) 8. │ ├─base::withCallingHandlers(...) 9. │ └─mask$eval_all_filter(dots_expanded, invert, env_filter) 10. │ └─dplyr (local) eval() 11. └─base::.handleSimpleError(...) 12. └─dplyr (local) h(simpleError(msg, call)) 13. └─rlang::abort(message, class = error_class, parent = parent, call = error_call) [ FAIL 2 | WARN 0 | SKIP 0 | PASS 126 ] Error: ! Test failures. Execution halted