Skip to content

Commit 134bcc3

Browse files
committed
0.1.1052
1 parent 89caefa commit 134bcc3

File tree

4 files changed

+63
-2
lines changed

4 files changed

+63
-2
lines changed

DESCRIPTION

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Package: wbdataset
22
Title: Making Datasets Truly Interoperable and Reusable in R with Wikibase
3-
Version: 0.1.1051
4-
Date: 2024-05-17
3+
Version: 0.1.1052
4+
Date: 2024-06-02
55
Authors@R:
66
c(person(given="Daniel", family="Antal",
77
email= "[email protected]",

NAMESPACE

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export(get_wikidata_item)
1919
export(here)
2020
export(is_pid)
2121
export(is_qid)
22+
export(is_valid_wikibase_datatype)
2223
export(left_join_column)
2324
export(new_wikibase_session)
2425
importFrom(assertthat,assert_that)

man/is_valid_wikibase_datatype.Rd

Lines changed: 34 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
test_that("Valid Wikibase datatypes return TRUE", {
2+
expect_true(is_valid_wikibase_datatype("wikibase-item"))
3+
expect_true(is_valid_wikibase_datatype("string"))
4+
expect_true(is_valid_wikibase_datatype("external-id"))
5+
expect_true(is_valid_wikibase_datatype("wikibase-form"))
6+
})
7+
8+
test_that("Invalid Wikibase datatypes return FALSE", {
9+
expect_false(is_valid_wikibase_datatype("invalid-type"))
10+
expect_false(is_valid_wikibase_datatype("item")) # common mistake
11+
expect_false(is_valid_wikibase_datatype("WIKIBASE-ITEM")) # case-sensitive
12+
expect_false(is_valid_wikibase_datatype("monolingual")) # incomplete
13+
})
14+
15+
test_that("Non-character inputs are coerced correctly", {
16+
expect_false(is_valid_wikibase_datatype(123)) # not a string
17+
expect_false(is_valid_wikibase_datatype(NA)) # missing value
18+
expect_false(is_valid_wikibase_datatype(NULL)) # NULL value
19+
})
20+
21+
test_that("Vectorized input works as expected", {
22+
input <- c("wikibase-item", "string", "invalid", "url")
23+
expected <- c(TRUE, TRUE, FALSE, TRUE)
24+
expect_equal(is_valid_wikibase_datatype(input), expected)
25+
})
26+

0 commit comments

Comments
 (0)