Env_test fixes

This commit is contained in:
Vinnie Falco
2015-07-02 15:43:57 -07:00
parent 6a093b1b44
commit c079d9ae38

View File

@@ -424,33 +424,34 @@ public:
jt1.set<int>(7); jt1.set<int>(7);
expect(jt1.get<int>()); expect(jt1.get<int>());
expect(*jt1.get<int>() == 7); expect(*jt1.get<int>() == 7);
expect(!jt1.get<Env>()); expect(!jt1.get<UDT>());
// Test that the property is // Test that the property is
// replaced if it exists. // replaced if it exists.
jt1.set<int>(17); jt1.set<int>(17);
expect(jt1.get<int>()); expect(jt1.get<int>());
expect(*jt1.get<int>() == 17); expect(*jt1.get<int>() == 17);
expect(!jt1.get<Env>()); expect(!jt1.get<UDT>());
// Test that modifying the // Test that modifying the
// returned prop is saved // returned prop is saved
*jt1.get<int>() = 42; *jt1.get<int>() = 42;
expect(jt1.get<int>()); expect(jt1.get<int>());
expect(*jt1.get<int>() == 42); expect(*jt1.get<int>() == 42);
expect(!jt1.get<Env>()); expect(!jt1.get<UDT>());
// Test get() const // Test get() const
auto const& jt2 = jt1; auto const& jt2 = jt1;
expect(jt2.get<int>()); expect(jt2.get<int>());
expect(*jt2.get<int>() == 42); expect(*jt2.get<int>() == 42);
expect(!jt2.get<Env>()); expect(!jt2.get<UDT>());
} }
void testProp() void testProp()
{ {
using namespace jtx; using namespace jtx;
Env env(*this); Env env(*this);
env.fund(XRP(100000), "alice");
env.memoize("alice"); env.memoize("alice");
auto jt1 = env.jt(noop("alice")); auto jt1 = env.jt(noop("alice"));
@@ -473,6 +474,10 @@ public:
expect(!*jt3.get<bool>()); expect(!*jt3.get<bool>());
} }
struct UDT
{
};
void testJTxCopy() void testJTxCopy()
{ {
using namespace jtx; using namespace jtx;
@@ -480,16 +485,16 @@ public:
jt1.set<int>(7); jt1.set<int>(7);
expect(jt1.get<int>()); expect(jt1.get<int>());
expect(*jt1.get<int>() == 7); expect(*jt1.get<int>() == 7);
expect(!jt1.get<Env>()); expect(!jt1.get<UDT>());
JTx jt2(jt1); JTx jt2(jt1);
expect(jt2.get<int>()); expect(jt2.get<int>());
expect(*jt2.get<int>() == 7); expect(*jt2.get<int>() == 7);
expect(!jt2.get<Env>()); expect(!jt2.get<UDT>());
JTx jt3; JTx jt3;
jt3 = jt1; jt3 = jt1;
expect(jt3.get<int>()); expect(jt3.get<int>());
expect(*jt3.get<int>() == 7); expect(*jt3.get<int>() == 7);
expect(!jt3.get<Env>()); expect(!jt3.get<UDT>());
} }
void testJTxMove() void testJTxMove()
@@ -499,19 +504,19 @@ public:
jt1.set<int>(7); jt1.set<int>(7);
expect(jt1.get<int>()); expect(jt1.get<int>());
expect(*jt1.get<int>() == 7); expect(*jt1.get<int>() == 7);
expect(!jt1.get<Env>()); expect(!jt1.get<UDT>());
JTx jt2(std::move(jt1)); JTx jt2(std::move(jt1));
expect(!jt1.get<int>()); expect(!jt1.get<int>());
expect(!jt1.get<Env>()); expect(!jt1.get<UDT>());
expect(jt2.get<int>()); expect(jt2.get<int>());
expect(*jt2.get<int>() == 7); expect(*jt2.get<int>() == 7);
expect(!jt2.get<Env>()); expect(!jt2.get<UDT>());
jt1 = std::move(jt2); jt1 = std::move(jt2);
expect(!jt2.get<int>()); expect(!jt2.get<int>());
expect(!jt2.get<Env>()); expect(!jt2.get<UDT>());
expect(jt1.get<int>()); expect(jt1.get<int>());
expect(*jt1.get<int>() == 7); expect(*jt1.get<int>() == 7);
expect(!jt1.get<Env>()); expect(!jt1.get<UDT>());
} }
void void