File: test-layout_multilevel.R

package info (click to toggle)
r-cran-graphlayouts 1.2.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,660 kB
  • sloc: cpp: 696; sh: 13; makefile: 2
file content (46 lines) | stat: -rw-r--r-- 1,738 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
test_that("layout_mulitlevel works", {
    testthat::skip_if_not_installed("oaqc")
    data("multilvl_ex")
    expect_is(layout_as_multilevel(multilvl_ex, type = "all", alpha = 25, beta = 45), "matrix")
    expect_is(layout_as_multilevel(multilvl_ex,
        type = "separate",
        FUN1 = layout_as_backbone,
        FUN2 = layout_with_stress,
        alpha = 25, beta = 45
    ), "matrix")
    expect_is(layout_as_multilevel(multilvl_ex,
        type = "fix2",
        FUN2 = layout_with_stress,
        alpha = 25, beta = 45
    ), "matrix")
    expect_is(layout_as_multilevel(multilvl_ex,
        type = "fix1",
        FUN1 = layout_with_stress,
        alpha = 25, beta = 45
    ), "matrix")
    expect_error(layout_as_multilevel(igraph::make_full_graph(10)))

    expect_error(layout_as_multilevel(multilvl_ex, type = "fix1"))
    expect_error(layout_as_multilevel(multilvl_ex, type = "fix2"))
    expect_error(layout_as_multilevel(multilvl_ex, type = "fix3"))

    g <- igraph::delete_vertex_attr(multilvl_ex, "lvl")
    expect_error(layout_as_multilevel(g, type = "fix2"))

    expect_error(layout_as_multilevel(multilvl_ex, type = "separate"))
    expect_error(layout_as_multilevel(multilvl_ex,
        type = "separate",
        FUN1 = layout_as_backbone, params1 = list(wrong = "a"),
        FUN2 = layout_with_stress
    ))
    expect_error(layout_as_multilevel(multilvl_ex,
        type = "separate",
        FUN1 = layout_as_backbone,
        FUN2 = layout_with_stress, params2 = list(wrong = "a")
    ))
    expect_no_error(layout_as_multilevel(multilvl_ex,
        type = "separate",
        FUN1 = layout_as_backbone, params1 = list(keep = 0.3),
        FUN2 = layout_with_stress, params2 = list(bbox = 15)
    ))
})