| 125 | } |
| 126 | |
| 127 | func TestUpdate(t *testing.T) { |
| 128 | var ( |
| 129 | _1 = meta("00000000-0000-0000-0000-000000000001") |
| 130 | _2 = meta("00000000-0000-0000-0000-000000000002") |
| 131 | _3 = meta("00000000-0000-0000-0000-000000000003") |
| 132 | _2c = compactedMeta("00000000-0000-0000-0000-000000000002") |
| 133 | _3c = compactedMeta("00000000-0000-0000-0000-000000000003") |
| 134 | ) |
| 135 | |
| 136 | tests := []struct { |
| 137 | name string |
| 138 | existing []*backend.BlockMeta |
| 139 | add []*backend.BlockMeta |
| 140 | remove []*backend.BlockMeta |
| 141 | addC []*backend.CompactedBlockMeta |
| 142 | removeC []*backend.CompactedBlockMeta |
| 143 | expected []*backend.BlockMeta |
| 144 | }{ |
| 145 | { |
| 146 | name: "all nil", |
| 147 | existing: nil, |
| 148 | add: nil, |
| 149 | remove: nil, |
| 150 | expected: nil, |
| 151 | }, |
| 152 | { |
| 153 | name: "add to nil", |
| 154 | existing: nil, |
| 155 | add: []*backend.BlockMeta{_1}, |
| 156 | remove: nil, |
| 157 | expected: []*backend.BlockMeta{_1}, |
| 158 | }, |
| 159 | { |
| 160 | name: "add to existing", |
| 161 | existing: []*backend.BlockMeta{_1}, |
| 162 | add: []*backend.BlockMeta{_2}, |
| 163 | remove: nil, |
| 164 | expected: []*backend.BlockMeta{_1, _2}, |
| 165 | }, |
| 166 | { |
| 167 | name: "remove from nil", |
| 168 | existing: nil, |
| 169 | add: nil, |
| 170 | remove: []*backend.BlockMeta{_2}, |
| 171 | expected: nil, |
| 172 | }, |
| 173 | { |
| 174 | name: "remove nil", |
| 175 | existing: []*backend.BlockMeta{_2}, |
| 176 | add: nil, |
| 177 | remove: nil, |
| 178 | expected: []*backend.BlockMeta{_2}, |
| 179 | }, |
| 180 | { |
| 181 | name: "remove existing", |
| 182 | existing: []*backend.BlockMeta{_1, _2}, |
| 183 | add: nil, |
| 184 | remove: []*backend.BlockMeta{_1}, |