snf_core 0.2.94 → 0.2.95

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/snf_core/auth_controller.rb +12 -2
  3. data/app/models/snf_core/account_transfer.rb +37 -0
  4. data/app/models/snf_core/item_request.rb +27 -0
  5. data/app/models/snf_core/user.rb +7 -6
  6. data/app/models/snf_core/virtual_account.rb +41 -0
  7. data/app/models/snf_core/virtual_account_transaction.rb +52 -0
  8. data/db/migrate/20250310122954_create_snf_core_virtual_accounts.rb +22 -0
  9. data/db/migrate/20250310123127_add_kyc_attributes_to_user.rb +17 -0
  10. data/db/migrate/20250310133249_create_snf_core_virtual_account_transactions.rb +18 -0
  11. data/db/migrate/20250310143604_create_snf_core_item_requests.rb +14 -0
  12. data/db/migrate/20250311000000_create_snf_core_account_transfers.rb +21 -0
  13. data/lib/snf_core/version.rb +1 -1
  14. data/spec/dummy/db/schema.rb +117 -27
  15. data/spec/dummy/log/development.log +1820 -0
  16. data/spec/dummy/log/test.log +99021 -0
  17. data/spec/dummy/tmp/storage/00/ch/00ch4m884d5bnelqgd2ld1qig6ey +0 -0
  18. data/spec/dummy/tmp/storage/0s/ba/0sbase6mg5sgich6or97cg1faxlw +0 -0
  19. data/spec/dummy/tmp/storage/0x/uy/0xuyfqa0t08zr8vfm8p123o0s34t +0 -0
  20. data/spec/dummy/tmp/storage/1o/ts/1otsbrqkd6n4qiht1wabl7fhjnt3 +0 -0
  21. data/spec/dummy/tmp/storage/1v/54/1v542i134jpb9iwbq9m1v801y0ls +0 -0
  22. data/spec/dummy/tmp/storage/1y/46/1y4617uv2nrk9fa58zfv9xyixmfk +0 -0
  23. data/spec/dummy/tmp/storage/24/kq/24kq40q48k7jry3npyah0td4uend +0 -0
  24. data/spec/dummy/tmp/storage/28/ye/28yeusf04wxopqkg0bxki7mqo9ph +0 -0
  25. data/spec/dummy/tmp/storage/2r/hv/2rhvs6uca2ozrojfuub5d4qk0ugy +0 -0
  26. data/spec/dummy/tmp/storage/2w/r1/2wr14buxnrx4cee19gj6sefnbby5 +0 -0
  27. data/spec/dummy/tmp/storage/3k/7z/3k7zlcd9fm2jwn99kinxpahrmm4u +0 -0
  28. data/spec/dummy/tmp/storage/3o/2a/3o2ahddfby8aqgutow91vo4asm4f +0 -0
  29. data/spec/dummy/tmp/storage/46/zj/46zjkljy84qmg4ebes40e2zolzp7 +0 -0
  30. data/spec/dummy/tmp/storage/4f/fl/4fflxsg2pissq4960wfazyv9mgp1 +0 -0
  31. data/spec/dummy/tmp/storage/4l/6a/4l6ap3t705ektu02kabqobaq8huf +0 -0
  32. data/spec/dummy/tmp/storage/4m/3n/4m3n3r5zl2jevvvw3alq0omnnowk +0 -0
  33. data/spec/dummy/tmp/storage/4t/qc/4tqc587gmu2g7hgntrgjnhkw0e1u +0 -0
  34. data/spec/dummy/tmp/storage/4w/76/4w7656628v1p4mp87fqz3okc6ix4 +0 -0
  35. data/spec/dummy/tmp/storage/50/ct/50ctjwt8y93spjaef1b3rfnav9gb +0 -0
  36. data/spec/dummy/tmp/storage/5m/0k/5m0k5zx08ouqos7rs09bpgmalspu +0 -0
  37. data/spec/dummy/tmp/storage/5m/4n/5m4nvbe3vqwrdpy6hujr1oq5nolv +0 -0
  38. data/spec/dummy/tmp/storage/5r/tv/5rtv2agppt9e52eg0oc81svs896e +0 -0
  39. data/spec/dummy/tmp/storage/5s/b6/5sb6kux9jtdj4du9ihu32tc82s12 +0 -0
  40. data/spec/dummy/tmp/storage/5t/84/5t84ncnwqnv83rndaztqz1dsae3v +0 -0
  41. data/spec/dummy/tmp/storage/6h/9a/6h9a6bxecnlwx7zbb4dc33rmftee +0 -0
  42. data/spec/dummy/tmp/storage/6h/pd/6hpdw0r7w6vpcotirwqz1fv640kk +0 -0
  43. data/spec/dummy/tmp/storage/6i/dm/6idmnfdfriqdmvcvgreyeho4xgra +0 -0
  44. data/spec/dummy/tmp/storage/6n/3b/6n3bufdfx1tvls9lzm3g625l1lyk +0 -0
  45. data/spec/dummy/tmp/storage/78/5u/785ub96ra353qygeubpq4vlifjas +0 -0
  46. data/spec/dummy/tmp/storage/7v/55/7v55c4y5xdiw6qrvbdpmd63v4toz +0 -0
  47. data/spec/dummy/tmp/storage/83/yi/83yiflnj2evgqahmzgiavbywle7h +0 -0
  48. data/spec/dummy/tmp/storage/8a/02/8a02q8tcm3lowda8cvcjh18tka7i +0 -0
  49. data/spec/dummy/tmp/storage/8g/4a/8g4aarquz0mos9gxzq6j7xzwli09 +0 -0
  50. data/spec/dummy/tmp/storage/8k/0m/8k0mv7xql5lr89d0172izqplypwx +0 -0
  51. data/spec/dummy/tmp/storage/8n/lz/8nlzdb800dgr9iax1ez2ko4euh02 +0 -0
  52. data/spec/dummy/tmp/storage/8y/y2/8yy2kqz8sa11vh7naiomyofj30ox +0 -0
  53. data/spec/dummy/tmp/storage/92/hz/92hz15r26fs5wymc6tced4b08bh6 +0 -0
  54. data/spec/dummy/tmp/storage/9k/wj/9kwjdz4yw0jyzddj32u97xciot47 +0 -0
  55. data/spec/dummy/tmp/storage/a0/ve/a0veqfafcpy1hl6jvg6jc4qt08kr +0 -0
  56. data/spec/dummy/tmp/storage/ak/g9/akg9bg7fdwisycbclvmikbzl676j +0 -0
  57. data/spec/dummy/tmp/storage/ap/fs/apfsy6cp4mt4jsyiyscutqhv36id +0 -0
  58. data/spec/dummy/tmp/storage/b2/ux/b2uxv1pu0hjqty7779grby8qxzoo +0 -0
  59. data/spec/dummy/tmp/storage/bh/s1/bhs1yc1jo5vhc1u8lz7zme0sowln +0 -0
  60. data/spec/dummy/tmp/storage/c6/29/c6299u91u1tc5bc7eb24yq8k7xgk +0 -0
  61. data/spec/dummy/tmp/storage/cb/dh/cbdhbsxm7irfbsrniqvxnfukotka +0 -0
  62. data/spec/dummy/tmp/storage/dj/zr/djzriitbyq5sebmjs7nf0wqijzl2 +0 -0
  63. data/spec/dummy/tmp/storage/dk/z6/dkz6yvma826vmeofy924nzacyi6a +0 -0
  64. data/spec/dummy/tmp/storage/e6/5h/e65haeyr0sglopfuo5chz55thi9z +0 -0
  65. data/spec/dummy/tmp/storage/ez/kd/ezkdx2jgksxsm9fdwpx5qw8qd6hb +0 -0
  66. data/spec/dummy/tmp/storage/ft/pz/ftpzprhag9awyjvcac1xiqv9qngf +0 -0
  67. data/spec/dummy/tmp/storage/g1/fp/g1fprpwzsoltdd9atheqqbmt75w1 +0 -0
  68. data/spec/dummy/tmp/storage/g6/7r/g67rz6k8b5kmrfsk91e77d37vnfg +0 -0
  69. data/spec/dummy/tmp/storage/ik/r8/ikr86smhkvxy0yrqxjr0iubcuy5s +0 -0
  70. data/spec/dummy/tmp/storage/ip/yy/ipyyodp4f221bzp384ncz3alga7l +0 -0
  71. data/spec/dummy/tmp/storage/jc/jk/jcjkdsojvg0n7abwcfpscbkrlvoj +0 -0
  72. data/spec/dummy/tmp/storage/jd/ik/jdik45lk030wwyyfs9xy6m4q0sv9 +0 -0
  73. data/spec/dummy/tmp/storage/jo/34/jo34sgi1pzpkbryh3z6bmeccbada +0 -0
  74. data/spec/dummy/tmp/storage/jw/gm/jwgmfnb1z5jahut7upw5lwnh6orj +0 -0
  75. data/spec/dummy/tmp/storage/kv/7m/kv7mdo1kvqnagfcp1dit4pzrlugm +0 -0
  76. data/spec/dummy/tmp/storage/kz/ao/kzao8av3jxls3bjeal7bv2qefcq2 +0 -0
  77. data/spec/dummy/tmp/storage/lp/iz/lpizuy9o61mj9a6nsp66uhxmwifn +0 -0
  78. data/spec/dummy/tmp/storage/lu/ge/lugetp9a4lxzimpwttg2bkmrv1tf +0 -0
  79. data/spec/dummy/tmp/storage/m0/hl/m0hl9jcc1ra6ogfep0yxwon1n8e4 +0 -0
  80. data/spec/dummy/tmp/storage/md/94/md943ike1q6c3z19js6h89ghdqpd +0 -0
  81. data/spec/dummy/tmp/storage/mi/y2/miy2op7reeft1521or0hx3sa03qi +0 -0
  82. data/spec/dummy/tmp/storage/n4/6y/n46y5dyl1uf9ihlyp79fzdxny80f +0 -0
  83. data/spec/dummy/tmp/storage/ng/sy/ngsy8siky5us2x8cr54uxlzwoji5 +0 -0
  84. data/spec/dummy/tmp/storage/nq/9r/nq9rfa8upvcoyx92za4fhzrmob0t +0 -0
  85. data/spec/dummy/tmp/storage/nz/h5/nzh5f9vo9icpp0qvxvvm57ivsy85 +0 -0
  86. data/spec/dummy/tmp/storage/o3/3e/o33eo1zb3spyqgqbtugs43olucmj +0 -0
  87. data/spec/dummy/tmp/storage/oc/zy/oczyqb5chp2fvo9kdu62c3y7pl5i +0 -0
  88. data/spec/dummy/tmp/storage/of/zt/ofzt1knekv9ft8direbw6fiaacvc +0 -0
  89. data/spec/dummy/tmp/storage/ol/u8/olu875ti78gguc82spdkt9z8tpii +0 -0
  90. data/spec/dummy/tmp/storage/pe/xm/pexmtjvhiiepbza9928j2j0uo6ub +0 -0
  91. data/spec/dummy/tmp/storage/q4/wp/q4wpnk0ajsmg3nnpj2xja15tc1az +0 -0
  92. data/spec/dummy/tmp/storage/q7/48/q748a4a7d3qk28vajhbkli5tttsj +0 -0
  93. data/spec/dummy/tmp/storage/qg/qu/qgquu27ysijim1jv06k39a3c3opr +0 -0
  94. data/spec/dummy/tmp/storage/qo/zx/qozxdnemk1fwxcvhe1j10ys7mxcq +0 -0
  95. data/spec/dummy/tmp/storage/rg/hw/rghwbui1nfqvuuja4hqvzvwofucm +0 -0
  96. data/spec/dummy/tmp/storage/rj/4a/rj4a0t2xebuf22tyhuitu7x0h0ct +0 -0
  97. data/spec/dummy/tmp/storage/ro/gg/roggtjpn82v1pf5hi9c72ta6uxt7 +0 -0
  98. data/spec/dummy/tmp/storage/sd/b5/sdb5dbqjlz1nng8qaejdmh94h5kh +0 -0
  99. data/spec/dummy/tmp/storage/t6/h0/t6h0whv9denben7ktf5maaohv9dg +0 -0
  100. data/spec/dummy/tmp/storage/u8/dc/u8dc1at72gpsq6d2fqb81rku7xq9 +0 -0
  101. data/spec/dummy/tmp/storage/v8/cs/v8csqmcgvc4z177g5hfmp7twf6ay +0 -0
  102. data/spec/dummy/tmp/storage/vb/z1/vbz124po6xcx6fbh4nefle8r6of3 +0 -0
  103. data/spec/dummy/tmp/storage/vc/0v/vc0vb76xhipq8d5xrmqnnvlkbxhi +0 -0
  104. data/spec/dummy/tmp/storage/vc/eu/vceu8un4vczdune7r9oaihtx3l09 +0 -0
  105. data/spec/dummy/tmp/storage/vg/qn/vgqnfl62z1s3940ei2s9ifrjufiz +0 -0
  106. data/spec/dummy/tmp/storage/vz/qz/vzqz49sc3hfzbcaawqw6yuqzpocv +0 -0
  107. data/spec/dummy/tmp/storage/w1/9e/w19epnmenhmu0y14exloj2oskf53 +0 -0
  108. data/spec/dummy/tmp/storage/w4/k8/w4k8g0iv6qtdhzyw454un1d048hp +0 -0
  109. data/spec/dummy/tmp/storage/wv/8i/wv8iai6dxxh2wqwnj667p5rre1tn +0 -0
  110. data/spec/dummy/tmp/storage/xd/fp/xdfpr9gw2neskzyq6cfxyj2lsa47 +0 -0
  111. data/spec/dummy/tmp/storage/xh/4e/xh4e0tnk5ysrfndrhyu9u0ywueku +0 -0
  112. data/spec/dummy/tmp/storage/xj/d2/xjd2s558zk0eduk4f25ul4t29b2r +0 -0
  113. data/spec/dummy/tmp/storage/yi/r2/yir26w0pcj2268kp8biw0lcrnimz +0 -0
  114. data/spec/dummy/tmp/storage/yj/d7/yjd7k0ea2d8y6yjp8syfudd0qvhr +0 -0
  115. data/spec/dummy/tmp/storage/z0/il/z0ilfyp3hmqqn6alkocrt7y949ee +0 -0
  116. data/spec/dummy/tmp/storage/zc/i3/zci3kt86sywh9q6u7xv7yt38xznu +0 -0
  117. data/spec/examples.txt +192 -128
  118. data/spec/factories/snf_core/account_transfers.rb +27 -0
  119. data/spec/factories/snf_core/addresses.rb +1 -0
  120. data/spec/factories/snf_core/item_requests.rb +26 -0
  121. data/spec/factories/snf_core/users.rb +10 -1
  122. data/spec/factories/snf_core/virtual_account_transactions.rb +33 -0
  123. data/spec/factories/snf_core/virtual_accounts.rb +32 -0
  124. data/spec/models/snf_core/account_transfer_spec.rb +29 -0
  125. data/spec/models/snf_core/item_request_spec.rb +44 -0
  126. data/spec/models/snf_core/user_spec.rb +5 -8
  127. data/spec/models/snf_core/virtual_account_spec.rb +86 -0
  128. data/spec/models/snf_core/virtual_account_transaction_spec.rb +72 -0
  129. data/spec/requests/snf_core/auth_spec.rb +11 -1
  130. metadata +119 -2
