Added test for ':X' function

This commit is contained in:
Marco Cetica 2024-03-01 09:48:47 +01:00
parent 7e7c4c08d6
commit 24b26d2154
Signed by: marco
GPG Key ID: 45060A949E90D0FD
3 changed files with 20 additions and 5 deletions

View File

@ -430,6 +430,7 @@ std::optional<std::string> Evaluate::parse_register_command(std::string val) {
// Always discard previous instance of the register
// i.e., initialize a new instance of register 'reg_name'
this->regs.erase(reg_name);
this->regs.insert(
std::make_pair(reg_name, Register{
std::vector<std::string>(),
@ -478,7 +479,7 @@ std::optional<std::string> Evaluate::parse_register_command(std::string val) {
// Check if register's stack is empty
if(this->regs[reg_name].stack.empty()) {
return std::string("The stack of register '") + reg_name + std::string(" is empty");
return std::string("The stack of register '") + reg_name + std::string("' is empty");
}
// Otherwise, pop an element from the register's stack and push it onto the main stack

View File

@ -1,6 +1,6 @@
#!/bin/sh
test_read() {
test_load() {
PROGRAM="$PWD/build/dc"
EXPECTED="5"
ACTUAL=$("$PROGRAM" -e '5 sA lA p')
@ -12,7 +12,7 @@ test_read() {
assert_eq "$EXPECTED" "$ACTUAL"
}
test_uppercase_read() {
test_uppercase_load() {
PROGRAM="$PWD/build/dc"
EXPECTED="5"
ACTUAL=$("$PROGRAM" -e '5 sA LA p')
@ -25,7 +25,7 @@ test_uppercase_read() {
}
utest() {
test_read
test_uppercase_read
test_load
test_uppercase_load
}
# vim: ts=4 sw=4 softtabstop=4 expandtab:

14
tests/test_warr Normal file
View File

@ -0,0 +1,14 @@
#!/bin/sh
utest() {
PROGRAM="$PWD/build/dc"
EXPECTED="6"
ACTUAL=$("$PROGRAM" -e '5 0 :A 6 0 :A 0 ;A p')
assert_eq "$EXPECTED" "$ACTUAL"
# Test empty stack
EXPECTED="This operation requires two values"
ACTUAL=$("$PROGRAM" -e ':A' 2>&1) || true
assert_eq "$EXPECTED" "$ACTUAL"
}
# vim: ts=4 sw=4 softtabstop=4 expandtab: