github.com/altipla-consulting/ravendb-go-client@v0.1.3/tests/get_statistics_command_test.go (about) 1 package tests 2 3 import ( 4 "testing" 5 6 "github.com/altipla-consulting/ravendb-go-client" 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func getStatisticsCommandTestCanGetStats(t *testing.T, driver *RavenTestDriver) { 11 var err error 12 store := driver.getDocumentStoreMust(t) 13 defer store.Close() 14 15 executor := store.GetRequestExecutor("") 16 17 sampleData := ravendb.NewCreateSampleDataOperation() 18 err = store.Maintenance().Send(sampleData) 19 assert.NoError(t, err) 20 21 err = driver.waitForIndexing(store, store.GetDatabase(), 0) 22 assert.NoError(t, err) 23 command := ravendb.NewGetStatisticsCommand("") 24 assert.NoError(t, err) 25 err = executor.ExecuteCommand(command, nil) 26 assert.NoError(t, err) 27 stats := command.Result 28 assert.NotNil(t, stats) 29 assert.True(t, stats.LastDocEtag > 0) 30 assert.Equal(t, stats.CountOfIndexes, 3) 31 assert.Equal(t, stats.CountOfDocuments, int64(1059)) 32 assert.True(t, stats.CountOfRevisionDocuments > 0) 33 assert.Equal(t, stats.CountOfDocumentsConflicts, int64(0)) 34 assert.Equal(t, stats.CountOfConflicts, int64(0)) 35 assert.Equal(t, stats.CountOfUniqueAttachments, int64(17)) 36 assert.NotEqual(t, stats.DatabaseChangeVector, "") 37 assert.NotEqual(t, stats.DatabaseID, "") 38 assert.NotNil(t, stats.Pager) 39 assert.NotNil(t, stats.GetLastIndexingTime()) 40 assert.NotNil(t, stats.Indexes) 41 assert.NotEqual(t, stats.SizeOnDisk.HumaneSize, "") 42 assert.NotEqual(t, stats.SizeOnDisk.SizeInBytes, 0) 43 44 indexes := stats.Indexes 45 for _, indexInformation := range indexes { 46 assert.NotEqual(t, indexInformation.Name, "") 47 assert.False(t, indexInformation.IsStale) 48 assert.NotNil(t, indexInformation.State) 49 assert.NotEqual(t, indexInformation.LockMode, "") 50 assert.NotEqual(t, indexInformation.Priority, "") 51 assert.NotEqual(t, indexInformation.Type, "") 52 assert.NotNil(t, indexInformation.GetLastIndexingTime()) 53 } 54 } 55 56 func TestGetStatisticsCommand(t *testing.T) { 57 driver := createTestDriver(t) 58 destroy := func() { destroyDriver(t, driver) } 59 defer recoverTest(t, destroy) 60 61 getStatisticsCommandTestCanGetStats(t, driver) 62 }