File: test-meta.R

package info (click to toggle)
r-cran-cli 3.6.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 4,288 kB
  • sloc: ansic: 16,412; cpp: 37; sh: 13; makefile: 2
file content (79 lines) | stat: -rw-r--r-- 1,586 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79

start_app()
on.exit(stop_app(), add = TRUE)

test_that_cli("meta basics", {
  expect_snapshot(
    cli::cli({
      message("This is before")
      cli_alert_info("First message")
      message("This as well")
      cli_alert_success("Success!")
    })
  )
})

test_that_cli("meta is single cli_message", {
  msgs <- list()
  withCallingHandlers(
    cli::cli({
      cli_alert_info("First message")
      cli_alert_success("Success!")
    }),
    cli_message = function(msg) {
      msgs <<- c(msgs, list(msg))
      invokeRestart("cli_message_handled")
    }
  )

  expect_equal(length(msgs), 1L)
  expect_snapshot(cli_server_default(msgs[[1]]))
})

test_that_cli("meta is single cliMessage", {
  msgs <- list()
  expect_snapshot(
    withCallingHandlers(
      cli::cli({
        cli_alert_info("First message")
        cli_alert_success("Success!")
      }),
      cliMessage = function(msg) {
        msgs <<- c(msgs, list(msg))
      }
    )
  )

  expect_equal(length(msgs), 1L)
})

test_that_cli("substitution", {
  expect_snapshot(local({
    x <- 1:3
    cli({
      title <- "My title"
      cli_h1("Title: {.emph {title}}")
      cli_text("And {.emph some} more: {.val {x}}")
    })
  }))
})

test_that("return values are ok when recording (#496)", {
  expect_snapshot(
    cli::cli({
      lid <- cli::cli_ul()
      cli::cli_li("a bullet")
      cli::cli_end(lid)
    })
  )
})

test_that("nested cli() (#497)", {
  expect_snapshot(
    cli::cli({
      cli::cli_h1("Header")
      cli::cli(cli::cli_text("Some text"))
      cli::cli_text("Some more text")
    })
  )
})