bitemyapp / revise

RethinkDB client for Clojure
146 stars 8 forks source link

tests are failing in latest snapshot #16

Closed danielytics closed 10 years ago

danielytics commented 10 years ago

I wanted to take a look at fixing issue #14 but the tests in the latest snapshots are failing for me.

Don't know about the 2 failures, but it looks like the errors are to do with the old grouped-map-reduce that was removed in the latest RethinkDB release.

lein test output below:


lein test bitemyapp.revise.core-test

lein test :only bitemyapp.revise.core-test/queries

FAIL in (queries) (core_test.clj:478)
Transformations
expected: (= (count (rr union)) 9)
  actual: (not (= 6 9))

lein test :only bitemyapp.revise.core-test/queries

FAIL in (queries) (core_test.clj:478)
Transformations
expected: (= (count (rr sample)) 2)
  actual: (not (= 1 2))

lein test :only bitemyapp.revise.core-test/queries

ERROR in (queries) (FieldSet.java:368)
Aggregation
expected: (= (first (rr grouped-map-reduce)) [{:group 21, :reduction 4} {:group 22, :reduction 6} {:group 23, :reduction 0}])
  actual: java.lang.NullPointerException: null
 at com.google.protobuf.FieldSet.verifyType (FieldSet.java:368)
    com.google.protobuf.FieldSet.setField (FieldSet.java:252)
    com.google.protobuf.DynamicMessage$Builder.setField (DynamicMessage.java:407)
    flatland.protobuf.PersistentProtocolBufferMap.setField (PersistentProtocolBufferMap.java:598)
    flatland.protobuf.PersistentProtocolBufferMap.addField (PersistentProtocolBufferMap.java:668)
    flatland.protobuf.PersistentProtocolBufferMap.cons (PersistentProtocolBufferMap.java:772)
    flatland.protobuf.PersistentProtocolBufferMap.construct (PersistentProtocolBufferMap.java:320)
    flatland.protobuf.core$protobuf.doInvoke (core.clj:46)
    clojure.lang.RestFn.invoke (RestFn.java:573)
    bitemyapp.revise.protoengine$eval5706$fn__5708.invoke (protoengine.clj:111)
    clojure.lang.MultiFn.invoke (MultiFn.java:227)
    bitemyapp.revise.core$run_async.invoke (core.clj:10)
    bitemyapp.revise.core$run.invoke (core.clj:20)
    bitemyapp.revise.core$run.invoke (core.clj:15)
    bitemyapp.revise.core_test$fn__5909$rr__5910.invoke (core_test.clj:423)
    bitemyapp.revise.core_test$fn__5909$fn__6082$fn__6091.invoke (core_test.clj:497)
    bitemyapp.revise.core_test$fn__5909$fn__6082.invoke (core_test.clj:497)
    bitemyapp.revise.core_test/fn (core_test.clj:496)
    clojure.test$test_var$fn__7145.invoke (test.clj:701)
    clojure.test$test_var.invoke (test.clj:701)
    clojure.test$test_all_vars$fn__7149$fn__7156.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars$fn__7149.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars.invoke (test.clj:713)
    clojure.test$test_ns.invoke (test.clj:736)
    clojure.core$map$fn__4207.invoke (core.clj:2487)
    clojure.lang.LazySeq.sval (LazySeq.java:42)
    clojure.lang.LazySeq.seq (LazySeq.java:60)
    clojure.lang.Cons.next (Cons.java:39)
    clojure.lang.RT.boundedLength (RT.java:1654)
    clojure.lang.RestFn.applyTo (RestFn.java:130)
    clojure.core$apply.invoke (core.clj:619)
    clojure.test$run_tests.doInvoke (test.clj:751)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.core$apply.invoke (core.clj:617)
    user$eval4730$fn__4791$fn__4824.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791$fn__4792.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791.invoke (form-init2148184155389381431.clj:1)
    user$eval4730.invoke (form-init2148184155389381431.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:6619)
    clojure.lang.Compiler.eval (Compiler.java:6609)
    clojure.lang.Compiler.load (Compiler.java:7064)
    clojure.lang.Compiler.loadFile (Compiler.java:7020)
    clojure.main$load_script.invoke (main.clj:294)
    clojure.main$init_opt.invoke (main.clj:299)
    clojure.main$initialize.invoke (main.clj:327)
    clojure.main$null_opt.invoke (main.clj:362)
    clojure.main$main.doInvoke (main.clj:440)
    clojure.lang.RestFn.invoke (RestFn.java:421)
    clojure.lang.Var.invoke (Var.java:419)
    clojure.lang.AFn.applyToHelper (AFn.java:163)
    clojure.lang.Var.applyTo (Var.java:532)
    clojure.main.main (main.java:37)

