1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
// Copyright (C) MongoDB, Inc. 2017-present.
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may
// not use this file except in compliance with the License. You may obtain
// a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
package bsontype
import "testing"
func TestType(t *testing.T) {
testCases := []struct {
name string
t Type
want string
}{
{"double", Double, "double"},
{"string", String, "string"},
{"embedded document", EmbeddedDocument, "embedded document"},
{"array", Array, "array"},
{"binary", Binary, "binary"},
{"undefined", Undefined, "undefined"},
{"objectID", ObjectID, "objectID"},
{"boolean", Boolean, "boolean"},
{"UTC datetime", DateTime, "UTC datetime"},
{"null", Null, "null"},
{"regex", Regex, "regex"},
{"dbPointer", DBPointer, "dbPointer"},
{"javascript", JavaScript, "javascript"},
{"symbol", Symbol, "symbol"},
{"code with scope", CodeWithScope, "code with scope"},
{"32-bit integer", Int32, "32-bit integer"},
{"timestamp", Timestamp, "timestamp"},
{"64-bit integer", Int64, "64-bit integer"},
{"128-bit decimal", Decimal128, "128-bit decimal"},
{"min key", MinKey, "min key"},
{"max key", MaxKey, "max key"},
{"invalid", (0), "invalid"},
}
for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
got := tc.t.String()
if got != tc.want {
t.Errorf("String outputs do not match. got %s; want %s", got, tc.want)
}
})
}
}
|