|
4 | 4 | "context" |
5 | 5 | "testing" |
6 | 6 |
|
| 7 | + "github.com/stellar/go/protocols/horizon/base" |
| 8 | + "github.com/stellar/go/protocols/horizon/operations" |
7 | 9 | "github.com/stretchr/testify/require" |
8 | 10 |
|
9 | 11 | "github.com/stellar/stellar-disbursement-platform-backend/db" |
@@ -266,58 +268,67 @@ func Test_validateStellarTransaction(t *testing.T) { |
266 | 268 | mockAmount := "0.1" |
267 | 269 |
|
268 | 270 | t.Run("error transaction not successful", func(t *testing.T) { |
269 | | - err := validateStellarTransaction(&PaymentHorizon{ |
270 | | - TransactionSuccessful: false, |
| 271 | + err := validateStellarTransaction(&operations.Payment{ |
| 272 | + Base: operations.Base{TransactionSuccessful: false}, |
271 | 273 | }, mockReceiverAccount, mockassetCode, mockassetIssuer, mockAmount) |
272 | 274 | require.EqualError(t, err, "transaction was not successful on horizon network") |
273 | 275 | }) |
274 | 276 |
|
275 | 277 | t.Run("error wrong receiver account", func(t *testing.T) { |
276 | | - err := validateStellarTransaction(&PaymentHorizon{ |
277 | | - TransactionSuccessful: true, |
278 | | - ReceiverAccount: "invalidReceiver", |
| 278 | + err := validateStellarTransaction(&operations.Payment{ |
| 279 | + Base: operations.Base{TransactionSuccessful: true}, |
| 280 | + To: "invalidReceiver", |
279 | 281 | }, mockReceiverAccount, mockassetCode, mockassetIssuer, mockAmount) |
280 | 282 | require.EqualError(t, err, "transaction sent to wrong receiver account") |
281 | 283 | }) |
282 | 284 |
|
283 | 285 | t.Run("error wrong amount", func(t *testing.T) { |
284 | | - err := validateStellarTransaction(&PaymentHorizon{ |
285 | | - TransactionSuccessful: true, |
286 | | - ReceiverAccount: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
287 | | - Amount: "20", |
| 286 | + err := validateStellarTransaction(&operations.Payment{ |
| 287 | + Base: operations.Base{TransactionSuccessful: true}, |
| 288 | + To: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
| 289 | + Amount: "20", |
288 | 290 | }, mockReceiverAccount, mockassetCode, mockassetIssuer, mockAmount) |
289 | 291 | require.EqualError(t, err, "transaction with wrong amount") |
290 | 292 | }) |
291 | 293 |
|
292 | 294 | t.Run("error wrong asset code", func(t *testing.T) { |
293 | | - err := validateStellarTransaction(&PaymentHorizon{ |
294 | | - TransactionSuccessful: true, |
295 | | - ReceiverAccount: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
296 | | - Amount: "0.1", |
297 | | - AssetCode: "invalidCode", |
298 | | - AssetIssuer: "GBZF7AS3TBASAL5RQ7ECJODFWFLBDCKJK5SMPUCO5R36CJUIZRWQJTGB", |
| 295 | + err := validateStellarTransaction(&operations.Payment{ |
| 296 | + Base: operations.Base{TransactionSuccessful: true}, |
| 297 | + To: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
| 298 | + Amount: "0.1", |
| 299 | + Asset: base.Asset{ |
| 300 | + Type: "credit_alphanum12", |
| 301 | + Code: "invalidCode", |
| 302 | + Issuer: "GBZF7AS3TBASAL5RQ7ECJODFWFLBDCKJK5SMPUCO5R36CJUIZRWQJTGB", |
| 303 | + }, |
299 | 304 | }, mockReceiverAccount, mockassetCode, mockassetIssuer, mockAmount) |
300 | 305 | require.EqualError(t, err, "transaction with wrong disbursed asset") |
301 | 306 | }) |
302 | 307 |
|
303 | 308 | t.Run("error wrong asset issuer", func(t *testing.T) { |
304 | | - err := validateStellarTransaction(&PaymentHorizon{ |
305 | | - TransactionSuccessful: true, |
306 | | - ReceiverAccount: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
307 | | - Amount: "0.1", |
308 | | - AssetCode: "USDC", |
309 | | - AssetIssuer: "invalidIssuer", |
| 309 | + err := validateStellarTransaction(&operations.Payment{ |
| 310 | + Base: operations.Base{TransactionSuccessful: true}, |
| 311 | + To: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
| 312 | + Amount: "0.1", |
| 313 | + Asset: base.Asset{ |
| 314 | + Type: "credit_alphanum4", |
| 315 | + Code: "USDC", |
| 316 | + Issuer: "invalidIssuer", |
| 317 | + }, |
310 | 318 | }, mockReceiverAccount, mockassetCode, mockassetIssuer, mockAmount) |
311 | 319 | require.EqualError(t, err, "transaction with wrong disbursed asset") |
312 | 320 | }) |
313 | 321 |
|
314 | 322 | t.Run("successful validation", func(t *testing.T) { |
315 | | - err := validateStellarTransaction(&PaymentHorizon{ |
316 | | - TransactionSuccessful: true, |
317 | | - ReceiverAccount: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
318 | | - Amount: "0.1", |
319 | | - AssetCode: "USDC", |
320 | | - AssetIssuer: "GBZF7AS3TBASAL5RQ7ECJODFWFLBDCKJK5SMPUCO5R36CJUIZRWQJTGB", |
| 323 | + err := validateStellarTransaction(&operations.Payment{ |
| 324 | + Base: operations.Base{TransactionSuccessful: true}, |
| 325 | + To: "GD44L3Q6NYRFPVOX4CJUUV63QEOOU3R5JNQJBLR6WWXFWYHEGK2YVBQ7", |
| 326 | + Amount: "0.1", |
| 327 | + Asset: base.Asset{ |
| 328 | + Type: "credit_alphanum4", |
| 329 | + Code: "USDC", |
| 330 | + Issuer: "GBZF7AS3TBASAL5RQ7ECJODFWFLBDCKJK5SMPUCO5R36CJUIZRWQJTGB", |
| 331 | + }, |
321 | 332 | }, mockReceiverAccount, mockassetCode, mockassetIssuer, mockAmount) |
322 | 333 | require.NoError(t, err) |
323 | 334 | }) |
|
0 commit comments