1 2context("VS/ES indexing") 3 4test_that("I can index a vs twice", { 5 6 edges <- data.frame( 7 stringsAsFactors = TRUE, 8 from = c("BOS", "JFK", "DEN", "BOS", "JFK", "DEN"), 9 to = c("JFK", "DEN", "ABQ", "JFK", "DEN", "ABQ"), 10 carrier = c("foo", "foo", "foo", "bar", "bar", "bar") 11 ) 12 13 vertices <- data.frame( 14 stringsAsFactors = TRUE, 15 id = c("BOS", "JFK", "DEN", "ABQ"), 16 state = c("MA", "NY", "CO", "NM") 17 ) 18 19 g <- graph_from_data_frame(edges, vertices = vertices) 20 21 x <- V(g)[ 3:4 ] [ state == 'NM' ] 22 23 expect_equal(x, V(g)['ABQ']) 24}) 25 26test_that("I can index an es twice", { 27 28 edges <- data.frame( 29 stringsAsFactors = TRUE, 30 from = c("BOS", "JFK", "DEN", "BOS", "JFK", "DEN"), 31 to = c("JFK", "DEN", "ABQ", "JFK", "DEN", "ABQ"), 32 carrier = c("foo", "foo", "foo", "bar", "bar", "bar") 33 ) 34 35 g <- graph_from_data_frame(edges) 36 37 x <- E(g)['BOS' %->% 'JFK'][carrier == 'foo'] 38 39 expect_equal(x, E(g)[ carrier == 'foo' & .from('BOS') & .to('JFK')]) 40}) 41