Skip to content

Commit

Permalink
add test for service account app
Browse files Browse the repository at this point in the history
  • Loading branch information
acoshift committed Dec 30, 2017
1 parent 991edf7 commit 8005eb0
Show file tree
Hide file tree
Showing 3 changed files with 85 additions and 78 deletions.
4 changes: 4 additions & 0 deletions app_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,10 @@ func initAppServiceAccount(t *testing.T) *firebase.App {
return app
}

func initApps(t *testing.T) []*firebase.App {
return []*firebase.App{initApp(t), initAppServiceAccount(t)}
}

func TestAuth(t *testing.T) {
app := initApp(t)
firAuth := app.Auth()
Expand Down
23 changes: 12 additions & 11 deletions auth_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,27 @@ import (
)

func TestCreateCustomToken(t *testing.T) {
app := initApp(t)
firAuth := app.Auth()
for _, app := range initApps(t) {
firAuth := app.Auth()

assert.NotNil(t, app)
assert.NotNil(t, firAuth)
assert.NotNil(t, app)
assert.NotNil(t, firAuth)

// my claims
myClaims := make(map[string]string)
myClaims["name"] = "go-firebase-admin"
// my claims
myClaims := make(map[string]string)
myClaims["name"] = "go-firebase-admin"

token, err := firAuth.CreateCustomToken("go-firebase-admin", myClaims)
token, err := firAuth.CreateCustomToken("go-firebase-admin", myClaims)

assert.Nil(t, err)
assert.NotNil(t, token)
assert.Nil(t, err)
assert.NotNil(t, token)
}
}

func TestUser(t *testing.T) {
ctx := context.Background()

for _, app := range []*firebase.App{initApp(t), initAppServiceAccount(t)} {
for _, app := range initApps(t) {
auth := app.Auth()

createUser := &firebase.User{
Expand Down
136 changes: 69 additions & 67 deletions reference_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,47 +8,48 @@ import (
)

func TestReference(t *testing.T) {
app := initApp(t)
db := app.Database()

err := db.Ref(".settings/rules").Set(map[string]interface{}{
"rules": map[string]interface{}{
".read": false,
".write": false,
"test": map[string]interface{}{
"path": map[string]interface{}{
".indexOn": []string{"height"},
for _, app := range initApps(t) {
db := app.Database()

err := db.Ref(".settings/rules").Set(map[string]interface{}{
"rules": map[string]interface{}{
".read": false,
".write": false,
"test": map[string]interface{}{
"path": map[string]interface{}{
".indexOn": []string{"height"},
},
},
},
},
})
assert.NoError(t, err)

r1 := db.Ref("test/path")
n := time.Now()
rr, err := r1.Push(n)
assert.NoError(t, err)
assert.NotNil(t, rr, "expected push result not nil")
assert.NotEqual(t, rr.Key(), r1.Key(), "expected push result key changed")

err = r1.Set(n)
assert.NoError(t, err)

snapshot, err := r1.OnceValue()
assert.NoError(t, err)
assert.True(t, snapshot.Exists())

var ts time.Time
err = snapshot.Val(&ts)
assert.NoError(t, err)
assert.True(t, n.Equal(ts), "expected data to be %v; got %v", n, ts)

err = r1.Remove()
assert.NoError(t, err)

snapshot, err = r1.OnceValue()
assert.NoError(t, err)
assert.False(t, snapshot.Exists(), "expected snapshot not exists")
})
assert.NoError(t, err)

r1 := db.Ref("test/path")
n := time.Now()
rr, err := r1.Push(n)
assert.NoError(t, err)
assert.NotNil(t, rr, "expected push result not nil")
assert.NotEqual(t, rr.Key(), r1.Key(), "expected push result key changed")

err = r1.Set(n)
assert.NoError(t, err)

snapshot, err := r1.OnceValue()
assert.NoError(t, err)
assert.True(t, snapshot.Exists())

var ts time.Time
err = snapshot.Val(&ts)
assert.NoError(t, err)
assert.True(t, n.Equal(ts), "expected data to be %v; got %v", n, ts)

err = r1.Remove()
assert.NoError(t, err)

snapshot, err = r1.OnceValue()
assert.NoError(t, err)
assert.False(t, snapshot.Exists(), "expected snapshot not exists")
}
}

type dinosaurs struct {
Expand All @@ -61,42 +62,43 @@ type dinosaurs struct {
}

func TestOrderBy(t *testing.T) {
app := initApp(t)
db := app.Database()
var err error
for _, app := range initApps(t) {
db := app.Database()
var err error

// feed data
r := db.Ref("test/path")
defer r.Remove()
err = r.Child("bruhathkayosaurus").Set(&dinosaurs{-70000000, 25, 44, "saurischia", -70000000, 135000})
assert.NoError(t, err)
// feed data
r := db.Ref("test/path")
defer r.Remove()
err = r.Child("bruhathkayosaurus").Set(&dinosaurs{-70000000, 25, 44, "saurischia", -70000000, 135000})
assert.NoError(t, err)

err = r.Child("lambeosaurus").Set(&dinosaurs{-76000000, 2.1, 12.5, "ornithischia", -75000000, 5000})
assert.NoError(t, err)
err = r.Child("lambeosaurus").Set(&dinosaurs{-76000000, 2.1, 12.5, "ornithischia", -75000000, 5000})
assert.NoError(t, err)

err = r.Child("linhenykus").Set(&dinosaurs{-85000000, 0.6, 1, "theropoda", -75000000, 3})
assert.NoError(t, err)
err = r.Child("linhenykus").Set(&dinosaurs{-85000000, 0.6, 1, "theropoda", -75000000, 3})
assert.NoError(t, err)

err = r.Child("pterodactyl").Set(&dinosaurs{-150000000, 0.6, 0.8, "pterosauria", -148500000, 2})
assert.NoError(t, err)
err = r.Child("pterodactyl").Set(&dinosaurs{-150000000, 0.6, 0.8, "pterosauria", -148500000, 2})
assert.NoError(t, err)

err = r.Child("stegosaurus").Set(&dinosaurs{-155000000, 4, 9, "ornithischia", -150000000, 2500})
assert.NoError(t, err)
err = r.Child("stegosaurus").Set(&dinosaurs{-155000000, 4, 9, "ornithischia", -150000000, 2500})
assert.NoError(t, err)

err = r.Child("triceratops").Set(&dinosaurs{-68000000, 3, 8, "ornithischia", -66000000, 11000})
assert.NoError(t, err)
err = r.Child("triceratops").Set(&dinosaurs{-68000000, 3, 8, "ornithischia", -66000000, 11000})
assert.NoError(t, err)

snapshot, err := r.OrderByKey().OnceValue()
assert.NoError(t, err)
snapshot, err := r.OrderByKey().OnceValue()
assert.NoError(t, err)

var d map[string]*dinosaurs
snapshot.Val(&d)
assert.Len(t, d, 6, "expected dinosours have 6 len; got %d", len(d))
var d map[string]*dinosaurs
snapshot.Val(&d)
assert.Len(t, d, 6, "expected dinosours have 6 len; got %d", len(d))

snapshot, err = r.OrderByChild("height").EqualTo(0.6).OnceValue()
assert.NoError(t, err)
snapshot, err = r.OrderByChild("height").EqualTo(0.6).OnceValue()
assert.NoError(t, err)

d = nil
snapshot.Val(&d)
assert.Len(t, d, 2, "expected dinosours have 2 len; got %d", len(d))
d = nil
snapshot.Val(&d)
assert.Len(t, d, 2, "expected dinosours have 2 len; got %d", len(d))
}
}

0 comments on commit 8005eb0

Please sign in to comment.