313
314
// TestCreateNamespace test
316
>
id := uuid.NewString()
317
>
name := "create-namespace-test-name-for-partial-test"
318
>
state := enumspb.NAMESPACE_STATE_REGISTERED
319
>
description := "create-namespace-test-description"
320
>
owner := "create-namespace-test-owner"
321
>
data := map[string]string{"k1": "v1"}
322
>
retention := int32(10)
323
>
historyArchivalState := enumspb.ARCHIVAL_STATE_ENABLED
324
>
historyArchivalURI := "test://history/uri"
325
>
visibilityArchivalState := enumspb.ARCHIVAL_STATE_ENABLED
326
>
visibilityArchivalURI := "test://visibility/uri"
327
>
badBinaries := &namespacepb.BadBinaries{Binaries: map[string]*namespacepb.BadBinaryInfo{}}
328
>
isGlobalNamespace := false
329
>
configVersion := int64(0)
330
>
failoverVersion := int64(0)
331
>
332
>
resp0, err0 := m.CreateNamespace(
333
>
&persistencespb.NamespaceInfo{
334
>
Id: id,
335
>
Name: name,
336
>
State: state,
337
>
Description: description,
338
>
Owner: owner,
339
>
Data: data,
340
>
},
341
>
&persistencespb.NamespaceConfig{
342
>
Retention: timestamp.DurationFromDays(retention),
343
>
HistoryArchivalState: historyArchivalState,
344
>
HistoryArchivalUri: historyArchivalURI,
345
>
VisibilityArchivalState: visibilityArchivalState,
346
>
VisibilityArchivalUri: visibilityArchivalURI,
347
>
BadBinaries: badBinaries,
348
>
},
349
>
&persistencespb.NamespaceReplicationConfig{},
350
>
isGlobalNamespace,
351
>
configVersion,
352
>
failoverVersion,
353
>
)
354
>
m.NoError(err0)
355
>
m.NotNil(resp0)
356
>
m.EqualValues(id, resp0.ID)
357
>
358
>
// for namespace which do not have replication config set, will default to
359
>
// use current cluster as active, with current cluster as all clusters
360
>
resp1, err1 := m.GetNamespace(id, "")
361
>
m.NoError(err1)
362
>
m.NotNil(resp1)
363
>
m.EqualValues(id, resp1.Namespace.Info.Id)
364
>
m.Equal(name, resp1.Namespace.Info.Name)
365
>
m.Equal(state, resp1.Namespace.Info.State)
366
>
m.Equal(description, resp1.Namespace.Info.Description)
367
>
m.Equal(owner, resp1.Namespace.Info.Owner)
368
>
m.Equal(data, resp1.Namespace.Info.Data)
369
>
m.EqualValues(time.Duration(retention)*time.Hour*24, resp1.Namespace.Config.Retention.AsDuration())
370
>
m.Equal(historyArchivalState, resp1.Namespace.Config.HistoryArchivalState)
371
>
m.Equal(historyArchivalURI, resp1.Namespace.Config.HistoryArchivalUri)
372
>
m.Equal(visibilityArchivalState, resp1.Namespace.Config.VisibilityArchivalState)
373
>
m.Equal(visibilityArchivalURI, resp1.Namespace.Config.VisibilityArchivalUri)
374
>
m.ProtoEqual(badBinaries, resp1.Namespace.Config.BadBinaries)
375
>
m.Equal(cluster.TestCurrentClusterName, resp1.Namespace.ReplicationConfig.ActiveClusterName)
376
>
m.Equal(1, len(resp1.Namespace.ReplicationConfig.Clusters))
377
>
m.Equal(isGlobalNamespace, resp1.IsGlobalNamespace)
378
>
m.Equal(configVersion, resp1.Namespace.ConfigVersion)
379
>
m.Equal(failoverVersion, resp1.Namespace.FailoverVersion)
380
>
m.True(resp1.Namespace.ReplicationConfig.Clusters[0] == cluster.TestCurrentClusterName)
381
>
m.Equal(p.InitialFailoverNotificationVersion, resp1.Namespace.FailoverNotificationVersion)
382
>
383
>
resp2, err2 := m.CreateNamespace(
384
>
&persistencespb.NamespaceInfo{
385
>
Id: uuid.NewString(),
386
>
Name: name,
387
>
State: state,
388
>
Description: "fail",
389
>
Owner: "fail",
390
>
Data: map[string]string{},
391
>
},
392
>
&persistencespb.NamespaceConfig{
393
>
Retention: timestamp.DurationFromDays(100),
394
>
HistoryArchivalState: enumspb.ARCHIVAL_STATE_DISABLED,
395
>
HistoryArchivalUri: "",
396
>
VisibilityArchivalState: enumspb.ARCHIVAL_STATE_DISABLED,
397
>
VisibilityArchivalUri: "",
398
>
},
399
>
&persistencespb.NamespaceReplicationConfig{},
400
>
isGlobalNamespace,
401
>
configVersion,
402
>
failoverVersion,
403
>
)
404
>
m.Error(err2)
405
>
m.IsType(&serviceerror.NamespaceAlreadyExists{}, err2)
406
>
m.Nil(resp2)
407
>
}
408
409
// TestGetNamespace test