tests/testthat/test-bug-1073705-indexing.R

test_that("Weighted indexing does not remove edges", {
  g <- make_ring(10)
  g[1, 2, attr = "weight"] <- 0
  expect_true("weight" %in% edge_attr_names(g))
  expect_equal(E(g)$weight, c(0, rep(NA, 9)))

  el <- as_edgelist(g)
  g[from = el[, 1], to = el[, 2], attr = "sim"] <- rep(0:1, length.out = ecount(g))
  expect_true("sim" %in% edge_attr_names(g))
  expect_equal(E(g)$sim, rep(0:1, 5))

  V(g)$name <- letters[seq_len(vcount(g))]
  el <- as_edgelist(g)
  g[from = el[, 1], to = el[, 2], attr = "sim"] <- rep(1:0, length.out = ecount(g))
  expect_equal(E(g)$sim, rep(1:0, 5))
})
igraph/rigraph documentation built on June 28, 2024, 7:13 a.m.