mongo_test.go 663 B

123456789101112131415161718192021
  1. package database
  2. import "testing"
  3. func TestParseMongoDatabaseName(t *testing.T) {
  4. tests := []struct {
  5. uri, want string
  6. wantErr bool
  7. }{
  8. {"mongodb://localhost:27017/toolbox?authSource=admin", "toolbox", false},
  9. {"mongodb://user:pass@mongo-a:27017,mongo-b:27017/toolbox?replicaSet=rs0", "toolbox", false},
  10. {"mongodb://localhost:27017/?authSource=admin", "", true},
  11. {"not-a-uri", "", true},
  12. }
  13. for _, test := range tests {
  14. got, err := parseMongoDatabaseName(test.uri)
  15. if (err != nil) != test.wantErr || got != test.want {
  16. t.Fatalf("parseMongoDatabaseName(%q) = %q, %v; want %q, err=%v", test.uri, got, err, test.want, test.wantErr)
  17. }
  18. }
  19. }