voucher-data #138
@ -1197,7 +1197,7 @@ func (h *Handlers) ViewVoucher(ctx context.Context, sym string, input []byte) (r
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err := h.storeTemporaryVoucher(ctx, sessionId, metadata); err != nil {
 | 
			
		||||
		return resource.Result{}, err
 | 
			
		||||
		return res, err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	res.FlagReset = append(res.FlagReset, flag_incorrect_voucher)
 | 
			
		||||
@ -1295,15 +1295,16 @@ func (h *Handlers) SetVoucher(ctx context.Context, sym string, input []byte) (re
 | 
			
		||||
	// Get temporary data
 | 
			
		||||
	tempData, err := h.getTemporaryVoucherData(ctx, sessionId)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return resource.Result{}, err
 | 
			
		||||
		return res, err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Set as active and clear temporary
 | 
			
		||||
	if err := h.updateVoucherData(ctx, sessionId, tempData); err != nil {
 | 
			
		||||
		return resource.Result{}, err
 | 
			
		||||
		return res, err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return resource.Result{Content: tempData.Symbol}, nil
 | 
			
		||||
	res.Content = tempData.Symbol
 | 
			
		||||
	return res, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (h *Handlers) getTemporaryVoucherData(ctx context.Context, sessionId string) (*VoucherMetadata, error) {
 | 
			
		||||
 | 
			
		||||
@ -1816,16 +1816,43 @@ func TestSetVoucher(t *testing.T) {
 | 
			
		||||
	sessionId := "session123"
 | 
			
		||||
	ctx := context.WithValue(context.Background(), "SessionId", sessionId)
 | 
			
		||||
 | 
			
		||||
	// Define the temporary voucher data
 | 
			
		||||
	temporarySym := []byte("tempSym")
 | 
			
		||||
	temporaryBal := []byte("tempBal")
 | 
			
		||||
	temporaryDecimal := []byte("2")
 | 
			
		||||
	temporaryAddress := []byte("0x123456")
 | 
			
		||||
 | 
			
		||||
	// Set expectations for the mock data store
 | 
			
		||||
	// Define the expected active entries
 | 
			
		||||
	activeEntries := map[utils.DataTyp][]byte{
 | 
			
		||||
		utils.DATA_ACTIVE_SYM:     temporarySym,
 | 
			
		||||
		utils.DATA_ACTIVE_BAL:     temporaryBal,
 | 
			
		||||
		utils.DATA_ACTIVE_DECIMAL: temporaryDecimal,
 | 
			
		||||
		utils.DATA_ACTIVE_ADDRESS: temporaryAddress,
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Define the temporary entries to be cleared
 | 
			
		||||
	tempEntries := map[utils.DataTyp][]byte{
 | 
			
		||||
		utils.DATA_TEMPORARY_SYM:     []byte(""),
 | 
			
		||||
		utils.DATA_TEMPORARY_BAL:     []byte(""),
 | 
			
		||||
		utils.DATA_TEMPORARY_DECIMAL: []byte(""),
 | 
			
		||||
		utils.DATA_TEMPORARY_ADDRESS: []byte(""),
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Mocking ReadEntry calls for temporary data retrieval
 | 
			
		||||
	mockDataStore.On("ReadEntry", ctx, sessionId, utils.DATA_TEMPORARY_SYM).Return(temporarySym, nil)
 | 
			
		||||
	mockDataStore.On("ReadEntry", ctx, sessionId, utils.DATA_TEMPORARY_BAL).Return(temporaryBal, nil)
 | 
			
		||||
	mockDataStore.On("WriteEntry", ctx, sessionId, utils.DATA_ACTIVE_SYM, temporarySym).Return(nil)
 | 
			
		||||
	mockDataStore.On("WriteEntry", ctx, sessionId, utils.DATA_ACTIVE_BAL, temporaryBal).Return(nil)
 | 
			
		||||
	mockDataStore.On("WriteEntry", ctx, sessionId, utils.DATA_TEMPORARY_SYM, []byte("")).Return(nil)
 | 
			
		||||
	mockDataStore.On("WriteEntry", ctx, sessionId, utils.DATA_TEMPORARY_BAL, []byte("")).Return(nil)
 | 
			
		||||
	mockDataStore.On("ReadEntry", ctx, sessionId, utils.DATA_TEMPORARY_DECIMAL).Return(temporaryDecimal, nil)
 | 
			
		||||
	mockDataStore.On("ReadEntry", ctx, sessionId, utils.DATA_TEMPORARY_ADDRESS).Return(temporaryAddress, nil)
 | 
			
		||||
 | 
			
		||||
	// Mocking WriteEntry calls for setting active data
 | 
			
		||||
	for key, value := range activeEntries {
 | 
			
		||||
		mockDataStore.On("WriteEntry", ctx, sessionId, key, value).Return(nil)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Mocking WriteEntry calls for clearing temporary data
 | 
			
		||||
	for key, value := range tempEntries {
 | 
			
		||||
		mockDataStore.On("WriteEntry", ctx, sessionId, key, value).Return(nil)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	h := &Handlers{
 | 
			
		||||
		userdataStore: mockDataStore,
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user