Advertisement
Guest User

Untitled

a guest
Jul 16th, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 1.23 KB | None | 0 0
  1. func testTriggers(t *testing.T, db *Db) {
  2.     insert := func(at *api.Trigger) {
  3.         err := db.TriggerInsert(at)
  4.         assert.Nil(t, err)
  5.     }
  6.  
  7.     fetch := func() []*api.Trigger {
  8.         triggers, err := db.Triggers()
  9.         assert.Nil(t, err)
  10.         return triggers
  11.     }
  12.  
  13.     upsert := func(at *api.Trigger) {
  14.         err := db.TriggerUpsert(at)
  15.         assert.Nil(t, err)
  16.     }
  17.  
  18.     trigger := &api.Trigger{
  19.         ActiveSince: bonus.StartOfDay(time.Now(), 0),
  20.         ActiveUntil: bonus.StartOfDay(time.Now(), 3),
  21.         CampaignId:  "wc300",
  22.         Registration: &api.TriggerRegistration{
  23.             OibRequired: true,
  24.             Countries:   []string{"Hrvatska", "Bosna i Hercegovina"},
  25.         },
  26.         Slip: &api.TriggerSlip{
  27.             MinStake: 100,
  28.         },
  29.     }
  30.  
  31.     insert(trigger)
  32.  
  33.     ts := fetch()
  34.     assert.Len(t, ts, 1)
  35.     assert.Equal(t, "wc300", ts[0].CampaignId)
  36.     assert.Equal(t, true, ts[0].Registration.OibRequired)
  37.     assert.Len(t, ts[0].Registration.Countries, 2)
  38.     assert.Equal(t, float64(100), ts[0].Slip.MinStake)
  39.  
  40.     trigger.Registration.Countries = []string{"Hrvatska", "Bosna i Hercegovina",
  41.         "Slovenija", "Srbija"}
  42.  
  43.     trigger.Slip.MinStake = 250
  44.  
  45.     upsert(trigger)
  46.  
  47.     ts = fetch()
  48.  
  49.     assert.Len(t, ts[0].Registration.Countries, 4)
  50.     assert.Equal(t, float64(250), ts[0].Slip.MinStake)
  51.  
  52.     assert.Len(t, ts, 1)
  53.  
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement