mirror of
https://github.com/storytold/artcraft.git
synced 2026-10-25 02:29:37 +00:00
get rid of variants
This commit is contained in:
+24
-13
@@ -43,9 +43,11 @@ pub enum UploadedVideoNoteReportedModelType {
|
||||
Seedance10Lite,
|
||||
#[serde(rename = "seedance_1p5_pro")]
|
||||
Seedance1p5Pro,
|
||||
#[serde(rename = "seedance_2p0")]
|
||||
// `preview_model` is a retired alias that collapses onto Seedance 2.0.
|
||||
#[serde(rename = "seedance_2p0", alias = "preview_model")]
|
||||
Seedance2p0,
|
||||
#[serde(rename = "seedance_2p0_fast")]
|
||||
// `preview_model_fast` is a retired alias that collapses onto Seedance 2.0 Fast.
|
||||
#[serde(rename = "seedance_2p0_fast", alias = "preview_model_fast")]
|
||||
Seedance2p0Fast,
|
||||
#[serde(rename = "seedance_2p0_bp")]
|
||||
Seedance2p0BytePlus,
|
||||
@@ -73,10 +75,6 @@ pub enum UploadedVideoNoteReportedModelType {
|
||||
Veo3p1,
|
||||
#[serde(rename = "veo_3p1_fast")]
|
||||
Veo3p1Fast,
|
||||
#[serde(rename = "preview_model")]
|
||||
PreviewModel,
|
||||
#[serde(rename = "preview_model_fast")]
|
||||
PreviewModelFast,
|
||||
}
|
||||
|
||||
impl_enum_display_and_debug_using_to_str!(UploadedVideoNoteReportedModelType);
|
||||
@@ -114,8 +112,6 @@ impl UploadedVideoNoteReportedModelType {
|
||||
Self::Veo3Fast => "veo_3_fast",
|
||||
Self::Veo3p1 => "veo_3p1",
|
||||
Self::Veo3p1Fast => "veo_3p1_fast",
|
||||
Self::PreviewModel => "preview_model",
|
||||
Self::PreviewModelFast => "preview_model_fast",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -149,8 +145,9 @@ impl UploadedVideoNoteReportedModelType {
|
||||
"veo_3_fast" => Ok(Self::Veo3Fast),
|
||||
"veo_3p1" => Ok(Self::Veo3p1),
|
||||
"veo_3p1_fast" => Ok(Self::Veo3p1Fast),
|
||||
"preview_model" => Ok(Self::PreviewModel),
|
||||
"preview_model_fast" => Ok(Self::PreviewModelFast),
|
||||
// Retired values: collapse onto the Seedance 2.0 equivalents.
|
||||
"preview_model" => Ok(Self::Seedance2p0),
|
||||
"preview_model_fast" => Ok(Self::Seedance2p0Fast),
|
||||
_ => Err(format!("invalid value: {:?}", value)),
|
||||
}
|
||||
}
|
||||
@@ -185,8 +182,6 @@ impl UploadedVideoNoteReportedModelType {
|
||||
Self::Veo3Fast,
|
||||
Self::Veo3p1,
|
||||
Self::Veo3p1Fast,
|
||||
Self::PreviewModel,
|
||||
Self::PreviewModelFast,
|
||||
])
|
||||
}
|
||||
}
|
||||
@@ -227,7 +222,23 @@ mod tests {
|
||||
fn variant_count() {
|
||||
use strum::IntoEnumIterator;
|
||||
assert_eq!(UploadedVideoNoteReportedModelType::all_variants().len(), UploadedVideoNoteReportedModelType::iter().len());
|
||||
assert_eq!(UploadedVideoNoteReportedModelType::COUNT, 30);
|
||||
assert_eq!(UploadedVideoNoteReportedModelType::COUNT, 28);
|
||||
}
|
||||
|
||||
/// Retired `preview_model*` values must still decode, collapsing onto Seedance 2.0.
|
||||
#[test]
|
||||
fn legacy_preview_values_map_to_seedance() {
|
||||
assert_eq!(
|
||||
UploadedVideoNoteReportedModelType::from_str("preview_model").unwrap(),
|
||||
UploadedVideoNoteReportedModelType::Seedance2p0
|
||||
);
|
||||
assert_eq!(
|
||||
UploadedVideoNoteReportedModelType::from_str("preview_model_fast").unwrap(),
|
||||
UploadedVideoNoteReportedModelType::Seedance2p0Fast
|
||||
);
|
||||
let decoded: UploadedVideoNoteReportedModelType =
|
||||
serde_json::from_str("\"preview_model\"").unwrap();
|
||||
assert_eq!(decoded, UploadedVideoNoteReportedModelType::Seedance2p0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
+24
-13
@@ -43,9 +43,11 @@ pub enum UploadedVideoDetectedModelType {
|
||||
Seedance10Lite,
|
||||
#[serde(rename = "seedance_1p5_pro")]
|
||||
Seedance1p5Pro,
|
||||
#[serde(rename = "seedance_2p0")]
|
||||
// `preview_model` is a retired alias that collapses onto Seedance 2.0.
|
||||
#[serde(rename = "seedance_2p0", alias = "preview_model")]
|
||||
Seedance2p0,
|
||||
#[serde(rename = "seedance_2p0_fast")]
|
||||
// `preview_model_fast` is a retired alias that collapses onto Seedance 2.0 Fast.
|
||||
#[serde(rename = "seedance_2p0_fast", alias = "preview_model_fast")]
|
||||
Seedance2p0Fast,
|
||||
#[serde(rename = "seedance_2p0_bp")]
|
||||
Seedance2p0BytePlus,
|
||||
@@ -73,10 +75,6 @@ pub enum UploadedVideoDetectedModelType {
|
||||
Veo3p1,
|
||||
#[serde(rename = "veo_3p1_fast")]
|
||||
Veo3p1Fast,
|
||||
#[serde(rename = "preview_model")]
|
||||
PreviewModel,
|
||||
#[serde(rename = "preview_model_fast")]
|
||||
PreviewModelFast,
|
||||
}
|
||||
|
||||
impl_enum_display_and_debug_using_to_str!(UploadedVideoDetectedModelType);
|
||||
@@ -114,8 +112,6 @@ impl UploadedVideoDetectedModelType {
|
||||
Self::Veo3Fast => "veo_3_fast",
|
||||
Self::Veo3p1 => "veo_3p1",
|
||||
Self::Veo3p1Fast => "veo_3p1_fast",
|
||||
Self::PreviewModel => "preview_model",
|
||||
Self::PreviewModelFast => "preview_model_fast",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -149,8 +145,9 @@ impl UploadedVideoDetectedModelType {
|
||||
"veo_3_fast" => Ok(Self::Veo3Fast),
|
||||
"veo_3p1" => Ok(Self::Veo3p1),
|
||||
"veo_3p1_fast" => Ok(Self::Veo3p1Fast),
|
||||
"preview_model" => Ok(Self::PreviewModel),
|
||||
"preview_model_fast" => Ok(Self::PreviewModelFast),
|
||||
// Retired values: collapse onto the Seedance 2.0 equivalents.
|
||||
"preview_model" => Ok(Self::Seedance2p0),
|
||||
"preview_model_fast" => Ok(Self::Seedance2p0Fast),
|
||||
_ => Err(format!("invalid value: {:?}", value)),
|
||||
}
|
||||
}
|
||||
@@ -185,8 +182,6 @@ impl UploadedVideoDetectedModelType {
|
||||
Self::Veo3Fast,
|
||||
Self::Veo3p1,
|
||||
Self::Veo3p1Fast,
|
||||
Self::PreviewModel,
|
||||
Self::PreviewModelFast,
|
||||
])
|
||||
}
|
||||
}
|
||||
@@ -227,7 +222,23 @@ mod tests {
|
||||
fn variant_count() {
|
||||
use strum::IntoEnumIterator;
|
||||
assert_eq!(UploadedVideoDetectedModelType::all_variants().len(), UploadedVideoDetectedModelType::iter().len());
|
||||
assert_eq!(UploadedVideoDetectedModelType::COUNT, 30);
|
||||
assert_eq!(UploadedVideoDetectedModelType::COUNT, 28);
|
||||
}
|
||||
|
||||
/// Retired `preview_model*` values must still decode, collapsing onto Seedance 2.0.
|
||||
#[test]
|
||||
fn legacy_preview_values_map_to_seedance() {
|
||||
assert_eq!(
|
||||
UploadedVideoDetectedModelType::from_str("preview_model").unwrap(),
|
||||
UploadedVideoDetectedModelType::Seedance2p0
|
||||
);
|
||||
assert_eq!(
|
||||
UploadedVideoDetectedModelType::from_str("preview_model_fast").unwrap(),
|
||||
UploadedVideoDetectedModelType::Seedance2p0Fast
|
||||
);
|
||||
let decoded: UploadedVideoDetectedModelType =
|
||||
serde_json::from_str("\"preview_model\"").unwrap();
|
||||
assert_eq!(decoded, UploadedVideoDetectedModelType::Seedance2p0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
+1
-3
@@ -112,9 +112,7 @@ pub fn model_family_for_type(
|
||||
| Type::Seedance2p0Ultra
|
||||
| Type::Seedance2p0UltraFast
|
||||
| Type::Seedance2p0BytePlusUltra
|
||||
| Type::Seedance2p0BytePlusUltraFast
|
||||
| Type::PreviewModel
|
||||
| Type::PreviewModelFast => Family::Seedance,
|
||||
| Type::Seedance2p0BytePlusUltraFast => Family::Seedance,
|
||||
Type::Sora2 | Type::Sora2Pro => Family::Sora,
|
||||
Type::Veo2 | Type::Veo3 | Type::Veo3Fast | Type::Veo3p1 | Type::Veo3p1Fast => Family::Veo,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user