1 2context("motifs") 3 4test_that("motif finding works", { 5 6 library(igraph) 7 set.seed(123) 8 9 b <- sample_gnp(10000, 4/10000, directed=TRUE) 10 11 mno <- count_motifs(b) 12 13 mno0 <- count_motifs(b, cut.prob=c(1/3, 0, 0)) 14 mno1 <- count_motifs(b, cut.prob=c(0, 0, 1/3)) 15 mno2 <- count_motifs(b, cut.prob=c(0, 1/3, 0)) 16 expect_that(c(mno0/mno, mno1/mno, mno2/mno), 17 equals(c(0.654821903845065, 0.666289144345659, 18 0.668393831285275))) 19 20 mno3 <- count_motifs(b, cut.prob=c(0, 1/3, 1/3)) 21 mno4 <- count_motifs(b, cut.prob=c(1/3, 0, 1/3)) 22 mno5 <- count_motifs(b, cut.prob=c(1/3, 1/3, 0)) 23 expect_that(c(mno3/mno, mno4/mno, mno5/mno), 24 equals(c(0.443959957465819, 0.441952797125797, 25 0.446004870037941) )) 26 27###################### 28 29 set.seed(123) 30 b <- sample_gnp(10000, 4/10000, directed=TRUE) 31 32 m <- motifs(b) 33 34 m0 <- motifs(b, cut.prob=c(1/3, 0, 0)) 35 m1 <- motifs(b, cut.prob=c(0, 1/3, 0)) 36 m2 <- motifs(b, cut.prob=c(0, 0, 1/3)) 37 expect_that(m0/m, equals(c(NA, NA, 0.653972107372707, NA, 38 0.653993015279859, 0.612244897959184, 39 0.657514670174019, 0.63013698630137, NaN, 40 0.538461538461538, NaN, 41 0.565217391304348, NaN, NaN, NaN, NaN))) 42 expect_that(m1/m, equals(c(NA, NA, 0.669562138856225, NA, 43 0.66808158454082, 0.73469387755102, 44 0.670819000404694, 0.657534246575342, 45 NaN, 0.769230769230769, NaN, 46 0.739130434782609, NaN, NaN, NaN, NaN) )) 47 expect_that(m2/m, equals(c(NA, NA, 0.666451718949538, NA, 48 0.665291458452201, 0.591836734693878, 49 0.666683528935654, 0.671232876712329, 50 NaN, 0.753846153846154, NaN, 51 0.565217391304348, NaN, NaN, NaN, NaN) )) 52 53 m3 <- motifs(b, cut.prob=c(0, 1/3, 1/3)) 54 m4 <- motifs(b, cut.prob=c(1/3, 1/3, 0)) 55 m5 <- motifs(b, cut.prob=c(1/3, 1/3, 0)) 56 expect_that(m3/m, equals(c(NA, NA, 0.445611905574732, NA, 57 0.442789875290769, 0.448979591836735, 58 0.444695973290166, 0.424657534246575, 59 NaN, 0.369230769230769, NaN, 60 0.608695652173913, NaN, NaN, NaN, NaN))) 61 62 expect_that(m4/m, equals(c(NA, NA, 0.439251981944392, NA, 63 0.439284975327761, 0.73469387755102, 64 0.445088021044112, 0.465753424657534, 65 NaN, 0.630769230769231, NaN, 66 0.565217391304348, NaN, NaN, NaN, NaN) )) 67 68 expect_that(m5/m, equals(c(NA, NA, 0.439985332979302, NA, 69 0.440288166730411, 0.346938775510204, 70 0.44159753136382, 0.452054794520548, NaN, 71 0.323076923076923, NaN, 72 0.347826086956522, NaN, NaN, NaN, NaN) )) 73}) 74