data/spec/examples.txt CHANGED
@@ -1,128 +1,192 @@
1
- example_id | status | run_time |
2
- ----------------------------------------------------- | ------- | --------------- |
3
- ./spec/mailers/snf_core/auth_mailer_spec.rb[1:1] | pending | 0.00002 seconds |
4
- ./spec/models/snf_core/address_spec.rb[1:1] | passed | 0.00228 seconds |
5
- ./spec/models/snf_core/address_spec.rb[1:2] | passed | 0.00315 seconds |
6
- ./spec/models/snf_core/address_spec.rb[1:3] | passed | 0.00338 seconds |
7
- ./spec/models/snf_core/address_spec.rb[1:4] | passed | 0.00333 seconds |
8
- ./spec/models/snf_core/address_spec.rb[1:5] | passed | 0.00345 seconds |
9
- ./spec/models/snf_core/address_spec.rb[1:6] | passed | 0.00258 seconds |
10
- ./spec/models/snf_core/address_spec.rb[1:7] | passed | 0.00313 seconds |
11
- ./spec/models/snf_core/address_spec.rb[1:8] | passed | 0.00232 seconds |
12
- ./spec/models/snf_core/business_document_spec.rb[1:1] | passed | 0.0594 seconds |
13
- ./spec/models/snf_core/business_document_spec.rb[1:2] | passed | 0.02324 seconds |
14
- ./spec/models/snf_core/business_document_spec.rb[1:3] | passed | 0.02205 seconds |
15
- ./spec/models/snf_core/business_document_spec.rb[1:4] | passed | 0.04618 seconds |
16
- ./spec/models/snf_core/business_document_spec.rb[1:5] | passed | 0.02408 seconds |
17
- ./spec/models/snf_core/business_spec.rb[1:1] | passed | 0.00499 seconds |
18
- ./spec/models/snf_core/business_spec.rb[1:2] | passed | 0.00653 seconds |
19
- ./spec/models/snf_core/business_spec.rb[1:3] | passed | 0.01078 seconds |
20
- ./spec/models/snf_core/business_spec.rb[1:4] | passed | 0.00702 seconds |
21
- ./spec/models/snf_core/business_spec.rb[1:5] | passed | 0.00876 seconds |
22
- ./spec/models/snf_core/business_spec.rb[1:6] | passed | 0.00655 seconds |
23
- ./spec/models/snf_core/business_spec.rb[1:7] | passed | 0.00573 seconds |
24
- ./spec/models/snf_core/category_spec.rb[1:1] | passed | 0.00564 seconds |
25
- ./spec/models/snf_core/category_spec.rb[1:2] | passed | 0.00396 seconds |
26
- ./spec/models/snf_core/category_spec.rb[1:3] | passed | 0.00663 seconds |
27
- ./spec/models/snf_core/category_spec.rb[1:4] | passed | 0.00278 seconds |
28
- ./spec/models/snf_core/customer_group_spec.rb[1:1] | passed | 0.0276 seconds |
29
- ./spec/models/snf_core/customer_group_spec.rb[1:2] | passed | 0.01286 seconds |
30
- ./spec/models/snf_core/customer_group_spec.rb[1:3] | passed | 0.01212 seconds |
31
- ./spec/models/snf_core/delivery_order_spec.rb[1:1] | passed | 0.01474 seconds |
32
- ./spec/models/snf_core/delivery_order_spec.rb[1:2] | passed | 0.01468 seconds |
33
- ./spec/models/snf_core/delivery_order_spec.rb[1:3] | passed | 0.02545 seconds |
34
- ./spec/models/snf_core/delivery_order_spec.rb[1:4] | passed | 0.01615 seconds |
35
- ./spec/models/snf_core/delivery_order_spec.rb[1:5] | passed | 0.02278 seconds |
36
- ./spec/models/snf_core/delivery_order_spec.rb[1:6] | passed | 0.01495 seconds |
37
- ./spec/models/snf_core/delivery_order_spec.rb[1:7] | passed | 0.01599 seconds |
38
- ./spec/models/snf_core/delivery_order_spec.rb[1:8:1] | passed | 0.0143 seconds |
39
- ./spec/models/snf_core/delivery_order_spec.rb[1:8:2] | passed | 0.01612 seconds |
40
- ./spec/models/snf_core/delivery_order_spec.rb[1:8:3] | passed | 0.0155 seconds |
41
- ./spec/models/snf_core/delivery_order_spec.rb[1:8:4] | passed | 0.01586 seconds |
42
- ./spec/models/snf_core/delivery_order_spec.rb[1:8:5] | passed | 0.01638 seconds |
43
- ./spec/models/snf_core/delivery_order_spec.rb[1:8:6] | passed | 0.02905 seconds |
44
- ./spec/models/snf_core/delivery_order_spec.rb[1:8:7] | passed | 0.04048 seconds |
45
- ./spec/models/snf_core/group_spec.rb[1:1] | passed | 0.00722 seconds |
46
- ./spec/models/snf_core/group_spec.rb[1:2] | passed | 0.00612 seconds |
47
- ./spec/models/snf_core/group_spec.rb[1:3] | passed | 0.00705 seconds |
48
- ./spec/models/snf_core/order_item_spec.rb[1:1] | passed | 0.03541 seconds |
49
- ./spec/models/snf_core/order_item_spec.rb[1:2] | passed | 0.02387 seconds |
50
- ./spec/models/snf_core/order_item_spec.rb[1:3] | passed | 0.03169 seconds |
51
- ./spec/models/snf_core/order_item_spec.rb[1:4] | passed | 0.03995 seconds |
52
- ./spec/models/snf_core/order_item_spec.rb[1:5] | passed | 0.03054 seconds |
53
- ./spec/models/snf_core/order_item_spec.rb[1:6] | passed | 0.94366 seconds |
54
- ./spec/models/snf_core/order_item_spec.rb[1:7] | passed | 0.03099 seconds |
55
- ./spec/models/snf_core/order_item_spec.rb[1:8:1] | passed | 0.00357 seconds |
56
- ./spec/models/snf_core/order_item_spec.rb[1:8:2] | passed | 0.02963 seconds |
57
- ./spec/models/snf_core/order_item_spec.rb[1:8:3] | passed | 0.02902 seconds |
58
- ./spec/models/snf_core/order_item_spec.rb[1:9:1] | passed | 0.00596 seconds |
59
- ./spec/models/snf_core/order_item_spec.rb[1:9:2] | passed | 0.00405 seconds |
60
- ./spec/models/snf_core/order_item_spec.rb[1:10:1] | passed | 0.02831 seconds |
61
- ./spec/models/snf_core/order_item_spec.rb[1:10:2] | passed | 0.03296 seconds |
62
- ./spec/models/snf_core/order_spec.rb[1:1] | passed | 0.01362 seconds |
63
- ./spec/models/snf_core/order_spec.rb[1:2] | passed | 0.01376 seconds |
64
- ./spec/models/snf_core/order_spec.rb[1:3] | passed | 0.01464 seconds |
65
- ./spec/models/snf_core/order_spec.rb[1:4] | passed | 0.01972 seconds |
66
- ./spec/models/snf_core/order_spec.rb[1:5] | passed | 0.0131 seconds |
67
- ./spec/models/snf_core/order_spec.rb[1:6] | passed | 0.01451 seconds |
68
- ./spec/models/snf_core/order_spec.rb[1:7:1] | passed | 0.01219 seconds |
69
- ./spec/models/snf_core/order_spec.rb[1:7:2] | passed | 0.01752 seconds |
70
- ./spec/models/snf_core/order_spec.rb[1:7:3] | passed | 0.01629 seconds |
71
- ./spec/models/snf_core/order_spec.rb[1:7:4] | passed | 0.01444 seconds |
72
- ./spec/models/snf_core/order_spec.rb[1:7:5] | passed | 0.01536 seconds |
73
- ./spec/models/snf_core/order_spec.rb[1:7:6] | passed | 0.02894 seconds |
74
- ./spec/models/snf_core/order_spec.rb[1:8:1] | passed | 0.04414 seconds |
75
- ./spec/models/snf_core/order_spec.rb[1:8:2] | passed | 0.03107 seconds |
76
- ./spec/models/snf_core/order_spec.rb[1:8:3] | passed | 0.0134 seconds |
77
- ./spec/models/snf_core/product_spec.rb[1:1] | passed | 0.00612 seconds |
78
- ./spec/models/snf_core/product_spec.rb[1:2] | passed | 0.00525 seconds |
79
- ./spec/models/snf_core/product_spec.rb[1:3] | passed | 0.00577 seconds |
80
- ./spec/models/snf_core/product_spec.rb[1:4] | passed | 0.00573 seconds |
81
- ./spec/models/snf_core/product_spec.rb[1:5:1] | passed | 0.00386 seconds |
82
- ./spec/models/snf_core/product_spec.rb[1:5:2] | passed | 0.0037 seconds |
83
- ./spec/models/snf_core/role_spec.rb[1:1] | passed | 0.00553 seconds |
84
- ./spec/models/snf_core/role_spec.rb[1:2] | passed | 0.00428 seconds |
85
- ./spec/models/snf_core/role_spec.rb[1:3] | passed | 0.00394 seconds |
86
- ./spec/models/snf_core/role_spec.rb[1:4] | passed | 0.00246 seconds |
87
- ./spec/models/snf_core/role_spec.rb[1:5] | passed | 0.00229 seconds |
88
- ./spec/models/snf_core/store_inventory_spec.rb[1:1] | passed | 0.01512 seconds |
89
- ./spec/models/snf_core/store_inventory_spec.rb[1:2] | passed | 0.01352 seconds |
90
- ./spec/models/snf_core/store_inventory_spec.rb[1:3] | passed | 0.01232 seconds |
91
- ./spec/models/snf_core/store_inventory_spec.rb[1:4] | passed | 0.01408 seconds |
92
- ./spec/models/snf_core/store_inventory_spec.rb[1:5] | passed | 0.01342 seconds |
93
- ./spec/models/snf_core/store_inventory_spec.rb[1:6] | passed | 0.01408 seconds |
94
- ./spec/models/snf_core/store_inventory_spec.rb[1:7:1] | passed | 0.01206 seconds |
95
- ./spec/models/snf_core/store_spec.rb[1:1] | passed | 0.00844 seconds |
96
- ./spec/models/snf_core/store_spec.rb[1:2] | passed | 0.00953 seconds |
97
- ./spec/models/snf_core/store_spec.rb[1:3] | passed | 0.01576 seconds |
98
- ./spec/models/snf_core/store_spec.rb[1:4] | passed | 0.00859 seconds |
99
- ./spec/models/snf_core/store_spec.rb[1:5] | passed | 0.00889 seconds |
100
- ./spec/models/snf_core/user_role_spec.rb[1:1] | passed | 0.00772 seconds |
101
- ./spec/models/snf_core/user_role_spec.rb[1:2] | passed | 0.01089 seconds |
102
- ./spec/models/snf_core/user_role_spec.rb[1:3] | passed | 0.01035 seconds |
103
- ./spec/models/snf_core/user_spec.rb[1:1] | passed | 0.00658 seconds |
104
- ./spec/models/snf_core/user_spec.rb[1:2] | passed | 0.00775 seconds |
105
- ./spec/models/snf_core/user_spec.rb[1:3] | passed | 0.00963 seconds |
106
- ./spec/models/snf_core/user_spec.rb[1:4] | passed | 0.00782 seconds |
107
- ./spec/models/snf_core/user_spec.rb[1:5] | passed | 0.00739 seconds |
108
- ./spec/models/snf_core/user_spec.rb[1:6] | passed | 0.0079 seconds |
109
- ./spec/models/snf_core/user_spec.rb[1:7:1] | passed | 0.00634 seconds |
110
- ./spec/models/snf_core/wallet_spec.rb[1:1] | passed | 0.00837 seconds |
111
- ./spec/models/snf_core/wallet_spec.rb[1:2] | passed | 0.01179 seconds |
112
- ./spec/models/snf_core/wallet_spec.rb[1:3] | passed | 0.00944 seconds |
113
- ./spec/models/snf_core/wallet_spec.rb[1:4] | passed | 0.00849 seconds |
114
- ./spec/models/snf_core/wallet_spec.rb[1:5] | passed | 0.00878 seconds |
115
- ./spec/models/snf_core/wallet_spec.rb[1:6:1] | passed | 0.00784 seconds |
116
- ./spec/models/snf_core/wallet_spec.rb[1:6:2] | passed | 0.01181 seconds |
117
- ./spec/requests/snf_core/auth_spec.rb[1:1:1:1] | passed | 0.02489 seconds |
118
- ./spec/requests/snf_core/auth_spec.rb[1:1:2:1] | passed | 0.00974 seconds |
119
- ./spec/requests/snf_core/auth_spec.rb[1:1:2:2] | passed | 0.00885 seconds |
120
- ./spec/requests/snf_core/auth_spec.rb[1:1:2:3] | passed | 0.01059 seconds |
121
- ./spec/requests/snf_core/auth_spec.rb[1:2:1:1] | passed | 0.00216 seconds |
122
- ./spec/requests/snf_core/auth_spec.rb[1:3:1:1] | passed | 0.05102 seconds |
123
- ./spec/requests/snf_core/auth_spec.rb[1:3:2:1] | passed | 0.00864 seconds |
124
- ./spec/requests/snf_core/auth_spec.rb[1:4:1:1] | passed | 0.01298 seconds |
125
- ./spec/requests/snf_core/auth_spec.rb[1:4:2:1] | passed | 0.01519 seconds |
126
- ./spec/requests/snf_core/auth_spec.rb[1:5:1:1] | passed | 0.0106 seconds |
127
- ./spec/requests/snf_core/auth_spec.rb[1:5:2:1] | passed | 0.0055 seconds |
128
- ./spec/sample_spec.rb[1:1] | passed | 0.00069 seconds |
1
+ example_id | status | run_time |
2
+ ------------------------------------------------------------------- | ------- | --------------- |
3
+ ./spec/mailers/snf_core/auth_mailer_spec.rb[1:1] | pending | 0.00001 seconds |
4
+ ./spec/models/snf_core/account_transfer_spec.rb[1:1] | passed | 0.02109 seconds |
5
+ ./spec/models/snf_core/account_transfer_spec.rb[1:2] | passed | 0.01908 seconds |
6
+ ./spec/models/snf_core/account_transfer_spec.rb[1:3] | passed | 0.0311 seconds |
7
+ ./spec/models/snf_core/account_transfer_spec.rb[1:4] | passed | 0.01886 seconds |
8
+ ./spec/models/snf_core/account_transfer_spec.rb[1:5] | passed | 0.02229 seconds |
9
+ ./spec/models/snf_core/account_transfer_spec.rb[1:6] | passed | 0.02134 seconds |
10
+ ./spec/models/snf_core/account_transfer_spec.rb[1:7] | passed | 0.01888 seconds |
11
+ ./spec/models/snf_core/account_transfer_spec.rb[1:8] | passed | 0.0385 seconds |
12
+ ./spec/models/snf_core/account_transfer_spec.rb[1:9] | passed | 0.01913 seconds |
13
+ ./spec/models/snf_core/account_transfer_spec.rb[1:10] | passed | 0.07187 seconds |
14
+ ./spec/models/snf_core/account_transfer_spec.rb[1:11:1] | passed | 0.02068 seconds |
15
+ ./spec/models/snf_core/account_transfer_spec.rb[1:11:2] | passed | 0.02125 seconds |
16
+ ./spec/models/snf_core/address_spec.rb[1:1] | passed | 0.00504 seconds |
17
+ ./spec/models/snf_core/address_spec.rb[1:2] | passed | 0.00359 seconds |
18
+ ./spec/models/snf_core/address_spec.rb[1:3] | passed | 0.00357 seconds |
19
+ ./spec/models/snf_core/address_spec.rb[1:4] | passed | 0.00498 seconds |
20
+ ./spec/models/snf_core/address_spec.rb[1:5] | passed | 0.00343 seconds |
21
+ ./spec/models/snf_core/address_spec.rb[1:6] | passed | 0.00341 seconds |
22
+ ./spec/models/snf_core/address_spec.rb[1:7] | passed | 0.00344 seconds |
23
+ ./spec/models/snf_core/address_spec.rb[1:8] | passed | 0.0025 seconds |
24
+ ./spec/models/snf_core/business_document_spec.rb[1:1] | passed | 0.0247 seconds |
25
+ ./spec/models/snf_core/business_document_spec.rb[1:2] | passed | 0.07233 seconds |
26
+ ./spec/models/snf_core/business_document_spec.rb[1:3] | passed | 0.02719 seconds |
27
+ ./spec/models/snf_core/business_document_spec.rb[1:4] | passed | 0.04055 seconds |
28
+ ./spec/models/snf_core/business_document_spec.rb[1:5] | passed | 0.0241 seconds |
29
+ ./spec/models/snf_core/business_spec.rb[1:1] | passed | 0.00856 seconds |
30
+ ./spec/models/snf_core/business_spec.rb[1:2] | passed | 0.00999 seconds |
31
+ ./spec/models/snf_core/business_spec.rb[1:3] | passed | 0.01027 seconds |
32
+ ./spec/models/snf_core/business_spec.rb[1:4] | passed | 0.01067 seconds |
33
+ ./spec/models/snf_core/business_spec.rb[1:5] | passed | 0.00922 seconds |
34
+ ./spec/models/snf_core/business_spec.rb[1:6] | passed | 0.00861 seconds |
35
+ ./spec/models/snf_core/business_spec.rb[1:7] | passed | 0.01186 seconds |
36
+ ./spec/models/snf_core/category_spec.rb[1:1] | passed | 0.0028 seconds |
37
+ ./spec/models/snf_core/category_spec.rb[1:2] | passed | 0.00404 seconds |
38
+ ./spec/models/snf_core/category_spec.rb[1:3] | passed | 0.0047 seconds |
39
+ ./spec/models/snf_core/category_spec.rb[1:4] | passed | 0.014 seconds |
40
+ ./spec/models/snf_core/customer_group_spec.rb[1:1] | passed | 0.01571 seconds |
41
+ ./spec/models/snf_core/customer_group_spec.rb[1:2] | passed | 0.01518 seconds |
42
+ ./spec/models/snf_core/customer_group_spec.rb[1:3] | passed | 0.02979 seconds |
43
+ ./spec/models/snf_core/delivery_order_spec.rb[1:1] | passed | 0.01796 seconds |
44
+ ./spec/models/snf_core/delivery_order_spec.rb[1:2] | passed | 0.0187 seconds |
45
+ ./spec/models/snf_core/delivery_order_spec.rb[1:3] | passed | 0.01852 seconds |
46
+ ./spec/models/snf_core/delivery_order_spec.rb[1:4] | passed | 0.01948 seconds |
47
+ ./spec/models/snf_core/delivery_order_spec.rb[1:5] | passed | 0.01994 seconds |
48
+ ./spec/models/snf_core/delivery_order_spec.rb[1:6] | passed | 0.01868 seconds |
49
+ ./spec/models/snf_core/delivery_order_spec.rb[1:7] | passed | 0.02885 seconds |
50
+ ./spec/models/snf_core/delivery_order_spec.rb[1:8:1] | passed | 0.01666 seconds |
51
+ ./spec/models/snf_core/delivery_order_spec.rb[1:8:2] | passed | 0.01912 seconds |
52
+ ./spec/models/snf_core/delivery_order_spec.rb[1:8:3] | passed | 0.01956 seconds |
53
+ ./spec/models/snf_core/delivery_order_spec.rb[1:8:4] | passed | 0.02008 seconds |
54
+ ./spec/models/snf_core/delivery_order_spec.rb[1:8:5] | passed | 0.02314 seconds |
55
+ ./spec/models/snf_core/delivery_order_spec.rb[1:8:6] | passed | 0.0381 seconds |
56
+ ./spec/models/snf_core/delivery_order_spec.rb[1:8:7] | passed | 0.04972 seconds |
57
+ ./spec/models/snf_core/group_spec.rb[1:1] | passed | 0.00939 seconds |
58
+ ./spec/models/snf_core/group_spec.rb[1:2] | passed | 0.00911 seconds |
59
+ ./spec/models/snf_core/group_spec.rb[1:3] | passed | 0.00915 seconds |
60
+ ./spec/models/snf_core/item_request_spec.rb[1:1] | passed | 0.01144 seconds |
61
+ ./spec/models/snf_core/item_request_spec.rb[1:2] | passed | 0.01046 seconds |
62
+ ./spec/models/snf_core/item_request_spec.rb[1:3] | passed | 0.02247 seconds |
63
+ ./spec/models/snf_core/item_request_spec.rb[1:4] | passed | 0.01143 seconds |
64
+ ./spec/models/snf_core/item_request_spec.rb[1:5] | passed | 0.00914 seconds |
65
+ ./spec/models/snf_core/item_request_spec.rb[1:6] | passed | 0.01251 seconds |
66
+ ./spec/models/snf_core/item_request_spec.rb[1:7] | passed | 0.01192 seconds |
67
+ ./spec/models/snf_core/item_request_spec.rb[1:8:1] | passed | 0.0031 seconds |
68
+ ./spec/models/snf_core/item_request_spec.rb[1:8:2] | passed | 0.00302 seconds |
69
+ ./spec/models/snf_core/item_request_spec.rb[1:9:1] | passed | 0.01047 seconds |
70
+ ./spec/models/snf_core/item_request_spec.rb[1:9:2] | passed | 0.0111 seconds |
71
+ ./spec/models/snf_core/order_item_spec.rb[1:1] | passed | 0.03603 seconds |
72
+ ./spec/models/snf_core/order_item_spec.rb[1:2] | passed | 0.03656 seconds |
73
+ ./spec/models/snf_core/order_item_spec.rb[1:3] | passed | 0.03345 seconds |
74
+ ./spec/models/snf_core/order_item_spec.rb[1:4] | passed | 0.03833 seconds |
75
+ ./spec/models/snf_core/order_item_spec.rb[1:5] | passed | 0.03666 seconds |
76
+ ./spec/models/snf_core/order_item_spec.rb[1:6] | passed | 0.03614 seconds |
77
+ ./spec/models/snf_core/order_item_spec.rb[1:7] | passed | 0.03381 seconds |
78
+ ./spec/models/snf_core/order_item_spec.rb[1:8:1] | passed | 0.00863 seconds |
79
+ ./spec/models/snf_core/order_item_spec.rb[1:8:2] | passed | 0.03361 seconds |
80
+ ./spec/models/snf_core/order_item_spec.rb[1:8:3] | passed | 0.04325 seconds |
81
+ ./spec/models/snf_core/order_item_spec.rb[1:9:1] | passed | 0.00872 seconds |
82
+ ./spec/models/snf_core/order_item_spec.rb[1:9:2] | passed | 0.0084 seconds |
83
+ ./spec/models/snf_core/order_item_spec.rb[1:10:1] | passed | 0.03548 seconds |
84
+ ./spec/models/snf_core/order_item_spec.rb[1:10:2] | passed | 0.03659 seconds |
85
+ ./spec/models/snf_core/order_spec.rb[1:1] | passed | 0.01785 seconds |
86
+ ./spec/models/snf_core/order_spec.rb[1:2] | passed | 0.01775 seconds |
87
+ ./spec/models/snf_core/order_spec.rb[1:3] | passed | 0.02093 seconds |
88
+ ./spec/models/snf_core/order_spec.rb[1:4] | passed | 0.02037 seconds |
89
+ ./spec/models/snf_core/order_spec.rb[1:5] | passed | 0.01695 seconds |
90
+ ./spec/models/snf_core/order_spec.rb[1:6] | passed | 0.03397 seconds |
91
+ ./spec/models/snf_core/order_spec.rb[1:7:1] | passed | 0.01637 seconds |
92
+ ./spec/models/snf_core/order_spec.rb[1:7:2] | passed | 0.01752 seconds |
93
+ ./spec/models/snf_core/order_spec.rb[1:7:3] | passed | 0.02406 seconds |
94
+ ./spec/models/snf_core/order_spec.rb[1:7:4] | passed | 0.01949 seconds |
95
+ ./spec/models/snf_core/order_spec.rb[1:7:5] | passed | 0.01742 seconds |
96
+ ./spec/models/snf_core/order_spec.rb[1:7:6] | passed | 0.03264 seconds |
97
+ ./spec/models/snf_core/order_spec.rb[1:8:1] | passed | 0.05418 seconds |
98
+ ./spec/models/snf_core/order_spec.rb[1:8:2] | passed | 0.05357 seconds |
99
+ ./spec/models/snf_core/order_spec.rb[1:8:3] | passed | 0.01866 seconds |
100
+ ./spec/models/snf_core/product_spec.rb[1:1] | passed | 0.00474 seconds |
101
+ ./spec/models/snf_core/product_spec.rb[1:2] | passed | 0.01012 seconds |
102
+ ./spec/models/snf_core/product_spec.rb[1:3] | passed | 0.01511 seconds |
103
+ ./spec/models/snf_core/product_spec.rb[1:4] | passed | 0.00678 seconds |
104
+ ./spec/models/snf_core/product_spec.rb[1:5:1] | passed | 0.00407 seconds |
105
+ ./spec/models/snf_core/product_spec.rb[1:5:2] | passed | 0.00595 seconds |
106
+ ./spec/models/snf_core/role_spec.rb[1:1] | passed | 0.00391 seconds |
107
+ ./spec/models/snf_core/role_spec.rb[1:2] | passed | 0.00439 seconds |
108
+ ./spec/models/snf_core/role_spec.rb[1:3] | passed | 0.00404 seconds |
109
+ ./spec/models/snf_core/role_spec.rb[1:4] | passed | 0.00261 seconds |
110
+ ./spec/models/snf_core/role_spec.rb[1:5] | passed | 0.00263 seconds |
111
+ ./spec/models/snf_core/store_inventory_spec.rb[1:1] | passed | 0.01641 seconds |
112
+ ./spec/models/snf_core/store_inventory_spec.rb[1:2] | passed | 0.01581 seconds |
113
+ ./spec/models/snf_core/store_inventory_spec.rb[1:3] | passed | 0.0151 seconds |
114
+ ./spec/models/snf_core/store_inventory_spec.rb[1:4] | passed | 0.01767 seconds |
115
+ ./spec/models/snf_core/store_inventory_spec.rb[1:5] | passed | 0.01481 seconds |
116
+ ./spec/models/snf_core/store_inventory_spec.rb[1:6] | passed | 0.01552 seconds |
117
+ ./spec/models/snf_core/store_inventory_spec.rb[1:7:1] | passed | 0.01581 seconds |
118
+ ./spec/models/snf_core/store_spec.rb[1:1] | passed | 0.01234 seconds |
119
+ ./spec/models/snf_core/store_spec.rb[1:2] | passed | 0.02275 seconds |
120
+ ./spec/models/snf_core/store_spec.rb[1:3] | passed | 0.01161 seconds |
121
+ ./spec/models/snf_core/store_spec.rb[1:4] | passed | 0.03176 seconds |
122
+ ./spec/models/snf_core/store_spec.rb[1:5] | passed | 0.01362 seconds |
123
+ ./spec/models/snf_core/user_role_spec.rb[1:1] | passed | 0.0087 seconds |
124
+ ./spec/models/snf_core/user_role_spec.rb[1:2] | passed | 0.00824 seconds |
125
+ ./spec/models/snf_core/user_role_spec.rb[1:3] | passed | 0.00895 seconds |
126
+ ./spec/models/snf_core/user_spec.rb[1:1] | passed | 0.00674 seconds |
127
+ ./spec/models/snf_core/user_spec.rb[1:2] | passed | 0.00844 seconds |
128
+ ./spec/models/snf_core/user_spec.rb[1:3] | passed | 0.01008 seconds |
129
+ ./spec/models/snf_core/user_spec.rb[1:4] | passed | 0.00963 seconds |
130
+ ./spec/models/snf_core/user_spec.rb[1:5] | passed | 0.00664 seconds |
131
+ ./spec/models/snf_core/user_spec.rb[1:6] | passed | 0.00746 seconds |
132
+ ./spec/models/snf_core/user_spec.rb[1:7] | passed | 0.00979 seconds |
133
+ ./spec/models/snf_core/user_spec.rb[1:8] | passed | 0.00969 seconds |
134
+ ./spec/models/snf_core/user_spec.rb[1:9] | passed | 0.00872 seconds |
135
+ ./spec/models/snf_core/user_spec.rb[1:10] | passed | 0.0072 seconds |
136
+ ./spec/models/snf_core/virtual_account_spec.rb[1:1] | passed | 0.01162 seconds |
137
+ ./spec/models/snf_core/virtual_account_spec.rb[1:2] | passed | 0.00919 seconds |
138
+ ./spec/models/snf_core/virtual_account_spec.rb[1:3] | passed | 0.0112 seconds |
139
+ ./spec/models/snf_core/virtual_account_spec.rb[1:4] | passed | 0.01136 seconds |
140
+ ./spec/models/snf_core/virtual_account_spec.rb[1:5] | passed | 0.01226 seconds |
141
+ ./spec/models/snf_core/virtual_account_spec.rb[1:6] | passed | 0.01004 seconds |
142
+ ./spec/models/snf_core/virtual_account_spec.rb[1:7] | passed | 0.00974 seconds |
143
+ ./spec/models/snf_core/virtual_account_spec.rb[1:8] | passed | 0.0106 seconds |
144
+ ./spec/models/snf_core/virtual_account_spec.rb[1:9] | passed | 0.02676 seconds |
145
+ ./spec/models/snf_core/virtual_account_spec.rb[1:10] | passed | 0.00974 seconds |
146
+ ./spec/models/snf_core/virtual_account_spec.rb[1:11] | passed | 0.01007 seconds |
147
+ ./spec/models/snf_core/virtual_account_spec.rb[1:12] | passed | 0.01405 seconds |
148
+ ./spec/models/snf_core/virtual_account_spec.rb[1:13] | passed | 0.01034 seconds |
149
+ ./spec/models/snf_core/virtual_account_spec.rb[1:14] | passed | 0.01046 seconds |
150
+ ./spec/models/snf_core/virtual_account_spec.rb[1:15:1] | passed | 0.00604 seconds |
151
+ ./spec/models/snf_core/virtual_account_spec.rb[1:15:2] | passed | 0.00416 seconds |
152
+ ./spec/models/snf_core/virtual_account_spec.rb[1:15:3] | passed | 0.00432 seconds |
153
+ ./spec/models/snf_core/virtual_account_spec.rb[1:15:4] | passed | 0.00476 seconds |
154
+ ./spec/models/snf_core/virtual_account_spec.rb[1:15:5] | passed | 0.0115 seconds |
155
+ ./spec/models/snf_core/virtual_account_spec.rb[1:15:6] | passed | 0.00384 seconds |
156
+ ./spec/models/snf_core/virtual_account_spec.rb[1:16:1] | passed | 0.00828 seconds |
157
+ ./spec/models/snf_core/virtual_account_spec.rb[1:16:2] | passed | 0.01364 seconds |
158
+ ./spec/models/snf_core/virtual_account_spec.rb[1:16:3] | passed | 0.01541 seconds |
159
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:1] | passed | 0.0183 seconds |
160
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:2] | passed | 0.01812 seconds |
161
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:3] | passed | 0.03461 seconds |
162
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:4] | passed | 0.02092 seconds |
163
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:5] | passed | 0.02001 seconds |
164
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:6] | passed | 0.01834 seconds |
165
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:7] | passed | 0.0186 seconds |
166
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:8:1:1] | passed | 0.00387 seconds |
167
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:8:1:2] | passed | 0.00161 seconds |
168
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:8:1:3] | passed | 0.00195 seconds |
169
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:8:1:4] | passed | 0.00891 seconds |
170
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:8:2:1] | passed | 0.01071 seconds |
171
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:8:2:2] | passed | 0.01199 seconds |
172
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:9:1] | passed | 0.01798 seconds |
173
+ ./spec/models/snf_core/virtual_account_transaction_spec.rb[1:10:1] | passed | 0.01718 seconds |
174
+ ./spec/models/snf_core/wallet_spec.rb[1:1] | passed | 0.00908 seconds |
175
+ ./spec/models/snf_core/wallet_spec.rb[1:2] | passed | 0.06784 seconds |
176
+ ./spec/models/snf_core/wallet_spec.rb[1:3] | passed | 0.00934 seconds |
177
+ ./spec/models/snf_core/wallet_spec.rb[1:4] | passed | 0.01063 seconds |
178
+ ./spec/models/snf_core/wallet_spec.rb[1:5] | passed | 0.01134 seconds |
179
+ ./spec/models/snf_core/wallet_spec.rb[1:6:1] | passed | 0.00936 seconds |
180
+ ./spec/models/snf_core/wallet_spec.rb[1:6:2] | passed | 0.01703 seconds |
181
+ ./spec/requests/snf_core/auth_spec.rb[1:1:1:1] | passed | 0.01217 seconds |
182
+ ./spec/requests/snf_core/auth_spec.rb[1:1:2:1] | passed | 0.01576 seconds |
183
+ ./spec/requests/snf_core/auth_spec.rb[1:1:2:2] | passed | 0.01078 seconds |
184
+ ./spec/requests/snf_core/auth_spec.rb[1:1:2:3] | passed | 0.01098 seconds |
185
+ ./spec/requests/snf_core/auth_spec.rb[1:2:1:1] | passed | 0.0021 seconds |
186
+ ./spec/requests/snf_core/auth_spec.rb[1:3:1:1] | passed | 0.01356 seconds |
187
+ ./spec/requests/snf_core/auth_spec.rb[1:3:2:1] | passed | 0.00886 seconds |
188
+ ./spec/requests/snf_core/auth_spec.rb[1:4:1:1] | passed | 0.02754 seconds |
189
+ ./spec/requests/snf_core/auth_spec.rb[1:4:2:1] | passed | 0.00999 seconds |
190
+ ./spec/requests/snf_core/auth_spec.rb[1:5:1:1] | passed | 0.93234 seconds |
191
+ ./spec/requests/snf_core/auth_spec.rb[1:5:2:1] | passed | 0.00958 seconds |
192
+ ./spec/sample_spec.rb[1:1] | passed | 0.00071 seconds |
@@ -0,0 +1,27 @@
1
+ FactoryBot.define do
2
+ factory :account_transfer, class: 'SnfCore::AccountTransfer' do
3
+ source_account { association :user }
4
+ destination_account { association :user }
5
+ user { association :user }
6
+ amount { Faker::Number.decimal(l_digits: 3, r_digits: 2) }
7
+ reference_number { SecureRandom.hex(8).upcase }
8
+ status { :initiated }
9
+ transfer_type { :virtual_to_cbs }
10
+ description { Faker::Lorem.word }
11
+ failure_reason { nil }
12
+ completed_at { nil }
13
+ reversal_transfer_id { nil }
14
+ cbs_response_data { {} }
15
+
16
+ trait :virtual_to_virtual do
17
+ transfer_type { :virtual_to_virtual }
18
+ source_account { association :virtual_account }
19
+ destination_account { association :virtual_account }
20
+ end
21
+
22
+ trait :failed do
23
+ status { :failed }
24
+ failure_reason { 'Insufficient funds' }
25
+ end
26
+ end
27
+ end
@@ -6,5 +6,6 @@ FactoryBot.define do
6
6
  woreda { Faker::Address.community }
