summaryrefslogtreecommitdiff
path: root/ext/librethinkdbxx/test/upstream/regression/2399.rb.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'ext/librethinkdbxx/test/upstream/regression/2399.rb.yaml')
-rw-r--r--ext/librethinkdbxx/test/upstream/regression/2399.rb.yaml45
1 files changed, 45 insertions, 0 deletions
diff --git a/ext/librethinkdbxx/test/upstream/regression/2399.rb.yaml b/ext/librethinkdbxx/test/upstream/regression/2399.rb.yaml
new file mode 100644
index 00000000..6f646bac
--- /dev/null
+++ b/ext/librethinkdbxx/test/upstream/regression/2399.rb.yaml
@@ -0,0 +1,45 @@
+desc: 2399 literal terms not removed under certain circumstances
+table_variable_name: t
+tests:
+ - rb: t.insert({})
+ - rb: t.update({:a => {:b => r.literal({})}})
+ - rb: t.without('id').coerce_to("ARRAY")
+ ot: [{'a':{'b':{}}}]
+ - rb: t.delete()
+
+ - rb: t.insert({})
+ - rb: t.update({:a => {:b => r.literal()}})
+ - rb: t.without('id').coerce_to("ARRAY")
+ ot: [{'a': {}}]
+ - rb: t.delete()
+
+ - rb: t.insert({})
+ - rb: t.update({:a => {:b => {:c => {:d => r.literal({})}}}})
+ - rb: t.without('id').coerce_to("ARRAY")
+ ot: [{'a':{'b':{'c':{'d':{}}}}}]
+ - rb: t.delete()
+
+ - rb: t.insert({})
+ - rb: t.update({:a => {:b => [[[{:c => r.literal({})}]]]}})
+ - rb: t.without('id').coerce_to("ARRAY")
+ ot: [{'a':{'b':[[[{'c':{}}]]]}}]
+ - rb: t.delete()
+
+ - rb: t.insert({})
+ - rb: t.update({:a => {:b => [r.literal()]}})
+ - rb: t.without('id').coerce_to("ARRAY")
+ ot: [{'a':{'b':[]}}]
+ - rb: t.delete()
+
+ - rb: t.insert({})
+ - rb: t.update({:a => {:b => {:a => 'A', :b => 'B', :c => 'C', :cc => r.literal(), :d => 'D'}}})
+ - rb: t.without('id').coerce_to("ARRAY")
+ ot: [{'a':{'b':{'a':'A', 'b':'B', 'c':'C', 'd':'D'}}}]
+ - rb: t.delete()
+
+ - rb: t.insert({})
+ - rb: t.update({:a => {:b => {:a => 'A', :b => 'B', :c => 'C', :cc => r.literal('CC'), :d => 'D'}}})
+ - rb: t.without('id').coerce_to("ARRAY")
+ ot: [{'a':{'b':{'a':'A', 'b':'B', 'c':'C', 'cc':'CC', 'd':'D'}}}]
+ - rb: t.delete()
+