tile38/tests
tidwall 8e61f8163e Fix test on Apple silicon
The returned distance value for the kNN test was failing on a
Apple M1 machine. The test expected a hardcoded value.

amd64: 13053.885940801563
apple: 13053.885940801567

Not sure why the difference between the two cpus but I changed
the test to not compare for exact equality.
2022-06-16 16:02:37 -07:00
..
107 Use struct for server options 2021-09-06 08:55:13 -07:00
616 Update btree/buntdb 2021-07-31 07:42:58 -07:00
README.md Fix nearby with match query invalid results 2019-03-01 06:55:26 -07:00
client_test.go Removed elapsed member for json testing 2019-05-28 09:22:15 -07:00
fence_roaming_test.go Fixed a missing faraway event for roaming geofences 2020-03-22 11:54:56 -07:00
fence_test.go enable fence tests 2020-11-03 14:56:31 -07:00
json_test.go Updated dependencies 2020-09-22 16:43:58 -07:00
keys_search_test.go Fix test on Apple silicon 2022-06-16 16:02:37 -07:00
keys_test.go Fix a bug in WHEREIN -- 0 values would always match, incorrectly. 2020-04-12 16:06:10 -07:00
metrics_test.go fix tests 2021-05-13 21:14:06 -04:00
mock_test.go Use struct for server options 2021-09-29 07:19:00 -07:00
scripts_test.go Add distance_to function to the tile38 namespace in lua. 2019-01-04 14:57:00 -08:00
stats_test.go Testing for valid INFO and CLIENT Json output 2019-01-15 11:08:19 -07:00
testcmd_test.go feat: add sector 2021-09-05 11:48:34 +02:00
tests_test.go Merge branch 'housecanary-fix-knn' 2021-07-11 10:02:59 -07:00
timeout_test.go Rework timeouts to allow prepending any command with the TIMEOUT seconds 2019-04-25 14:15:53 -07:00

README.md

Tile38 Integation Testing

  • Uses Redis protocol
  • The Tile38 data is flushed before every DoBatch

A basic test operation looks something like:

func keys_SET_test(mc *mockServer) error {
	return mc.DoBatch([][]interface{}{
        {"SET", "fleet", "truck1", "POINT", 33.0001, -112.0001}, {"OK"},
        {"GET", "fleet", "truck1", "POINT"}, {"[33.0001 -112.0001]"},
    }
}

Using a custom function:

func keys_MATCH_test(mc *mockServer) error {
	return mc.DoBatch([][]interface{}{
        {"SET", "fleet", "truck1", "POINT", 33.0001, -112.0001}, {
            func(v interface{}) (resp, expect interface{}) {
                // v is the value as strings or slices of strings
                // test will pass as long as `resp` and `expect` are the same.
                return v, "OK"
            },
		},
    }
}