7
7
  latitude { Faker::Address.latitude }
8
8
  longitude { Faker::Address.longitude }
9
+ house_number { Faker::Address.building_number }
9
10
  end
10
11
  end
@@ -0,0 +1,26 @@
1
+ FactoryBot.define do
2
+ factory :item_request, class: "SnfCore::ItemRequest" do
3
+ user
4
+ product
5
+ quantity { Faker::Number.between(from: 1, to: 10) }
6
+ requested_delivery_date { Faker::Date.forward(days: 14) }
7
+ notes { Faker::Lorem.paragraph }
8
+ status { :pending }
9
+
10
+ trait :approved do
11
+ status { :approved }
12
+ end
13
+
14
+ trait :rejected do
15
+ status { :rejected }
16
+ end
17
+
18
+ trait :fulfilled do
19
+ status { :fulfilled }
20
+ end
21
+
22
+ trait :cancelled do
23
+ status { :cancelled }
24
+ end
25
+ end
26
+ end
@@ -3,10 +3,19 @@ FactoryBot.define do
3
3
  first_name { Faker::Name.first_name }
4
4
  middle_name { Faker::Name.middle_name }
5
5
  last_name { Faker::Name.last_name }
6
- password_digest { Faker::Internet.password }
6
+ password { Faker::Internet.password }
7
7
  password_changed { false }
