github.com/ravendb/ravendb-go-client@v0.0.0-20240229102137-4474ee7aa0fa/tests/nullable_time.go (about) 1 package tests 2 3 import ( 4 "testing" 5 6 "github.com/ravendb/ravendb-go-client" 7 "github.com/stretchr/testify/assert" 8 ) 9 10 // Note: must rename as it conflicts with Order in order_test.go 11 type CustomerNilTime struct { 12 ID string `json:"Id"` 13 CreatedAt *ravendb.Time `json:"createdAt"` 14 } 15 16 func TestNilTimeError(t *testing.T) { 17 driver := createTestDriver(t) 18 test_case_string_nil_error(t, driver) 19 } 20 21 func test_case_nil_time_error(t *testing.T, driver *RavenTestDriver) { 22 23 id := "customer1" 24 25 var err error 26 store := driver.getDocumentStoreMust(t) 27 defer store.Close() 28 29 obj := &CustomerNilTime{ 30 ID: id, 31 CreatedAt: nil, 32 } 33 34 { 35 session := openSessionMust(t, store) 36 err = session.Store(obj) 37 assert.NoError(t, err) 38 session.SaveChanges() 39 session.Close() 40 } 41 42 { 43 session := openSessionMust(t, store) 44 var customer *CustomerNilTime 45 err = session.Load(&customer, id) 46 47 assert.True(t, customer.CreatedAt == nil) 48 49 session.Close() 50 } 51 }