tests/testthat/test-igraph.options.R

test_that("igraph_options works", {
  old <- igraph_options(verbose = TRUE)
  on.exit(igraph_options(old))
  expect_true(igraph_opt("verbose"))

  igraph_options(verbose = FALSE)
  expect_false(igraph_opt("verbose"))
})

test_that("we can restore old options", {
  old_1 <- igraph_opt("sparsematrices")
  old_2 <- igraph_opt("annotate.plot")

  old <- igraph_options(
    sparsematrices = FALSE,
    annotate.plot = TRUE
  )

  expect_equal(igraph_opt("sparsematrices"), FALSE)
  expect_equal(igraph_opt("annotate.plot"), TRUE)

  igraph_options(old)

  expect_equal(igraph_opt("sparsematrices"), old_1)
  expect_equal(igraph_opt("annotate.plot"), old_2)
})

test_that("with_igraph_opt works", {
  on.exit(try(igraph_options(old)), add = TRUE)
  old <- igraph_options(sparsematrices = TRUE)

  res <- with_igraph_opt(
    list(sparsematrices = FALSE),
    make_ring(3)[]
  )

  expect_equal(igraph_opt("sparsematrices"), TRUE)
  expect_true(inherits(res, "matrix"))
})

Try the igraph package in your browser

Any scripts or data that you put into this service are public.

igraph documentation built on Aug. 10, 2023, 9:08 a.m.