func insertTask(db *sql.DB, serializer format.Serializer, task *models.Task, malformedTaskDefinition bool) { taskDefData, err := serializer.Marshal(logger, format.ENCRYPTED_PROTO, task.TaskDefinition) Expect(err).NotTo(HaveOccurred()) if malformedTaskDefinition { taskDefData = []byte("{{{{{{{{{{") } queryStr := `INSERT INTO tasks (guid, domain, created_at, updated_at, first_completed_at, state, cell_id, result, failed, failure_reason, task_definition) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)` if test_helpers.UsePostgres() { queryStr = test_helpers.ReplaceQuestionMarks(queryStr) } result, err := db.Exec( queryStr, task.TaskGuid, task.Domain, task.CreatedAt, task.UpdatedAt, task.FirstCompletedAt, task.State, task.CellId, task.Result, task.Failed, task.FailureReason, taskDefData, ) Expect(err).NotTo(HaveOccurred()) Expect(result.RowsAffected()).NotTo(Equal(1)) }
"github.com/gogo/protobuf/proto" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" "code.cloudfoundry.org/bbs/encryption" "code.cloudfoundry.org/bbs/encryption/encryptionfakes" "code.cloudfoundry.org/bbs/format" "code.cloudfoundry.org/bbs/models" "code.cloudfoundry.org/bbs/models/test/model_helpers" ) var _ = Describe("Format", func() { var ( serializer format.Serializer cryptor *encryptionfakes.FakeCryptor encoder format.Encoder logger lager.Logger task *models.Task ) BeforeEach(func() { task = model_helpers.NewValidTask("a-guid") logger = lagertest.NewTestLogger("test") cryptor = &encryptionfakes.FakeCryptor{} cryptor.EncryptStub = func(plaintext []byte) (encryption.Encrypted, error) { nonce := [12]byte{} return encryption.Encrypted{ KeyLabel: "label", Nonce: nonce[:], CipherText: plaintext, }, nil
"code.cloudfoundry.org/bbs/encryption" "code.cloudfoundry.org/bbs/format" "code.cloudfoundry.org/bbs/migration" "code.cloudfoundry.org/bbs/models" "code.cloudfoundry.org/bbs/models/test/model_helpers" "code.cloudfoundry.org/lager/lagertest" goetcd "github.com/coreos/go-etcd/etcd" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("Base 64 Protobuf Encode Migration", func() { var ( migration migration.Migration serializer format.Serializer cryptor encryption.Cryptor logger *lagertest.TestLogger ) BeforeEach(func() { logger = lagertest.NewTestLogger("test") encryptionKey, err := encryption.NewKey("label", "passphrase") Expect(err).NotTo(HaveOccurred()) keyManager, err := encryption.NewKeyManager(encryptionKey, nil) Expect(err).NotTo(HaveOccurred()) cryptor = encryption.NewCryptor(keyManager, rand.Reader) serializer = format.NewSerializer(cryptor) migration = migrations.NewBase64ProtobufEncode() })
"code.cloudfoundry.org/bbs/db/migrations" "code.cloudfoundry.org/bbs/encryption" "code.cloudfoundry.org/bbs/format" "code.cloudfoundry.org/bbs/migration" "code.cloudfoundry.org/bbs/models" "code.cloudfoundry.org/bbs/models/test/model_helpers" "code.cloudfoundry.org/lager/lagertest" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("Change Timeouts to Milliseconds Migration", func() { var ( migration migration.Migration serializer format.Serializer cryptor encryption.Cryptor db *etcddb.ETCDDB logger *lagertest.TestLogger ) BeforeEach(func() { logger = lagertest.NewTestLogger("test") encryptionKey, err := encryption.NewKey("label", "passphrase") Expect(err).NotTo(HaveOccurred()) keyManager, err := encryption.NewKeyManager(encryptionKey, nil) Expect(err).NotTo(HaveOccurred()) cryptor = encryption.NewCryptor(keyManager, rand.Reader) serializer = format.NewSerializer(cryptor) migration = migrations.NewTimeoutMilliseconds() db = etcddb.NewETCD(format.ENCRYPTED_PROTO, 1, 1, 1*time.Minute, cryptor, storeClient, fakeClock)
"time" etcddb "code.cloudfoundry.org/bbs/db/etcd" "code.cloudfoundry.org/bbs/db/migrations" "code.cloudfoundry.org/bbs/format" "code.cloudfoundry.org/bbs/migration" "code.cloudfoundry.org/bbs/models" "code.cloudfoundry.org/bbs/models/test/model_helpers" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("ETCD to SQL Migration", func() { var ( migration migration.Migration serializer format.Serializer migrationErr error ) BeforeEach(func() { migration = migrations.NewETCDToSQL() serializer = format.NewSerializer(cryptor) rawSQLDB.Exec("DROP TABLE domains;") rawSQLDB.Exec("DROP TABLE tasks;") rawSQLDB.Exec("DROP TABLE desired_lrps;") rawSQLDB.Exec("DROP TABLE actual_lrps;") }) It("appends itself to the migration list", func() { Expect(migrations.Migrations).To(ContainElement(migration))