tile38/tests
tidwall 401670e621 Fix NEARBY with SPARSE returning too many results
fixes #618
2021-07-22 08:39:57 -07:00
..
107 cleanup / fix tests 2021-05-13 21:14:05 -04:00
616 Update expiration logic 2021-07-12 13:37:50 -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 NEARBY with SPARSE returning too many results 2021-07-22 08:39:57 -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 Fix NEARBY with SPARSE returning too many results 2021-07-22 08:39:57 -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 go fmt 2021-05-13 21:12:49 -04: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"
            },
		},
    }
}