test_that("note metricalization works", {
music <- Music() + Line("C4", "whole", bar = 2, offset = 2.5) + Meter(3, 4)
notes <- music[["notes"]]
lines <- music[["lines"]]
meters <- music[["meters"]]
notes <- indicate_graces(notes, music[["graces"]])
notes <- delimit_notes(notes, lines, meters)
out <- metricalize_note(notes, meters)
row.names(out) <- NULL
expected <- data_frame(
line = rep(1L, 3),
i = rep(1L, 3),
j = rep(NA_integer_, 3),
pitch = rep("C4", 3),
midi = rep(60L, 3),
duration = rep(NA_character_, 3),
length = c(0.5, 3, 0.5),
grace = c(FALSE, FALSE, FALSE),
start_bar = c(2L, 3L, 4L),
start_offset = c(2.5, 0, 0),
end_bar = c(2L, 3L, 4L),
end_offset = c(3, 3, 0.5)
)
expect_identical(unclass(out), unclass(expected))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.