Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-12-20ID Management: Add some basic tests regarding name handling.Bastien Montagne
Those tests are here mostsly to ensure ID name management is working as expected (the code ensuring we never have two ilocal data-blocks of the same type with the same name in a .blend file). Note: Currently fails in some cases, fixes are incoming. Note: Ideally this would be in C, but we already have too many tests linking the whole Blender and its libraries, this is becoming a real pain to link debug + ASAN + tests build these days... So until we find a better way to handle those dependencies, sticking to simple python scripts.
2019-11-29Alembic: fixed unit test for exporter API changeSybren A. Stüvel
2019-11-27Clean/Fix remaining cases of props assignments in resgistrable structs def.Bastien Montagne
We still had a few deprecated assignements of `bpy.props.xxx` to class members in our API documentation and one of our py tests. Annotations are to be used now. Also remove the section about `register_module` utils, this has been removed in 2.8. Fix T71877: Python API overview sample code warning: class MyMaterialProps contains a property which should be an annotation! Fix T71876: Python API overview references old bpy.utils.register_module function
2019-10-28CMake: add missing headers, use space before commentsCampbell Barton
2019-09-19Fix T68091: Adding a corrupt video crashes/confuses BlenderSybren A. Stüvel
The problematic video from T68091 clearly has an invalid stream duration (it would be 55 centuries long if interpreted at 30 FPS, and given that it was recorded with an Android 9 device, it's unlikely that recording started that long ago). I've added a heuristic to check the stream duration against the container duration; if the stream is more than 4x longer than the container, Blender now falls back to the container duration. We could use MIN(stream duration, container duration), but there might be video files out there where the container duration is less precise than the stream duration; they are measured in different units of time (microseconds for the container vs. frames for the stream). Includes a unit test for the above heuristic. Reviewed by: jbakker Differential revision: https://developer.blender.org/D5853
2019-09-08Fix script_load_modules test failure in power sequencerBrecht Van Lommel
2019-09-07Fix GTests failing on Windows buildbotBrecht Van Lommel
Run these tests from the install directory so they can find dlls.
2019-09-07Tests: run tests from install pathBrecht Van Lommel
Blender can only be run correctly from the install path since it requires Python scripts, dynamic libraries and other files to be present. By default the install path is the same as the build path, so it works anyway. But on the buildbot it isn't. There was a workaround but it failed on Windows and macOS. Now tests run from the install path. Detecting that path for ctest is more complicated than I would like, but I couldn't find a better solution. Ref T69541.
2019-09-07Cleanup: style, spellingCampbell Barton
2019-09-07EEVEE: Fix tests crashing if file is in edit modeClément Foucault
2019-09-06Eevee: Improve Test setupClément Foucault
- Remove use_screen_refraction as it conflict with SSR and SSS - Increase GTAO distance - Add a simple lightprobe setup that works well in most cases - Enable soft shadows Baking the lightprobes adds some overhead to the test time (+33%). Reviewers: brecht Differential Revision: https://developer.blender.org/D5507
2019-08-30Cleanup: remove debug printBrecht Van Lommel
2019-08-30Tests: reorder render tests so cycles/eevee/workbench are not interleavedBrecht Van Lommel
2019-08-26Fix render test Python error on crashesBrecht Van Lommel
2019-08-02Tests: also don't fail on memory leaks for gtestsBrecht Van Lommel
2019-08-02Fix broken add_python_test after recent changesBrecht Van Lommel
2019-08-02Tests: don't fail on leaks detected by leak sanitizerBrecht Van Lommel
These often happen in external libraries that we can't fix. The leaks are still printed in the logs.
2019-08-02Cleanup: refactor tests executing Blender to use add_blender_test functionBrecht Van Lommel
2019-08-02Fix scene units test failure after recent changesBrecht Van Lommel
2019-08-01Cleanup: misc spelling fixesCampbell Barton
T68035 by @luzpaz
2019-07-31Fix: test object_modifier_array is passing when it shouldn't.Habib Gahbiche
From D5253.
2019-07-01Tests: Point ffmpeg data to a new folderSergey Sharybin
2019-06-28Python tests: replaced `imp` with `importlib`Sybren A. Stüvel
The `imp` module has been deprecated since Python 3.4, and is replaced by `importlib`.
2019-06-28Tests: disable keymap hierarchy tests until they are fixedBrecht Van Lommel
This is not a critical issue, and it's important to have tests always passing. Ref T65963.
2019-06-27Tests: speed up render tests by running multiple in the same processBrecht Van Lommel
Blender startup time and shader compilation is a big factor when running hundreds of tests, so now all renders in the same ctest run in the same process. This was previously reverted due to skipping other tests when one test crashed. Now if a test crashes, Blender is re-run with the remaining tests so we get results from them still.
2019-06-26Tests: put output of IO tests in subdirectoryBrecht Van Lommel
2019-06-26Tests: add navigation links for HTML test reports, and other tweaksBrecht Van Lommel
2019-06-25Fix related to T65963: Ctest: Failing test script_load_keymap passes.Bastien Montagne
Fix things to make test actually fail as expected (one cannot compare functions to strings, so no more sorting for now). Not sure how to actually fix the test though, not even sure test make any sense anymore actually, with all those weirdo gizmos and tools keymaps thingy...
2019-06-22macOS: rename blender.app to Blender.appBrecht Van Lommel
Using a capitalized app name fits the platform guidelines. Since macOS file systems are case insensitive by default this should not break scripts that assume lowercase.
2019-06-04Fix (unreported) missing updates in scripts/docs after `scene.update()` removal.Bastien Montagne
This should really have been done together with API changes, simple usage of grep does the trick to catch most places needing updates.
2019-05-28Tests: make grease pencil tests part of OpenGL render testsBrecht Van Lommel
Otherwise tests fail on machines without OpenGL.
2019-05-20Fix broken workbench tests after recent changesBrecht Van Lommel
2019-05-17Cycles/Eevee: unify depth of field settings for camerasJeroen Bakker
There is now a checkbox to enable/disable depth of field per camera. For Eevee this replace the scene level setting. For Cycles there is now only an F-Stop value, no longer a Radius. Existing files are converted based on Cycles or Eevee being set in the scene. Differential Revision: https://developer.blender.org/D4882
2019-05-17Eevee: Remove the Volumetric Render checkboxClément Foucault
This is to simplify the usage of Volumetrics. Now it automatically detect if there is any Volumetric material in the view and allocate the needed buffer if any.
2019-05-16Tests: add more descriptive messages when idiff is not availableBrecht Van Lommel
Based on patch contributed by Diana Picus in D4355.
2019-05-16Tweak API to support adding evaluated meshes to main databaseSergey Sharybin
One of the usecases is to create mesh from an object is a manner similar to how Apply Modifiers does it, and have it in the bmain so it can be referenced by other objects. This usecase is something what went unnoticed in the previous API changes, so here is a followup. Summary of changes: * bpy.meshes.new_from_object() behaves almost the same as before this change. The difference now is that it now ensures all referenced data-blocks are original (for example, materials referenced by the mesh). * object.to_mesh() now creates free-standing Mesh data-block which is outside of any bmain. The object owns it, which guarantees the memory never leaks. It is possible to force free memory by calling object.to_mesh_clear(). Reviewers: brecht Reviewed By: brecht Differential Revision: https://developer.blender.org/D4875
2019-05-16Revert "Tests: speed up render tests by running multiple in the same process"Brecht Van Lommel
This makes finding the crashing tests harder, reverting until there is a better solution. This reverts commit 93901e7f0a05ba471f3b4c0201500d9dfcd68c2c.
2019-05-16Dependency graph API changesSergey Sharybin
Main goal here is to make it obvious and predictable about what is going on. Summary of changes. - Access to dependency graph is now only possible to a fully evaluated graph. This is now done via context.evaluated_depsgraph_get(). The call will ensure both relations and datablocks are updated. This way we don't allow access to some known bad state of the graph, and also making explicit that getting update dependency graph is not cheap. - Access to evaluated ID is now possible via id.evaluated_get(). It was already possible to get evaluated ID via dependency graph, but that was a bit confusing why access to original is done via ID and to evaluated via depsgraph. If datablock is not covered by dependency graph it will be returned as-is. - Similarly, request for original from an ID which is not evaluated will return ID as-is. - Removed scene.update(). This is very expensive to update all the view layers. - Added depsgraph.update(). Now when temporary changes to objects are to be done, this is to happen on original object and then dependency graph is to be updated. - Changed object.to_mesh() to behave the following way: * When is used for original object modifiers are ignored. For meshes this acts similar to mesh-copy, not very useful but allows to keep code paths similar (i.e. for exporter which has Apply Modifiers option it's only matter choosing between original and evaluated object, the to_mesh() part can stay the same). For curves this gives a mesh which is constructed from displist without taking own modifiers and modifiers of bevel/taper objects into account. For metaballs this gives empty mesh. Polygonization of metaball is not possible from a single object. * When is used for evaluated object modifiers are always applied. In fact, no evaluation is happening, the mesh is either copied as-is, or constructed from current state of curve cache. Arguments to apply modifiers and calculate original coordinates (ORCO, aka undeformed coordinates) are removed. The ORCO is to be calculated as part of dependency graph evaluation. File used to regression-test (a packed Python script into .blend): {F7033464} Patch to make addons tests to pass: {F7033466} NOTE: I've included changes to FBX exporter, and those are addressing report T63689. NOTE: All the enabled-by-default addons are to be ported still, but first want to have agreement on this part of changes. NOTE: Also need to work on documentation for Python API, but, again, better be done after having agreement on this work. Reviewers: brecht, campbellbarton, mont29 Differential Revision: https://developer.blender.org/D4834
2019-05-15Objects: new 3D cursor alignment option when adding objectsHans Goudey
The choices are now World, View and 3D Cursor. This breaks Python API compatibility, add-ons that add objects with this parameter will need to be updated. Differential Revision: https://developer.blender.org/D4706
2019-05-13Tests: disable DoF in Eevee tests for now, it adds blurring with default valuesBrecht Van Lommel
2019-05-11Tests: speed up render tests by running multiple in the same processBrecht Van Lommel
Blender startup time and shader compilation is a big factor when running hundreds of tests, so now all renders in the same ctest run in the same process. If a test crashes, the remaining tests in the same category will be marked as skipped. Benchmarked on a quad core with ctest -j8. cycles: 118.1s -> 94.3s eevee: 66.2s -> 29.2s workbench: 31.7s -> 8.6s
2019-05-11Tests: fix eevee and workbench using Cycles in a few testsBrecht Van Lommel
2019-05-10Tests: Be more explicit about the required location of the tests folder.Ray Molenkamp
2019-05-10Fix failing tests when Cycles is enabledBrecht Van Lommel
The --env-system-scripts hack does not work with it, it can't find the cycles Python module then when importing add-ons.
2019-05-09Tests: add tests/report.html that links to all HTML test reportsBrecht Van Lommel
Currently this is for Cycles, Eevee and workbench tests.
2019-05-07Tests: add Cycles image texture colorspace testsBrecht Van Lommel
2019-05-06Tests: add Eevee reference images, and add workbench testsBrecht Van Lommel
Being able to compare Eevee reference images is useful for refactoring I'm working on so might as well add them now, even if we can still improve them. Workbench tests are just rendering the same files as Cycles and Eevee. This doesn't really tests many workbench settings until we add tests specifically for them, but does cover how it it handles the different object types.
2019-05-06Fix error running Eevee render testsBrecht Van Lommel
2019-04-18PyTests: do not load addons in load_py_modules test.Bastien Montagne
It makes no sense to load add-ons here, we already do that (in a more complete way) in load_addons test, this is only adding overhead and doubling code to maintain). Also do not try to load-as-modules add-ons that are not 2.8-ready, and some other misc fix. load_py_modules test should be passing again now. Thanks to @sergey who did part of the work here as well.
2019-04-18PyTests: do not try to load non-2.8-ready add-ons.Bastien Montagne