8
8
  reset_password_token { Faker::Internet.password }
9
9
  email { Faker::Internet.email }
10
10
  phone_number { Faker::Alphanumeric.alpha(number: 10) }
11
+ kyc_status { :pending }
12
+ nationality { Faker::Address.country }
13
+ occupation { Faker::Job.title }
14
+ source_of_funds { Faker::Lorem.word }
15
+ gender { "male" }
16
+ date_of_birth { Date.today }
17
+ verified_by_id { nil }
18
+ verified_at { DateTime.now }
19
+ address
11
20
  end
12
21
  end
@@ -0,0 +1,33 @@
1
+ FactoryBot.define do
2
+ factory :virtual_account_transaction, class: "SnfCore::VirtualAccountTransaction" do
3
+ association :from_account, factory: :virtual_account
4
+ association :to_account, factory: :virtual_account
5
+ amount { 100 }
6
+ transaction_type { :transfer }
7
+ status { :pending }
8
+ reference_number { "TXN-#{Time.current.strftime('%Y%m%d')}-#{SecureRandom.hex(4).upcase}" }
9
+ description { Faker::Lorem.sentence }
10
+
11
+ trait :deposit do
12
+ from_account { nil }
13
+ transaction_type { :deposit }
14
+ end
15
+
16
+ trait :withdrawal do
17
+ to_account { nil }
18
+ transaction_type { :withdrawal }
19
+ end
20
+
21
+ trait :completed do
22
+ status { :completed }
23
+ end
24
+
25
+ trait :failed do
26
+ status { :failed }
27
+ end
28
+
29
+ trait :reversed do
30
+ status { :reversed }
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,32 @@
1
+ FactoryBot.define do
2
+ factory :virtual_account, class: "SnfCore::VirtualAccount" do
3
+ user
4
+ branch_code { "001" }
5
+ product_scheme { "1" }
6
+ voucher_type { "0" }
7
+ balance { 1000 }
8
+ interest_rate { 0.09 }
9
+ interest_type { :conventional }
10
+ active { true }
11
+ cbs_account_number { "CBS#{SecureRandom.hex(8)}" }
12
+ end
13
+
14
+ trait :interest_free do
15
+ interest_type { :interest_free }
16
+ interest_rate { 0.0 }
17
+ end
18
+
19
+ trait :preferential do
20
+ interest_type { :preferential }
21
+ interest_rate { 0.15 }
22
+ end
23
+
24
+ trait :custom do
25
+ interest_type { :custom }
26
+ interest_rate { 0.12 }
27
+ end
28
+
29
+ trait :inactive do
30
+ active { false }
31
+ end
32
+ end
@@ -0,0 +1,29 @@
1
+ require 'rails_helper'
2
+
3
+ module SnfCore
4
+ RSpec.describe AccountTransfer, type: :model do
5
+ attributes = [
6
+ { amount: %i[presence numericality] },
7
+ { reference_number: %i[presence uniqueness] },
8
+ { status: [ :presence ] },
9
+ { transfer_type: [ :presence ] },
10
+ { source_account: [ :belong_to ] },
11
+ { destination_account: [ :belong_to ] },
12
+ { user: [ :belong_to ] }
13
+ ]
14
+
15
+ include_examples("model_shared_spec", :account_transfer, attributes)
16
+
17
+ describe "enums" do
18
+ it {
19
+ should define_enum_for(:status)
20
+ .with_values(initiated: 0, pending: 1, processing: 2, completed: 3, failed: 4, cancelled: 5, reversed: 6)
21
+ }
22
+
23
+ it {
24
+ should define_enum_for(:transfer_type)
25
+ .with_values(virtual_to_cbs: 0, cbs_to_virtual: 1, virtual_to_virtual: 2)
26
+ }
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,44 @@
1
+ require 'rails_helper'
2
+
3
+ module SnfCore
4
+ RSpec.describe ItemRequest, type: :model do
5
+ attributes = [
6
+ { user: :belong_to },
7
+ { product: :belong_to },
8
+ { quantity: [:presence, :numericality] },
9
+ { requested_delivery_date: :presence },
10
+ { status: :presence }
11
+ ]
12
+ include_examples("model_shared_spec", :item_request, attributes)
13
+
14
+ describe 'validations' do
15
+ it 'validates quantity is greater than 0' do
16
+ item_request = build(:item_request, quantity: 0)
17
+ expect(item_request).not_to be_valid
18
+ expect(item_request.errors[:quantity]).to include('must be greater than 0')
19
+ end
20
+
21
+ it 'validates requested_delivery_date is not in the past' do
22
+ item_request = build(:item_request, requested_delivery_date: Date.yesterday)
23
+ expect(item_request).not_to be_valid
24
+ expect(item_request.errors[:requested_delivery_date]).to include("can't be in the past")
25
+ end
26
+ end
27
+
28
+ describe 'status management' do
29
+ let(:request) { create(:item_request) }
30
+
31
+ it 'starts with pending status' do
32
+ expect(request.status).to eq('pending')
33
+ end
34
+
35
+ it 'allows valid status transitions' do
36
+ valid_statuses = [:pending, :approved, :rejected, :fulfilled, :cancelled]
37
+ valid_statuses.each do |status|
38
+ request.status = status
39
+ expect(request).to be_valid
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -6,17 +6,14 @@ module SnfCore
6
6
  { first_name: :presence },
7
7
  { middle_name: :presence },
8
8
  { last_name: :presence },
9
+ { address: :belong_to },
10
+ { date_of_birth: :presence },
11
+ { nationality: :presence },
9
12
  { phone_number: %i[presence uniqueness] }
10
13
  ]
11
14
  include_examples("model_shared_spec", :user, attributes)
12
15
 
13
- describe 'wallet creation' do
14
- it 'creates a wallet automatically for the user' do
15
- user = create(:user)
16
- expect(user.wallet).to be_present
17
- expect(user.wallet.balance).to eq(0.0)
18
- expect(user.wallet.is_active).to be_truthy
19
- end
20
- end
16
+ it { is_expected.to belong_to(:verified_by).class_name('User').optional }
17
+
21
18
  end
22
19
  end