lein test :only bitemyapp.revise.core-test/queries

ERROR in (queries) (FieldSet.java:368)
Aggregation
expected: (= (first (rr grouped-count)) [{:group {:age 21}, :reduction 2} {:group {:age 22}, :reduction 3} {:group {:age 23}, :reduction 1}])
  actual: java.lang.NullPointerException: null
 at com.google.protobuf.FieldSet.verifyType (FieldSet.java:368)
    com.google.protobuf.FieldSet.setField (FieldSet.java:252)
    com.google.protobuf.DynamicMessage$Builder.setField (DynamicMessage.java:407)
    flatland.protobuf.PersistentProtocolBufferMap.setField (PersistentProtocolBufferMap.java:598)
    flatland.protobuf.PersistentProtocolBufferMap.addField (PersistentProtocolBufferMap.java:668)
    flatland.protobuf.PersistentProtocolBufferMap.cons (PersistentProtocolBufferMap.java:772)
    flatland.protobuf.PersistentProtocolBufferMap.construct (PersistentProtocolBufferMap.java:320)
    flatland.protobuf.core$protobuf.doInvoke (core.clj:46)
    clojure.lang.RestFn.invoke (RestFn.java:494)
    bitemyapp.revise.protoengine$eval5706$fn__5708.invoke (protoengine.clj:115)
    clojure.lang.MultiFn.invoke (MultiFn.java:227)
    bitemyapp.revise.core$run_async.invoke (core.clj:10)
    bitemyapp.revise.core$run.invoke (core.clj:20)
    bitemyapp.revise.core$run.invoke (core.clj:15)
    bitemyapp.revise.core_test$fn__5909$rr__5910.invoke (core_test.clj:423)
    bitemyapp.revise.core_test$fn__5909$fn__6082$fn__6095.invoke (core_test.clj:497)
    bitemyapp.revise.core_test$fn__5909$fn__6082.invoke (core_test.clj:497)
    bitemyapp.revise.core_test/fn (core_test.clj:496)
    clojure.test$test_var$fn__7145.invoke (test.clj:701)
    clojure.test$test_var.invoke (test.clj:701)
    clojure.test$test_all_vars$fn__7149$fn__7156.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars$fn__7149.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars.invoke (test.clj:713)
    clojure.test$test_ns.invoke (test.clj:736)
    clojure.core$map$fn__4207.invoke (core.clj:2487)
    clojure.lang.LazySeq.sval (LazySeq.java:42)
    clojure.lang.LazySeq.seq (LazySeq.java:60)
    clojure.lang.Cons.next (Cons.java:39)
    clojure.lang.RT.boundedLength (RT.java:1654)
    clojure.lang.RestFn.applyTo (RestFn.java:130)
    clojure.core$apply.invoke (core.clj:619)
    clojure.test$run_tests.doInvoke (test.clj:751)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.core$apply.invoke (core.clj:617)
    user$eval4730$fn__4791$fn__4824.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791$fn__4792.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791.invoke (form-init2148184155389381431.clj:1)
    user$eval4730.invoke (form-init2148184155389381431.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:6619)
    clojure.lang.Compiler.eval (Compiler.java:6609)
    clojure.lang.Compiler.load (Compiler.java:7064)
    clojure.lang.Compiler.loadFile (Compiler.java:7020)
    clojure.main$load_script.invoke (main.clj:294)
    clojure.main$init_opt.invoke (main.clj:299)
    clojure.main$initialize.invoke (main.clj:327)
    clojure.main$null_opt.invoke (main.clj:362)
    clojure.main$main.doInvoke (main.clj:440)
    clojure.lang.RestFn.invoke (RestFn.java:421)
    clojure.lang.Var.invoke (Var.java:419)
    clojure.lang.AFn.applyToHelper (AFn.java:163)
    clojure.lang.Var.applyTo (Var.java:532)
    clojure.main.main (main.java:37)

lein test :only bitemyapp.revise.core-test/queries

