add geometry tests for destroyAssets

This commit is contained in:
Nick Fisher
2025-06-02 10:13:08 +08:00
parent 70e2933c4b
commit 3c9b607109

View File

@@ -10,14 +10,25 @@ void main() async {
final testHelper = TestHelper("geometry"); final testHelper = TestHelper("geometry");
await testHelper.setup(); await testHelper.setup();
group("custom geometry", () { group("custom geometry", () {
test('add geometry', () async { test('add/remove geometry', () async {
await testHelper.withViewer((viewer) async { await testHelper.withViewer((viewer) async {
final asset = await viewer.createGeometry(GeometryHelper.cube()); final asset = await viewer.createGeometry(GeometryHelper.cube());
await viewer.addToScene(asset); await viewer.addToScene(asset);
await testHelper.capture(viewer.view, "add_geometry"); await testHelper.capture(viewer.view, "add_geometry");
await viewer.removeFromScene(asset); await viewer.removeFromScene(asset);
await testHelper.capture(viewer.view, "remove_geometry"); await testHelper.capture(viewer.view, "remove_geometry");
await viewer.addToScene(asset);
await viewer.destroyAsset(asset); await viewer.destroyAsset(asset);
await testHelper.capture(viewer.view, "destroy_geometry");
}, bg: kRed);
});
test('ensure geometry is removed when destroyAll is called ', () async {
await testHelper.withViewer((viewer) async {
final asset = await viewer.createGeometry(GeometryHelper.cube());
await viewer.addToScene(asset);
await viewer.destroyAssets();
await testHelper.capture(viewer.view, "destroyAssets_geometry");
}, bg: kRed); }, bg: kRed);
}); });
@@ -32,12 +43,9 @@ void main() async {
}); });
}); });
test('geometry with unlit (ubershader) material', test('geometry with unlit (ubershader) material', () async {
() async {
await testHelper.withViewer((viewer) async { await testHelper.withViewer((viewer) async {
final materialInstance = await FilamentApp.instance!
final materialInstance =
await FilamentApp.instance!
.createUbershaderMaterialInstance(unlit: true); .createUbershaderMaterialInstance(unlit: true);
await materialInstance.setParameterFloat4( await materialInstance.setParameterFloat4(
"baseColorFactor", 1.0, 0.0, 0.0, 1.0); "baseColorFactor", 1.0, 0.0, 0.0, 1.0);