Files
cup_edit/thermion_dart/test/view_tests.dart
Nick Fisher 1177a71f73 test updates
2025-03-20 18:56:10 +08:00

158 lines
5.5 KiB
Dart

// // ignore_for_file: unused_local_variable
// import 'dart:async';
// import 'package:test/test.dart';
// import 'package:thermion_dart/thermion_dart.dart';
// import 'package:vector_math/vector_math_64.dart';
// import 'helpers.dart';
// void main() async {
// final testHelper = TestHelper("view");
// group('view tests', () {
// test('get camera from view', () async {
// await testHelper.withViewer((viewer) async {
// var view = await viewer.getViewAt(0);
// expect(await view.getCamera(), isNotNull);
// });
// });
// test('one swapchain, render view to render target', () async {
// await testHelper.withViewer((viewer) async {
// final texture = await testHelper.createTexture(500, 500);
// final renderTarget = await viewer.createRenderTarget(
// 500, 500, texture.metalTextureAddress);
// final view = await viewer.getViewAt(0);
// await view.setRenderTarget(renderTarget);
// await viewer.setBackgroundColor(1.0, 0, 0, 1);
// final cube = await viewer
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
// var mainCamera = await viewer.getMainCamera();
// mainCamera.setTransform(Matrix4.translation(Vector3(0, 0, 5)));
// await testHelper.capture(
// viewer,
// renderTarget: renderTarget,
// "default_swapchain_default_view_render_target");
// });
// });
// test('create secondary view, default swapchain', () async {
// await testHelper.withViewer((viewer) async {
// final cube = await viewer
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
// var mainCamera = await viewer.getMainCamera();
// mainCamera.setTransform(Matrix4.translation(Vector3(0, 0, 5)));
// await testHelper.capture(viewer, "default_swapchain_default_view");
// final view = await viewer.createView();
// view.setViewport(500, 500);
// view.setCamera(mainCamera);
// await testHelper.capture(
// viewer,
// "default_swapchain_new_view_with_main_camera",
// view: view,
// );
// var newCamera = await viewer.createCamera();
// newCamera.setTransform(Matrix4.translation(Vector3(0.0, 0.0, 10.0)));
// newCamera.setLensProjection();
// view.setCamera(newCamera);
// await testHelper.capture(
// viewer,
// "default_swapchain_new_view_new_camera",
// view: view,
// );
// await testHelper.capture(
// viewer,
// "default_swapchain_default_view_main_camera_no_change",
// );
// });
// });
// test('create secondary view, different swapchain', () async {
// await testHelper.withViewer((viewer) async {
// final cube = await viewer.createGeometry(GeometryHelper.cube());
// var mainCamera = await viewer.getMainCamera();
// mainCamera.setTransform(Matrix4.translation(Vector3(0, 0, 5)));
// final swapChain = await viewer.createHeadlessSwapChain(1, 1);
// await testHelper.capture(
// viewer, "create_swapchain_default_view_default_swapchain");
// final view = await viewer.createView();
// final texture = await testHelper.createTexture(200, 400);
// final renderTarget = await viewer.createRenderTarget(
// 200, 400, texture.metalTextureAddress);
// await view.setRenderTarget(renderTarget);
// await view.setViewport(200, 400);
// view.setCamera(mainCamera);
// mainCamera.setLensProjection(aspect: 0.5);
// await testHelper.capture(
// viewer,
// view: view,
// swapChain: swapChain,
// renderTarget: renderTarget,
// "create_swapchain_secondary_view_new_swapchain",
// );
// });
// });
// test('pick', () async {
// await testHelper.withViewer((viewer) async {
// final view = await viewer.getViewAt(0);
// await view.setRenderable(true, testHelper.swapChain);
// final cube = await viewer
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
// await testHelper.capture(viewer, "view_pick");
// final completer = Completer();
// await viewer.pick(250, 250, (result) {
// completer.complete(result.entity);
// print(
// "Pick result : ${result.fragX} ${result.fragY} ${result.fragZ}");
// });
// for (int i = 0; i < 10; i++) {
// await testHelper.capture(viewer, "view_pick");
// if (completer.isCompleted) {
// break;
// }
// }
// expect(completer.isCompleted, true);
// expect(await completer.future, cube.entity);
// }, cameraPosition: Vector3(0, 0, 3));
// });
// test('dithering', () async {
// await testHelper.withViewer((viewer) async {
// final view = await viewer.getViewAt(0);
// expect(await view.isDitheringEnabled(), true);
// final cube = await viewer
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
// await testHelper.capture(viewer, "dithering_enabled");
// await view.setDithering(false);
// expect(await view.isDitheringEnabled(), false);
// await testHelper.capture(viewer, "dithering_disabled");
// }, cameraPosition: Vector3(0, 0, 3));
// });
// });
// }