Nothing
# TESTING THE BAIN PARSER
# ALTHOUGH MORE IS POSSIBLE, THE USER IS REQUIRED TO USE STICK TO THE FOLLOWING SYNTAX:
# 1) COMBINATIONS OF number * par + number FOR MULTIPLE PARAMETERS
# 2) USE & TO COMBINE DIFFERENT PARTS OF AN HYPOTHESIS
# 3) USE (,) TO CREATE SET OF COMBINATIONS
# TESTING THE USE OF : =~ ~ AND ~1
varnames <- c("a:", "b::", "c:::")
hyp1 <- "a: > b:: > c:::"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,-1,0,0,0,1,-1,0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,2))})
varnames <- c("a~", "b=~", "c~1")
hyp1 <- "a~ > b=~ > c~1"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,-1,0,0,0,1,-1,0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,2))})
varnames <- c("a.~a_", "a:=~b_:", "a_~1c_:.")
hyp1 <- "a.~a_ > a:=~b_: > a_~1c_:."
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,-1,0,0,0,1,-1,0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,2))})
# TESTING THE NAMING OF THE PARAMETERS
# 1) USE OF LETTERS, . AND _
# 2) USE OF CAPITALS AND NUMBERS
varnames <- c("a._", "b_.", "c.c_")
hyp1 <- "a._ > b_. > c.c_"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,-1,0,0,0,1,-1,0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,2))})
varnames <- c("a2b", "b2G", "C")
hyp1 <- "a2b > b2G > C"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,-1,0,0,0,1,-1,0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,2))})
# TESTING THE USE OF LINEAR COMBINATIONS
# 1) SCALARS CONSISTING OF ONE OR TWO NUMBERS
# 2) SCALARS UP TO THREE NUMBERS, STARTING WITH . AND 0, NEGATIVE NUMBERS
# 3) A SINGLE "LONG" HYPOTHESIS
# 4) TESTS PROVIDED BY CASPAR
# 5) SERIES OF =, <, > IN ONE HYPOTHESIS
# 6) A SIMPLE EXAMPLE
varnames <- c("a", "b", "c")
hyp1 <- "a > 5 > c"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,0,0,5,0,0,-1,-5))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,2))})
varnames <- c("a", "b", "c")
hyp1 <- "20<-21*a<4.5; a>b> c; 4a > 7; 4 + 7 > a - 4* b + 8"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(-21, 0, 0 ,20.0,
21, 0, 0 ,-4.5,
1, -1, 0, 0.0,
0 , 1, -1, 0.0,
4, 0, 0, 7.0,
-1, 4 , 0, -3.0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0, 2, 0, 2, 0, 1, 0, 1))})
varnames <- c("a22","b19")
hyp1 <- "12*a22 > 2; 243*b19 > .666; 5* a22 - 54*b19 < 45; -12*a22 > -2; 243*b19 < -0.666; 5* a22 - 54*b19 = 45"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(12, 0, 2.000,
0, 243 , 0.666,
-5 , 54 ,-45.000,
-12 , 0 , -2.000,
0 ,-243 , 0.666,
5 , -54, 45.000))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "2* a -3*b -4*f + c > 2"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(2, -3, 1, 0, 0, -4, 2))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,1))})
varnames <- c("a","b","coef1","coef2","coef_1")
hyp1<-"2=a;a=2; 2*a+2=4;2* a+4* b=5+7; 2*a=3+6*b; 2=coef1; coef1=2;2*coef1+2=4; 2*coef1+4*coef2=5+7;2=coef_1;coef_1=2"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(-1, 0, 0, 0 , 0 ,-2,
1, 0, 0, 0 , 0, 2,
2, 0 , 0, 0, 0 , 2,
2 , 4, 0 , 0 , 0, 12,
2 ,-6 , 0 , 0 , 0, 3,
0, 0 , -1 , 0 , 0, -2,
0, 0 , 1 , 0, 0, 2,
0, 0, 2, 0 , 0 , 2,
0, 0, 2 , 4 , 0, 12,
0, 0, 0 , 0 , -1, -2,
0, 0 , 0 , 0, 1, 2
))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0))})
varnames <- c("a","b","c", "d")
hyp1 <- "a > b < c > d; a=b > c < d; a > b-c = d;"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1, -1, 0, 0, 0,
0, -1, 1, 0, 0,
0, 0, 1, -1, 0,
1, -1, 0 , 0, 0,
0, 1, -1, 0, 0,
0, 0, -1, 1, 0,
0, 1, -1, -1, 0,
1, -1, 1, 0, 0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0, 3, 1, 2, 1, 1))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "2a -3b < 4f-c"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(-2, 3, -1, 0, 0, 4, 0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,1))})
# hypotheses specified using the &
# 1) STRAIGHTFORWARD AND WITH ONE USE OF (,)
# 2) SIMPLE
# 3) WRONG INPUT CORRECT RESULT
# 4) A SERIES OF &
varnames <- c("a1","a2","a3")
hyp1 <- "a1 = a2 & a2 = a3; (a1,a2) > a3 & a1 =a2"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1, -1, 0, 0,
0, 1, -1, 0,
1, -1, 0, 0,
1, 0 ,-1, 0,
0, 1, -1, 0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(2, 0, 1, 2))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "a=b&c=d"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,-1,0,0,0,0,0,0,0,1,-1,0,0,0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(2,0))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "a&b=c&d"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(0, 1, -1, 0, 0, 0, 0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(1,0))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "a = b & b= c& c =d& d=e & e>f"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1, -1, 0, 0, 0, 0, 0,
0, 1, -1, 0, 0, 0, 0,
0, 0, 1, -1, 0, 0, 0,
0, 0, 0, 1, -1, 0, 0,
0, 0, 0, 0, 1, -1, 0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(4,1))})
# HYPOTHESES SPECIFIED USING (,)
# 1) STRAIGHTFORWARD
# 2) WITH INAPPROPRIATE USED OF () RENDERING THE CORRECT RESULTS
# 3) LIKE 2)
# 4) A SERIES OF COMBINATIONS BETWEEN THE ()
varnames <- c("a","b","c","d","e","f")
hyp1 <- "(a-b,2*d -12) > (2* e + 2*f, c-9)"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1, -1, 0, 0, -2, -2, 0,
0, 0, 0, 2, -2, -2, 12,
1, -1, -1, 0, 0, 0, -9,
0, 0, -1, 2, 0, 0, 3))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,4))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "(b-a)>(c-d)>(d-f,e-f)"
hyp1 <- "b-a>c-d>(d-f,e-f)"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(-1, 1, -1, 1, 0, 0, 0,
0, 0, 1, -2, 0, 1, 0,
0, 0, 1, -1, -1, 1, 0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,3))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "2a -3b > 4f-c"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(2, -3, 1, 0, 0, -4, 0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,1))})
varnames <- c("a","b","c","d","e","f")
hyp1 <- "(a,b,c,d) > (e,f); (a-d, a-e, a-f) > (b-d, d-e, b-f) = (c-f,c-e,c-d) < (a+b, c+d, e+f) & (a,b,c,d) = (e+2,2*f-0.5)"
x<-bain:::parse_hypothesis(varnames, hyp1)
test_that("parser", {expect_equal(as.vector(t(do.call(rbind, x$hyp_mat))), c(1,0,0,0 ,-1,0,0.0,
0,1,0,0 ,-1,0,0.0,
0,0,1,0, -1,0,0.0,
0,0,0,1 ,-1,0,0.0,
1,0,0,0,0, -1,0.0,
0,1,0,0,0, -1,0.0,
0,0,1,0,0, -1,0.0,
0,0,0,1,0, -1,0.0,
0,1 ,-1, -1,0,1,0.0,
0,0 ,-1,1, -1,1,0.0,
0,1, -1,0,0,0,0.0,
0,1, -1 ,-1,1,0,0.0,
0,0, -1,1,0,0,0.0,
0,1, -1,0,1, -1,0.0,
0,1, -1,0,0,0,0.0,
0,0, -1,2, -1,0,0.0,
0,1 ,-1,1,0 ,-1,0.0,
1,0,0,0, -1,0,2.0,
0,1,0,0, -1,0,2.0,
0,0,1,0, -1,0,2.0,
0,0,0,1, -1,0,2.0,
1,0,0,0,0 ,-2, -0.5,
0,1,0,0,0 ,-2, -0.5,
0,0,1,0,0, -2, -0.5,
0,0,0,1,0, -2, -0.5,
1 ,-1,0,0,0,0,0.0,
1, -1,0,1 ,-1,0,0.0,
1, -1,0,1,0, -1,0.0,
1,0,0, -2,1,0,0.0,
1,0,0, -1,0,0,0.0,
1,0,0, -1,1, -1,0.0,
1 ,-1,0, -1,0,1,0.0,
1 ,-1,0,0 ,-1,1,0.0,
1, -1,0,0,0,0,0.0,
1,1 ,-1,0,0,1,0.0,
1,1 ,-1,0,1,0,0.0,
1,1, -1,1,0,0,0.0,
0,0,0,1,0,1,0.0,
0,0,0,1,1,0,0.0,
0,0,0,2,0,0,0.0,
0,0, -1,0,1,2,0.0,
0,0, -1,0,2,1,0.0,
0,0 ,-1,1,1,1,0.0))})
test_that("parser", {expect_equal(as.vector(x$n_constraints), c(0,8,17,18))})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.