ERROR in (queries) (FieldSet.java:368)
Aggregation
expected: (= (set (first (rr grouped-sum))) #{{:group {:country "in"}, :reduction 3} {:group {:country "mx"}, :reduction 3} {:group {:country "fr"}, :reduction 2} {:group {:country "us"}, :reduction 2} {:group {:country "ca"}, :reduction 2}})
  actual: java.lang.NullPointerException: null
 at com.google.protobuf.FieldSet.verifyType (FieldSet.java:368)
    com.google.protobuf.FieldSet.setField (FieldSet.java:252)
    com.google.protobuf.DynamicMessage$Builder.setField (DynamicMessage.java:407)
    flatland.protobuf.PersistentProtocolBufferMap.setField (PersistentProtocolBufferMap.java:598)
    flatland.protobuf.PersistentProtocolBufferMap.addField (PersistentProtocolBufferMap.java:668)
    flatland.protobuf.PersistentProtocolBufferMap.cons (PersistentProtocolBufferMap.java:772)
    flatland.protobuf.PersistentProtocolBufferMap.construct (PersistentProtocolBufferMap.java:320)
    flatland.protobuf.core$protobuf.doInvoke (core.clj:46)
    clojure.lang.RestFn.invoke (RestFn.java:494)
    bitemyapp.revise.protoengine$eval5706$fn__5708.invoke (protoengine.clj:115)
    clojure.lang.MultiFn.invoke (MultiFn.java:227)
    bitemyapp.revise.core$run_async.invoke (core.clj:10)
    bitemyapp.revise.core$run.invoke (core.clj:20)
    bitemyapp.revise.core$run.invoke (core.clj:15)
    bitemyapp.revise.core_test$fn__5909$rr__5910.invoke (core_test.clj:423)
    bitemyapp.revise.core_test$fn__5909$fn__6082$fn__6099.invoke (core_test.clj:497)
    bitemyapp.revise.core_test$fn__5909$fn__6082.invoke (core_test.clj:497)
    bitemyapp.revise.core_test/fn (core_test.clj:496)
    clojure.test$test_var$fn__7145.invoke (test.clj:701)
    clojure.test$test_var.invoke (test.clj:701)
    clojure.test$test_all_vars$fn__7149$fn__7156.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars$fn__7149.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars.invoke (test.clj:713)
    clojure.test$test_ns.invoke (test.clj:736)
    clojure.core$map$fn__4207.invoke (core.clj:2487)
    clojure.lang.LazySeq.sval (LazySeq.java:42)
    clojure.lang.LazySeq.seq (LazySeq.java:60)
    clojure.lang.Cons.next (Cons.java:39)
    clojure.lang.RT.boundedLength (RT.java:1654)
    clojure.lang.RestFn.applyTo (RestFn.java:130)
    clojure.core$apply.invoke (core.clj:619)
    clojure.test$run_tests.doInvoke (test.clj:751)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.core$apply.invoke (core.clj:617)
    user$eval4730$fn__4791$fn__4824.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791$fn__4792.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791.invoke (form-init2148184155389381431.clj:1)
    user$eval4730.invoke (form-init2148184155389381431.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:6619)
    clojure.lang.Compiler.eval (Compiler.java:6609)
    clojure.lang.Compiler.load (Compiler.java:7064)
    clojure.lang.Compiler.loadFile (Compiler.java:7020)
    clojure.main$load_script.invoke (main.clj:294)
    clojure.main$init_opt.invoke (main.clj:299)
    clojure.main$initialize.invoke (main.clj:327)
    clojure.main$null_opt.invoke (main.clj:362)
    clojure.main$main.doInvoke (main.clj:440)
    clojure.lang.RestFn.invoke (RestFn.java:421)
    clojure.lang.Var.invoke (Var.java:419)
    clojure.lang.AFn.applyToHelper (AFn.java:163)
    clojure.lang.Var.applyTo (Var.java:532)
    clojure.main.main (main.java:37)

lein test :only bitemyapp.revise.core-test/queries

ERROR in (queries) (FieldSet.java:368)
Aggregation
expected: (= (set (first (rr grouped-average))) #{{:group {:country "ca"}, :reduction 22} {:group {:country "in"}, :reduction 22} {:group {:country "mx"}, :reduction 21} {:group {:country "fr"}, :reduction 23} {:group {:country "us"}, :reduction 21.5}})
  actual: java.lang.NullPointerException: null
 at com.google.protobuf.FieldSet.verifyType (FieldSet.java:368)
    com.google.protobuf.FieldSet.setField (FieldSet.java:252)
    com.google.protobuf.DynamicMessage$Builder.setField (DynamicMessage.java:407)
    flatland.protobuf.PersistentProtocolBufferMap.setField (PersistentProtocolBufferMap.java:598)
    flatland.protobuf.PersistentProtocolBufferMap.addField (PersistentProtocolBufferMap.java:668)
    flatland.protobuf.PersistentProtocolBufferMap.cons (PersistentProtocolBufferMap.java:772)
    flatland.protobuf.PersistentProtocolBufferMap.construct (PersistentProtocolBufferMap.java:320)
    flatland.protobuf.core$protobuf.doInvoke (core.clj:46)
    clojure.lang.RestFn.invoke (RestFn.java:494)
    bitemyapp.revise.protoengine$eval5706$fn__5708.invoke (protoengine.clj:115)
    clojure.lang.MultiFn.invoke (MultiFn.java:227)
    bitemyapp.revise.core$run_async.invoke (core.clj:10)
    bitemyapp.revise.core$run.invoke (core.clj:20)
    bitemyapp.revise.core$run.invoke (core.clj:15)
    bitemyapp.revise.core_test$fn__5909$rr__5910.invoke (core_test.clj:423)
    bitemyapp.revise.core_test$fn__5909$fn__6082$fn__6103.invoke (core_test.clj:497)
    bitemyapp.revise.core_test$fn__5909$fn__6082.invoke (core_test.clj:497)
    bitemyapp.revise.core_test/fn (core_test.clj:496)
    clojure.test$test_var$fn__7145.invoke (test.clj:701)
    clojure.test$test_var.invoke (test.clj:701)
    clojure.test$test_all_vars$fn__7149$fn__7156.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars$fn__7149.invoke (test.clj:717)
    clojure.test$default_fixture.invoke (test.clj:671)
    clojure.test$test_all_vars.invoke (test.clj:713)
    clojure.test$test_ns.invoke (test.clj:736)
    clojure.core$map$fn__4207.invoke (core.clj:2487)
    clojure.lang.LazySeq.sval (LazySeq.java:42)
    clojure.lang.LazySeq.seq (LazySeq.java:60)
    clojure.lang.Cons.next (Cons.java:39)
    clojure.lang.RT.boundedLength (RT.java:1654)
    clojure.lang.RestFn.applyTo (RestFn.java:130)
    clojure.core$apply.invoke (core.clj:619)
    clojure.test$run_tests.doInvoke (test.clj:751)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.core$apply.invoke (core.clj:617)
    user$eval4730$fn__4791$fn__4824.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791$fn__4792.invoke (form-init2148184155389381431.clj:1)
    user$eval4730$fn__4791.invoke (form-init2148184155389381431.clj:1)
    user$eval4730.invoke (form-init2148184155389381431.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:6619)
    clojure.lang.Compiler.eval (Compiler.java:6609)
    clojure.lang.Compiler.load (Compiler.java:7064)
    clojure.lang.Compiler.loadFile (Compiler.java:7020)
    clojure.main$load_script.invoke (main.clj:294)
    clojure.main$init_opt.invoke (main.clj:299)
    clojure.main$initialize.invoke (main.clj:327)
    clojure.main$null_opt.invoke (main.clj:362)
    clojure.main$main.doInvoke (main.clj:440)
    clojure.lang.RestFn.invoke (RestFn.java:421)
    clojure.lang.Var.invoke (Var.java:419)
    clojure.lang.AFn.applyToHelper (AFn.java:163)
    clojure.lang.Var.applyTo (Var.java:532)
    clojure.main.main (main.java:37)

Ran 1 tests containing 97 assertions.
2 failures, 4 errors.
cesarbp commented 10 years ago

This is because of the success-partial results which are yet unimplemented. The counts you're getting are for the first table of the union. Sorry I've been extremely busy, I will try to put some work on the driver these days.

And the rest of the errors are because those queries no longer exist. They are replaced by group, reduce, map and so on.

danielytics commented 10 years ago

No worries. I knew that the queries were replaced in the latest RethinkDB, so I assumed that's what that is. I'm busy now too, so there's no rush. Probably will be two weeks until I really get time, so I'll take another look then.

cesarbp commented 10 years ago

Fixed 97edb11cfde09b8852ce77cf1ccf8583d96ef2f0