Implement produce service

This commit is contained in:
2021-06-20 18:16:33 -04:00
parent c7cbd7df57
commit 0136e616fb
14 changed files with 537 additions and 37 deletions
+15 -15
View File
@@ -14,7 +14,7 @@ func TestTable_Get(t *testing.T) {
tests := []struct {
test string
tableConfig func() *table
expectedRecord *record
expectedRecord *Record
expectedError error
}{
{
@@ -34,7 +34,7 @@ func TestTable_Get(t *testing.T) {
expectedError: ErrNoIndex,
},
{
test: "it should return ErrNoRecord if no record was found for key",
test: "it should return ErrNoRecord if no Record was found for key",
tableConfig: func() *table {
return &table{
exists: true,
@@ -48,7 +48,7 @@ func TestTable_Get(t *testing.T) {
expectedError: ErrNoRecord,
},
{
test: "it should return a record when one is found",
test: "it should return a Record when one is found",
tableConfig: func() *table {
tbl := &table{
exists: true,
@@ -65,7 +65,7 @@ func TestTable_Get(t *testing.T) {
tbl.indexes["test_column"].tree.ReplaceOrInsert(rec)
return tbl
},
expectedRecord: &record{
expectedRecord: &Record{
serialized: []uint8{0x7b, 0x7d},
key: "test_key",
keyColumn: "test_column",
@@ -78,9 +78,9 @@ func TestTable_Get(t *testing.T) {
t.Run(tc.test, func(t *testing.T) {
tbl := tc.tableConfig()
record, err := tbl.Get("test_column", "test_key")
Record, err := tbl.Get("test_column", "test_key")
assert.Equal(t, tc.expectedRecord, record)
assert.Equal(t, tc.expectedRecord, Record)
assert.Equal(t, tc.expectedError, err)
})
}
@@ -89,13 +89,13 @@ func TestTable_Get(t *testing.T) {
func TestTable_Select(t *testing.T) {
tests := []struct {
test string
tableConfig func() (*table, []*record)
expectedRecords []*record
tableConfig func() (*table, []*Record)
expectedRecords []*Record
expectedError error
}{
{
test: "it should return ErrNoTable if an invalid table is supplied",
tableConfig: func() (*table, []*record) {
tableConfig: func() (*table, []*Record) {
return &table{
mutex: &sync.Mutex{},
}, nil
@@ -104,7 +104,7 @@ func TestTable_Select(t *testing.T) {
},
{
test: "it should return ErrNoIndex if no index exists for column",
tableConfig: func() (*table, []*record) {
tableConfig: func() (*table, []*Record) {
return &table{
exists: true,
mutex: &sync.Mutex{},
@@ -114,8 +114,8 @@ func TestTable_Select(t *testing.T) {
expectedError: ErrNoIndex,
},
{
test: "it should return all records in the database",
tableConfig: func() (*table, []*record) {
test: "it should return all Records in the database",
tableConfig: func() (*table, []*Record) {
tbl := &table{
exists: true,
mutex: &sync.Mutex{},
@@ -126,7 +126,7 @@ func TestTable_Select(t *testing.T) {
},
}
expectedRecords := make([]*record, 0)
expectedRecords := make([]*Record, 0)
for i := 0; i < 10; i++ {
key := fmt.Sprintf("key-%d", i)
rec, err := NewRecord(key, "test_column", struct{}{})
@@ -185,7 +185,7 @@ func TestTable_Insert(t *testing.T) {
expectedError: ErrNoIndex,
},
{
test: "it should return ErrRecordExists if a record with key exists",
test: "it should return ErrRecordExists if a Record with key exists",
tableConfig: func() *table {
tbl := &table{
exists: true,
@@ -265,7 +265,7 @@ func TestTable_Delete(t *testing.T) {
expectedError: ErrNoIndex,
},
{
test: "it should return ErrNoRecord if the record does not exist",
test: "it should return ErrNoRecord if the Record does not exist",
tableConfig: func() *table {
return &table{
exists: true,