func TestParentEmptyRestore(t *testing.T) { ctx, ds, cleanupfunc := datastore.DSsetup(t) if t.Failed() { return } defer cleanupfunc() par, err := restoreParentMap(ctx, ds, testStore) if !assert.NoError(t, err) && !assert.NotNil(t, par) { return } }
// Write some child -> parent mappings and see if we can read them. func TestParentSaveRestore(t *testing.T) { ctx, ds, cleanupfunc := datastore.DSsetup(t) if t.Failed() { return } defer cleanupfunc() op := trace.NewOperation(ctx, "test") par, err := restoreParentMap(op, ds, testStore) if !assert.NoError(t, err) && !assert.NotNil(t, par) { return } expected := make(map[string]string) for i := 0; i < 10; i++ { child := fmt.Sprintf("c%d", i) parent := fmt.Sprintf("p%d", i) expected[child] = parent par.Add(child, parent) } err = par.Save(op) if !assert.NoError(t, err) { return } // load into a different map p, err := restoreParentMap(op, ds, testStore) if !assert.NoError(t, err) && !assert.NotNil(t, p) { return } // check if the 2nd map loaded everything correctly if !assert.Equal(t, expected, p.db) { return } // Now save it to be extra paranoid err = p.Save(op) if !assert.NoError(t, err) { return } }
func TestParentEmptySaveRestore(t *testing.T) { ctx, ds, cleanupfunc := datastore.DSsetup(t) if t.Failed() { return } defer cleanupfunc() op := trace.NewOperation(ctx, "test") par, err := restoreParentMap(op, ds, testStore) if !assert.NoError(t, err) && !assert.NotNil(t, par) { return } err = par.Save(op) if !assert.NoError(t, err) { return } p, err := restoreParentMap(op, ds, testStore) if !assert.NoError(t, err) && !assert.NotNil(t, p) { return } }