test_that("weaves work as expected", { pww <- function(...) print.pattern_weave(pattern_weave(...)) expect_error(pattern_weave("foobar"), "Don't know weave type foobar") # irregular mat verify_output("../text_diagrams/plain.txt", pww("plain", nrow = 7, ncol = 9)) verify_output("../text_diagrams/basket.txt", pww("basket", nrow = 7, ncol = 9)) verify_output("../text_diagrams/matt.txt", pww("matt", 3, nrow = 7, ncol = 9)) verify_output("../text_diagrams/matt_21.txt", pww("matt", "2/1", nrow = 7, ncol = 9)) verify_output("../text_diagrams/matt3221.txt", pww("matt", "3/2*2/1", nrow = 15, ncol = 9)) verify_output("../text_diagrams/matt_irregular.txt", pww("matt_irregular", "3/2(4+2)", nrow = 7, ncol = 9)) verify_output("../text_diagrams/rib_warp", pww("rib_warp", "2/1", nrow = 7, ncol = 9)) verify_output("../text_diagrams/rib_warp.txt", pww("rib_warp", "2", nrow = 7, ncol = 9)) # elongated twill verify_output("../text_diagrams/satin_5.txt", pww("satin", "5", nrow = 7, ncol = 9)) verify_output("../text_diagrams/twill_3.txt", pww("twill", 3L, nrow = 7, ncol = 9)) verify_output("../text_diagrams/twill_212.txt", pww("twill_elongated", "2/1(2)", nrow = 7, ncol = 9)) verify_output("../text_diagrams/twill_22.txt", pww("twill", "2/2", nrow = 7, ncol = 9)) verify_output("../text_diagrams/twill_13.txt", pww("twill", "1/3", nrow = 7, ncol = 9)) verify_output("../text_diagrams/twill_22_zigzag.txt", pww("twill_zigzag", "2/2", nrow = 15, ncol = 9)) verify_output("../text_diagrams/twill_13_herringbone.txt", pww("twill_herringbone", "1/3", nrow = 15, ncol = 9)) verify_output("../text_diagrams/twill3221.txt", pww("twill", "3/2*2/1", nrow = 15, ncol = 9)) })