fix token_test.go
diff --git a/data.go b/data.go
index 4f63058..aeb0203 100644
--- a/data.go
+++ b/data.go
@@ -474,7 +474,6 @@
} else {
// first start - no row, generate a UUID and store it
err = nil
- newInstanceID = true
info.InstanceID = GenerateUUID()
log.Debugf("Inserting new apid instance id %s", info.InstanceID)
@@ -484,7 +483,6 @@
} else if savedClusterId != info.ClusterID {
log.Debug("Detected apid cluster id change in config. Apid will start clean")
err = nil
- newInstanceID = true
info.InstanceID = GenerateUUID()
db.Exec("REPLACE INTO APID (instance_id, apid_cluster_id, last_snapshot_info) VALUES (?,?,?)",
diff --git a/init.go b/init.go
index e4be5aa..3ad221e 100644
--- a/init.go
+++ b/init.go
@@ -49,7 +49,6 @@
dataService apid.DataService
events apid.EventsService
apidInfo apidInstanceInfo
- newInstanceID bool
apidTokenManager TokenManagerInterface
apidChangeManager changeManagerInterface
apidSnapshotManager snapShotManagerInterface
diff --git a/token.go b/token.go
index f10fff8..991463c 100644
--- a/token.go
+++ b/token.go
@@ -66,6 +66,7 @@
returnTokenChan chan *OauthToken
invalidateDone chan bool
dbm dbManagerInterface
+ notNewInstanceId bool
}
func (t *tokenManager) start() {
@@ -167,7 +168,7 @@
req.Header.Set("status", "ONLINE")
req.Header.Set("plugin_details", apidPluginDetails)
- if newInstanceID {
+ if !t.notNewInstanceId {
req.Header.Set("created_at_apid", time.Now().Format(time.RFC3339))
} else {
req.Header.Set("updated_at_apid", time.Now().Format(time.RFC3339))
@@ -208,8 +209,8 @@
log.Debugf("Got new token: %#v", token)
- if newInstanceID {
- newInstanceID = false
+ if !t.notNewInstanceId {
+ t.notNewInstanceId = true
err = t.dbm.updateApidInstanceInfo()
if err != nil {
log.Errorf("unable to unmarshal update apid instance info : %v", string(body), err)
diff --git a/token_test.go b/token_test.go
index 66cd189..4a0c3e6 100644
--- a/token_test.go
+++ b/token_test.go
@@ -25,6 +25,9 @@
"encoding/json"
+ "database/sql"
+ "github.com/30x/apid-core"
+ "github.com/apigee-labs/transicator/common"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
@@ -94,7 +97,7 @@
w.Write(body)
}))
config.Set(configProxyServerBaseURI, ts.URL)
- testedTokenManager := createTokenManager()
+ testedTokenManager := createTokenManager(&dummyDbMan{})
testedTokenManager.start()
token := testedTokenManager.getToken()
@@ -123,7 +126,7 @@
}))
config.Set(configProxyServerBaseURI, ts.URL)
- testedTokenManager := createTokenManager()
+ testedTokenManager := createTokenManager(&dummyDbMan{})
testedTokenManager.start()
token := testedTokenManager.getToken()
Expect(token.AccessToken).ToNot(BeEmpty())
@@ -163,7 +166,7 @@
}))
config.Set(configProxyServerBaseURI, ts.URL)
- testedTokenManager := createTokenManager()
+ testedTokenManager := createTokenManager(&dummyDbMan{})
testedTokenManager.start()
testedTokenManager.getToken()
@@ -179,17 +182,13 @@
finished := make(chan bool, 1)
count := 0
- newInstanceID = true
-
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
count++
if count == 1 {
- Expect(newInstanceID).To(BeTrue())
Expect(r.Header.Get("created_at_apid")).NotTo(BeEmpty())
Expect(r.Header.Get("updated_at_apid")).To(BeEmpty())
} else {
- Expect(newInstanceID).To(BeFalse())
Expect(r.Header.Get("created_at_apid")).To(BeEmpty())
Expect(r.Header.Get("updated_at_apid")).NotTo(BeEmpty())
finished <- true
@@ -204,7 +203,7 @@
}))
config.Set(configProxyServerBaseURI, ts.URL)
- testedTokenManager := createTokenManager()
+ testedTokenManager := createTokenManager(&dummyDbMan{})
testedTokenManager.start()
testedTokenManager.getToken()
testedTokenManager.invalidateToken()
@@ -216,3 +215,43 @@
}, 3)
})
})
+
+type dummyDbMan struct{}
+
+func (d *dummyDbMan) initDefaultDb() error {
+ return nil
+}
+func (d *dummyDbMan) setDb(apid.DB) {}
+func (d *dummyDbMan) getDb() apid.DB {
+ return nil
+}
+func (d *dummyDbMan) insert(tableName string, rows []common.Row, txn *sql.Tx) bool {
+ return true
+}
+func (d *dummyDbMan) deleteRowsFromTable(tableName string, rows []common.Row, txn *sql.Tx) bool {
+ return true
+}
+func (d *dummyDbMan) update(tableName string, oldRows, newRows []common.Row, txn *sql.Tx) bool {
+ return true
+}
+func (d *dummyDbMan) getPkeysForTable(tableName string) ([]string, error) {
+ return nil, nil
+}
+func (d *dummyDbMan) findScopesForId(configId string) []string {
+ return nil
+}
+func (d *dummyDbMan) getDefaultDb() (apid.DB, error) {
+ return nil, nil
+}
+func (d *dummyDbMan) updateApidInstanceInfo() error {
+ return nil
+}
+func (d *dummyDbMan) getApidInstanceInfo() (info apidInstanceInfo, err error) {
+ return
+}
+func (d *dummyDbMan) getLastSequence() string {
+ return ""
+}
+func (d *dummyDbMan) updateLastSequence(lastSequence string) error {
+ return nil
+}