fix(photos): копия фото не наследует отредактированную версию
Clone переносил все привязки photo_objects, включая роли edit*, хотя правка принадлежит фото, чьи правки её породили. Теперь копия делит только обычные варианты и показывается в исходном виде. - EditRoles() и IsEditRole() в edit_render.go — единый список ролей; - фильтр edit-ролей в Store.Clone и SQLiteStore.Clone; - миграции 000016 (Postgres) и 000008 (SQLite) убирают привязки у копий, созданных до фикса; - контрактная проверка копирования, сервисные и e2e-тесты.
This commit is contained in:
@@ -34,6 +34,23 @@ func TestParseEditParamsClampsValues(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestEditRolesCoverTheEditedVersion(t *testing.T) {
|
||||
roles := EditRoles()
|
||||
if len(roles) != 4 {
|
||||
t.Fatalf("edit roles = %v, want four", roles)
|
||||
}
|
||||
for _, role := range roles {
|
||||
if !IsEditRole(role) {
|
||||
t.Fatalf("role %q must be an edit role", role)
|
||||
}
|
||||
}
|
||||
for _, role := range []string{RoleOriginal, RoleThumb, RoleMedium, RolePreview, RolePlayback} {
|
||||
if IsEditRole(role) {
|
||||
t.Fatalf("role %q must not be an edit role", role)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestEditParamsIsEmpty(t *testing.T) {
|
||||
var zero EditParams
|
||||
if !zero.IsEmpty() {
|
||||
|
||||
Reference in New Issue
Block a user