View Issue Details

IDProjectCategoryView StatusLast Update
0005200DarkRadiantDesign/Codingpublic05.02.2021 11:29
Reportergreebo Assigned Togreebo  
PrioritynormalSeveritynormalReproducibilityN/A
Status closedResolutionfixed 
Product Version2.7.0 
Target Version2.9.0Fixed in Version2.9.0 
Summary0005200: Unit testing infrastructure
DescriptionDarkRadiant is severly lacking an infrastructure to perform unit and integration tests.
While some math methods have been tested by code in the past, there's nothing here to enable testing all of DR's interfaces or map editing algorithms.
It's hard to implement such a unit testing facility long after the project started, but it would really help.

If possible, this infrastructure should be cross-platform, but I personally wouldn't mind if it's MSVC only if that's the most convenient solution. Since DR is developed mostly on the Windows platform, and the Windows build needs 100% to be done before each release.
TagsNo tags attached.

Relationships

related to 0005231 closedgreebo Extract Radiant core such that it can be instantiated from outside the main executable 
related to 0005361 closedgreebo Unit testing infrastructure (Linux) 

Activities

greebo

greebo

17.09.2020 17:57

administrator   ~0012776

New status is: there's a Google Test project added in the VC++ solution, it can set up an Application Context and initialise the DarkRadiant core binary.
Next step is to implement the actual tests and set up the game data in a minimalist PK4.
greebo

greebo

17.09.2020 18:01

administrator   ~0012777

Setting this to resolved for the moment being. The first unit test to be written will likely be more challenging than the following ones, at least the basic ground work of separating UI from functionality and cleaning up the dependencies of the core module is done now.

Related Changesets

DarkRadiant: test_setup 85ba6232

22.08.2020 15:23

greebo


Details Diff
0005200: Add Google Test project to solution, empty setup.
Move ApplicationContextImpl to modulelib, rename to ApplicationContextBase (intermediate commit, next commit will introduce a RadiantApp-specific context).
Affected Issues
0005200
mod - libs/module/Makefile.am Diff File
mod - radiant/RadiantApp.h Diff File
mod - tools/msvc/DarkRadiant.sln Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File
add - tools/msvc/Tests/RadiantTest.h Diff File
add - tools/msvc/Tests/Tests.vcxproj Diff File
add - tools/msvc/Tests/packages.config Diff File
add - tools/msvc/Tests/pch.cpp Diff File
add - tools/msvc/Tests/pch.h Diff File
add - tools/msvc/Tests/test.cpp Diff File
mod - tools/msvc/modulelib.vcxproj Diff File
mod - tools/msvc/modulelib.vcxproj.filters Diff File

DarkRadiant: test_setup aa950889

22.08.2020 15:40

greebo


Details Diff
0005200: Rename ApplicationContext interface to IApplicationContext Affected Issues
0005200
mod - .gitignore Diff File
mod - include/imodule.h Diff File
mod - libs/module/ApplicationContextBase.cpp Diff File
mod - libs/module/ApplicationContextBase.h Diff File
mod - libs/module/CoreModule.cpp Diff File
mod - libs/module/CoreModule.h Diff File
mod - plugins/dm.conversation/plugin.cpp Diff File
mod - plugins/dm.difficulty/plugin.cpp Diff File
mod - plugins/dm.editing/plugin.cpp Diff File
mod - plugins/dm.gui/gui/GuiManager.cpp Diff File
mod - plugins/dm.gui/gui/GuiManager.h Diff File
mod - plugins/dm.gui/plugin.cpp Diff File
mod - plugins/dm.objectives/objectives.cpp Diff File
mod - plugins/dm.stimresponse/plugin.cpp Diff File
mod - plugins/script/ScriptingSystem.cpp Diff File
mod - plugins/script/ScriptingSystem.h Diff File
mod - plugins/sound/SoundManager.cpp Diff File
mod - plugins/sound/SoundManager.h Diff File
mod - radiant/RadiantModule.cpp Diff File
mod - radiant/RadiantModule.h Diff File
mod - radiant/camera/GlobalCamera.cpp Diff File
mod - radiant/camera/GlobalCamera.h Diff File
mod - radiant/clipboard/ClipboardModule.cpp Diff File
mod - radiant/clipboard/ClipboardModule.h Diff File
mod - radiant/eventmanager/EventManager.cpp Diff File
mod - radiant/eventmanager/EventManager.h Diff File
mod - radiant/eventmanager/MouseToolManager.cpp Diff File
mod - radiant/eventmanager/MouseToolManager.h Diff File
mod - radiant/map/StartupMapLoader.cpp Diff File
mod - radiant/map/StartupMapLoader.h Diff File
mod - radiant/render/OpenGLModule.cpp Diff File
mod - radiant/render/OpenGLModule.h Diff File
mod - radiant/settings/LocalisationModule.cpp Diff File
mod - radiant/settings/LocalisationModule.h Diff File
mod - radiant/settings/LocalisationProvider.cpp Diff File
mod - radiant/settings/LocalisationProvider.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiant/ui/UserInterfaceModule.h Diff File
mod - radiant/ui/einspector/EntityInspector.cpp Diff File
mod - radiant/ui/einspector/EntityInspector.h Diff File
mod - radiant/ui/filters/FilterUserInterface.cpp Diff File
mod - radiant/ui/filters/FilterUserInterface.h Diff File
mod - radiant/ui/grid/GridUserInterface.cpp Diff File
mod - radiant/ui/grid/GridUserInterface.h Diff File
mod - radiant/ui/mainframe/MainFrame.cpp Diff File
mod - radiant/ui/mainframe/MainFrame.h Diff File
mod - radiant/ui/mainframe/MainFrameLayoutManager.cpp Diff File
mod - radiant/ui/mainframe/MainFrameLayoutManager.h Diff File
mod - radiant/ui/mediabrowser/MediaBrowser.cpp Diff File
mod - radiant/ui/mediabrowser/MediaBrowser.h Diff File
mod - radiant/ui/ortho/OrthoContextMenu.cpp Diff File
mod - radiant/ui/ortho/OrthoContextMenu.h Diff File
mod - radiant/ui/splash/Splash.cpp Diff File
mod - radiant/ui/texturebrowser/TextureBrowserManager.cpp Diff File
mod - radiant/ui/texturebrowser/TextureBrowserManager.h Diff File
mod - radiant/uimanager/UIManager.cpp Diff File
mod - radiant/uimanager/UIManager.h Diff File
mod - radiant/xyview/GlobalXYWnd.cpp Diff File
mod - radiant/xyview/GlobalXYWnd.h Diff File
mod - radiantcore/Radiant.cpp Diff File
mod - radiantcore/Radiant.h Diff File
mod - radiantcore/brush/BrushModule.cpp Diff File
mod - radiantcore/brush/BrushModule.h Diff File
mod - radiantcore/clipper/Clipper.cpp Diff File
mod - radiantcore/clipper/Clipper.h Diff File
mod - radiantcore/commandsystem/CommandSystem.cpp Diff File
mod - radiantcore/commandsystem/CommandSystem.h Diff File
mod - radiantcore/eclass/EClassManager.cpp Diff File
mod - radiantcore/eclass/EClassManager.h Diff File
mod - radiantcore/entity/EntityModule.cpp Diff File
mod - radiantcore/entity/EntityModule.h Diff File
mod - radiantcore/filetypes/FileTypeRegistry.cpp Diff File
mod - radiantcore/filetypes/FileTypeRegistry.h Diff File
mod - radiantcore/filters/BasicFilterSystem.cpp Diff File
mod - radiantcore/filters/BasicFilterSystem.h Diff File
mod - radiantcore/fonts/FontManager.cpp Diff File
mod - radiantcore/fonts/FontManager.h Diff File
mod - radiantcore/grid/GridManager.cpp Diff File
mod - radiantcore/grid/GridManager.h Diff File
mod - radiantcore/imagefile/ImageLoader.cpp Diff File
mod - radiantcore/imagefile/ImageLoader.h Diff File
mod - radiantcore/layers/LayerModule.cpp Diff File
mod - radiantcore/map/AutoSaver.cpp Diff File
mod - radiantcore/map/AutoSaver.h Diff File
mod - radiantcore/map/CounterManager.cpp Diff File
mod - radiantcore/map/CounterManager.h Diff File
mod - radiantcore/map/EditingStopwatch.cpp Diff File
mod - radiantcore/map/EditingStopwatch.h Diff File
mod - radiantcore/map/Map.cpp Diff File
mod - radiantcore/map/Map.h Diff File
mod - radiantcore/map/MapResourceManager.cpp Diff File
mod - radiantcore/map/MapResourceManager.h Diff File
mod - radiantcore/map/PointFile.cpp Diff File
mod - radiantcore/map/PointFile.h Diff File
mod - radiantcore/map/RegionManager.cpp Diff File
mod - radiantcore/map/RegionManager.h Diff File
mod - radiantcore/map/aas/AasFileManager.cpp Diff File
mod - radiantcore/map/aas/AasFileManager.h Diff File
mod - radiantcore/map/aas/Doom3AasFileLoader.cpp Diff File
mod - radiantcore/map/aas/Doom3AasFileLoader.h Diff File
mod - radiantcore/map/format/Doom3MapFormat.cpp Diff File
mod - radiantcore/map/format/Doom3MapFormat.h Diff File
mod - radiantcore/map/format/Doom3PrefabFormat.cpp Diff File
mod - radiantcore/map/format/Doom3PrefabFormat.h Diff File
mod - radiantcore/map/format/MapFormatManager.cpp Diff File
mod - radiantcore/map/format/MapFormatManager.h Diff File
mod - radiantcore/map/format/Quake3MapFormat.cpp Diff File
mod - radiantcore/map/format/Quake3MapFormat.h Diff File
mod - radiantcore/map/format/Quake4MapFormat.cpp Diff File
mod - radiantcore/map/format/Quake4MapFormat.h Diff File
mod - radiantcore/map/format/portable/PortableMapFormat.cpp Diff File
mod - radiantcore/map/format/portable/PortableMapFormat.h Diff File
mod - radiantcore/map/infofile/InfoFileManager.cpp Diff File
mod - radiantcore/map/infofile/InfoFileManager.h Diff File
mod - radiantcore/map/mru/MRU.cpp Diff File
mod - radiantcore/map/mru/MRU.h Diff File
mod - radiantcore/map/namespace/NamespaceFactory.cpp Diff File
mod - radiantcore/map/namespace/NamespaceFactory.h Diff File
mod - radiantcore/model/ModelCache.cpp Diff File
mod - radiantcore/model/ModelCache.h Diff File
mod - radiantcore/model/ModelFormatManager.cpp Diff File
mod - radiantcore/model/ModelFormatManager.h Diff File
mod - radiantcore/model/md5/MD5AnimationCache.cpp Diff File
mod - radiantcore/model/md5/MD5AnimationCache.h Diff File
mod - radiantcore/model/md5/MD5Module.cpp Diff File
mod - radiantcore/model/picomodel/PicoModelModule.h Diff File
mod - radiantcore/modulesystem/ModuleRegistry.cpp Diff File
mod - radiantcore/modulesystem/ModuleRegistry.h Diff File
mod - radiantcore/particles/ParticlesManager.cpp Diff File
mod - radiantcore/particles/ParticlesManager.h Diff File
mod - radiantcore/patch/PatchModule.cpp Diff File
mod - radiantcore/patch/PatchModule.h Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.h Diff File
mod - radiantcore/rendersystem/RenderSystemFactory.cpp Diff File
mod - radiantcore/rendersystem/RenderSystemFactory.h Diff File
mod - radiantcore/rendersystem/debug/SpacePartitionRenderer.cpp Diff File
mod - radiantcore/rendersystem/debug/SpacePartitionRenderer.h Diff File
mod - radiantcore/scenegraph/SceneGraph.cpp Diff File
mod - radiantcore/scenegraph/SceneGraph.h Diff File
mod - radiantcore/scenegraph/SceneGraphFactory.cpp Diff File
mod - radiantcore/scenegraph/SceneGraphFactory.h Diff File
mod - radiantcore/selection/RadiantSelectionSystem.cpp Diff File
mod - radiantcore/selection/RadiantSelectionSystem.h Diff File
mod - radiantcore/selection/group/SelectionGroupModule.cpp Diff File
mod - radiantcore/selection/selectionset/SelectionSetModule.cpp Diff File
mod - radiantcore/selection/shaderclipboard/ShaderClipboard.cpp Diff File
mod - radiantcore/selection/shaderclipboard/ShaderClipboard.h Diff File
mod - radiantcore/settings/GameManager.cpp Diff File
mod - radiantcore/settings/GameManager.h Diff File
mod - radiantcore/settings/PreferenceSystem.cpp Diff File
mod - radiantcore/settings/PreferenceSystem.h Diff File
mod - radiantcore/shaders/Doom3ShaderSystem.cpp Diff File
mod - radiantcore/shaders/Doom3ShaderSystem.h Diff File
mod - radiantcore/skins/Doom3SkinCache.cpp Diff File
mod - radiantcore/skins/Doom3SkinCache.h Diff File
mod - radiantcore/undo/UndoSystem.cpp Diff File
mod - radiantcore/undo/UndoSystem.h Diff File
mod - radiantcore/vfs/Doom3FileSystem.cpp Diff File
mod - radiantcore/vfs/Doom3FileSystem.h Diff File
mod - radiantcore/xmlregistry/XMLRegistry.cpp Diff File
mod - radiantcore/xmlregistry/XMLRegistry.h Diff File
mod - tools/msvc/Tests/RadiantTest.h Diff File

DarkRadiant: test_setup 87c62e8d

22.08.2020 15:44

greebo


Details Diff
0005200: ModuleRegistry takes the IApplicationContext ref in its constructor, to replace the unnecessary raw pointer. Affected Issues
0005200
mod - radiantcore/Radiant.cpp Diff File
mod - radiantcore/modulesystem/ModuleRegistry.cpp Diff File
mod - radiantcore/modulesystem/ModuleRegistry.h Diff File

DarkRadiant: test_setup 9c78af10

22.08.2020 15:56

greebo


Details Diff
0005200: Move wx-specific application setup to ApplicationContext.h class Affected Issues
0005200
mod - libs/module/ApplicationContextBase.cpp Diff File
mod - libs/module/ApplicationContextBase.h Diff File
add - radiant/ApplicationContext.h Diff File
mod - radiant/RadiantApp.cpp Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: test_setup 8bcdc583

22.08.2020 16:49

greebo


Details Diff
0005200: Add test property sheet, some basic folder setup Affected Issues
0005200
add - test/RadiantTest.h Diff File
rm - tools/msvc/Tests/RadiantTest.h Diff
mod - tools/msvc/Tests/Tests.vcxproj Diff File
rm - tools/msvc/Tests/pch.cpp Diff
rm - tools/msvc/Tests/pch.h Diff
add - tools/msvc/properties/Tests.props Diff File

DarkRadiant: test_setup 35ea1684

22.08.2020 18:47

greebo


Details Diff
0005200: Added new methods to filesystem wrappers Affected Issues
0005200
mod - libs/os/dir.h Diff File
mod - libs/os/fs.h Diff File

DarkRadiant: test_setup 874b0b21

22.08.2020 18:47

greebo


Details Diff
0005200: Working on getting the test environment to start up Affected Issues
0005200
mod - libs/module/ApplicationContextBase.h Diff File
mod - test/RadiantTest.h Diff File
add - test/TestContext.h Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File

DarkRadiant: test_setup 6113937e

23.08.2020 08:19

greebo


Details Diff
0005200: Shifting workload from RadiantModule::postModuleInitialisation to other places, such that it can be moved into the core module or replaced entirely. Affected Issues
0005200
mod - radiant/RadiantModule.cpp Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiantcore/modulesystem/ModuleRegistry.cpp Diff File
mod - radiantcore/selection/shaderclipboard/ShaderClipboard.cpp Diff File

DarkRadiant: test_setup f7c6d364

25.08.2020 03:41

greebo


Details Diff
0005200 EditingStopWatch doesn't need to wait for the radiant startup signal to do its job. Affected Issues
0005200
mod - radiantcore/map/EditingStopwatch.cpp Diff File
mod - radiantcore/map/EditingStopwatch.h Diff File

DarkRadiant: test_setup 68fdea2f

27.08.2020 16:59

greebo


Details Diff
0005200: Introduce IMainFrame signal to indicate the main widget is set up, such that modules can register the UI. This will be used to shift UI work from the regular onRadiantStarted() signal. Affected Issues
0005200
mod - include/imainframe.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiant/ui/layers/LayerControlDialog.cpp Diff File
mod - radiant/ui/layers/LayerControlDialog.h Diff File
mod - radiant/ui/mainframe/MainFrame.cpp Diff File
mod - radiant/ui/mainframe/MainFrame.h Diff File

DarkRadiant: test_setup adf93253

27.08.2020 17:10

greebo


Details Diff
0005200: Refactor TDM Editing and GUI plugin to use IMainFrame instead of IRadiant to register UI code Affected Issues
0005200
mod - plugins/dm.editing/AIEditingPanel.cpp Diff File
mod - plugins/dm.editing/AIEditingPanel.h Diff File
mod - plugins/dm.editing/plugin.cpp Diff File
mod - plugins/dm.gui/plugin.cpp Diff File

DarkRadiant: test_setup ae68565c

27.08.2020 17:22

greebo


Details Diff
0005200: Migrate a few onRadiantStarted subscribers to onMainFrameConstructed. Affected Issues
0005200
mod - plugins/script/ScriptingSystem.cpp Diff File
mod - radiant/ui/aas/AasControlDialog.cpp Diff File
mod - radiant/ui/aas/AasControlDialog.h Diff File

DarkRadiant: test_setup 42efa7b0

27.08.2020 17:25

greebo


Details Diff
0005200: Migrate a few onRadiantStarted subscribers to onMainFrameConstructed. Affected Issues
0005200
mod - radiant/ui/ortho/OrthoContextMenu.cpp Diff File
mod - radiant/ui/selectionset/SelectionSetToolmenu.cpp Diff File

DarkRadiant: test_setup 21820e16

27.08.2020 17:33

greebo


Details Diff
0005200: Migrate a few onRadiantStarted subscribers to onMainFrameConstructed. Affected Issues
0005200
mod - radiant/eventmanager/MouseToolManager.cpp Diff File
mod - radiant/eventmanager/MouseToolManager.h Diff File
mod - radiant/ui/einspector/EntityInspector.cpp Diff File
mod - radiant/ui/einspector/EntityInspector.h Diff File
mod - radiant/ui/mediabrowser/MediaBrowser.cpp Diff File
mod - radiant/ui/mediabrowser/MediaBrowser.h Diff File
mod - radiant/uimanager/GroupDialog.cpp Diff File
mod - radiant/uimanager/GroupDialog.h Diff File

DarkRadiant: test_setup 9f252a54

27.08.2020 18:50

greebo


Details Diff
0005200: MainFrame initialises itself now after the radiant module has been started up Affected Issues
0005200
mod - include/imainframe.h Diff File
mod - radiant/RadiantModule.cpp Diff File
mod - radiant/map/StartupMapLoader.cpp Diff File
mod - radiant/map/StartupMapLoader.h Diff File
mod - radiant/ui/mainframe/MainFrame.cpp Diff File
mod - radiant/ui/mainframe/MainFrame.h Diff File
mod - radiantcore/map/Map.cpp Diff File
mod - radiantcore/map/Map.h Diff File

DarkRadiant: test_setup 35a08afd

27.08.2020 18:50

greebo


Details Diff
0005200: Fix crash when "Load last map at startup" is activated Affected Issues
0005200
mod - radiantcore/map/RegionManager.cpp Diff File

DarkRadiant: test_setup ef6aa921

27.08.2020 18:59

greebo


Details Diff
0005200: Fix missing preference entry boxes in PrefDialog Affected Issues
0005200
mod - radiantcore/settings/PreferenceItems.h Diff File

DarkRadiant: test_setup fb3a30e4

28.08.2020 04:35

greebo


Details Diff
0005200: Introduce "UI shutting down" signal to replace most of the UI-related code registering to onRadiantShutdown. Affected Issues
0005200
mod - include/imainframe.h Diff File
mod - radiant/RadiantModule.h Diff File
mod - radiant/ui/mainframe/MainFrame.cpp Diff File
mod - radiant/ui/mainframe/MainFrame.h Diff File

DarkRadiant: test_setup fe4ad333

28.08.2020 04:41

greebo


Details Diff
0005200: Migrate a few onRadiantShutdown() to onMainFrameShuttingDown(). Affected Issues
0005200
mod - radiant/ui/aas/AasControlDialog.cpp Diff File
mod - radiant/ui/aas/AasControlDialog.h Diff File
mod - radiant/ui/einspector/EntityInspector.cpp Diff File
mod - radiant/ui/einspector/EntityInspector.h Diff File

DarkRadiant: test_setup 0d59cc81

28.08.2020 04:52

greebo


Details Diff
0005200: Migrate a few onRadiantShutdown() to onMainFrameShuttingDown(). Affected Issues
0005200
mod - radiant/textool/TexTool.cpp Diff File
mod - radiant/textool/TexTool.h Diff File
mod - radiant/ui/aas/AasControlDialog.cpp Diff File
mod - radiant/ui/einspector/SkinChooser.cpp Diff File
mod - radiant/ui/einspector/SkinChooser.h Diff File
mod - radiant/ui/entitychooser/EntityClassChooser.cpp Diff File
mod - radiant/ui/entitychooser/EntityClassChooser.h Diff File
mod - radiant/ui/entitylist/EntityList.cpp Diff File
mod - radiant/ui/entitylist/EntityList.h Diff File
mod - radiant/ui/layers/LayerControlDialog.cpp Diff File
mod - radiant/ui/layers/LayerControlDialog.h Diff File

DarkRadiant: test_setup 47c4a090

28.08.2020 05:08

greebo


Details Diff
0005200: Migrate a few onRadiantShutdown() to onMainFrameShuttingDown(). Affected Issues
0005200
mod - radiant/ui/lightinspector/LightInspector.cpp Diff File
mod - radiant/ui/lightinspector/LightInspector.h Diff File
mod - radiant/ui/modelselector/ModelSelector.cpp Diff File
mod - radiant/ui/modelselector/ModelSelector.h Diff File
mod - radiant/ui/overlay/Overlay.cpp Diff File
mod - radiant/ui/overlay/Overlay.h Diff File
mod - radiant/ui/overlay/OverlayDialog.cpp Diff File
mod - radiant/ui/overlay/OverlayDialog.h Diff File
mod - radiant/ui/particles/ParticlesChooser.cpp Diff File
mod - radiant/ui/particles/ParticlesChooser.h Diff File
mod - radiant/ui/patch/PatchInspector.cpp Diff File
mod - radiant/ui/patch/PatchInspector.h Diff File
mod - radiant/ui/prefabselector/PrefabSelector.cpp Diff File
mod - radiant/ui/prefabselector/PrefabSelector.h Diff File
mod - radiant/ui/selectionset/SelectionSetToolmenu.cpp Diff File
mod - radiant/ui/selectionset/SelectionSetToolmenu.h Diff File
mod - radiant/ui/surfaceinspector/SurfaceInspector.cpp Diff File
mod - radiant/ui/surfaceinspector/SurfaceInspector.h Diff File
mod - radiant/ui/transform/TransformDialog.cpp Diff File
mod - radiant/ui/transform/TransformDialog.h Diff File

DarkRadiant: test_setup 89cf6c5e

28.08.2020 15:16

greebo


Details Diff
0005200: Migrate more onRadiantShutdown() to onMainFrameShuttingDown(). Affected Issues
0005200
mod - plugins/dm.editing/AIEditingPanel.cpp Diff File
mod - plugins/dm.editing/AIEditingPanel.h Diff File
mod - radiant/RadiantModule.cpp Diff File
mod - radiant/ui/mainframe/MainFrame.cpp Diff File
mod - radiant/ui/mainframe/MainFrame.h Diff File
mod - radiant/uimanager/GroupDialog.cpp Diff File
mod - radiant/uimanager/GroupDialog.h Diff File
mod - radiant/uimanager/StatusBarManager.cpp Diff File
mod - radiant/uimanager/StatusBarManager.h Diff File
mod - radiant/uimanager/UIManager.cpp Diff File
mod - radiantcore/map/MapPositionManager.cpp Diff File
mod - radiantcore/map/MapPositionManager.h Diff File

DarkRadiant: test_setup b78b3923

28.08.2020 16:14

greebo


Details Diff
0005200: Free the map right before the modules are shut down.
Fix a crash in the MediaBrowser due to the ShaderClipboard firing callbacks after the tree view has been destroyed.
Affected Issues
0005200
mod - include/imodule.h Diff File
mod - radiant/ui/mediabrowser/MediaBrowser.cpp Diff File
mod - radiantcore/map/Map.cpp Diff File
mod - radiantcore/map/Map.h Diff File
mod - radiantcore/modulesystem/ModuleRegistry.cpp Diff File
mod - radiantcore/modulesystem/ModuleRegistry.h Diff File

DarkRadiant: test_setup 18061fe7

28.08.2020 17:25

greebo


Details Diff
0005200: Remove the now unneeded Radiant module Affected Issues
0005200
mod - include/iradiant.h Diff File
mod - plugins/dm.editing/plugin.cpp Diff File
mod - plugins/dm.gui/plugin.cpp Diff File
mod - plugins/script/ScriptingSystem.cpp Diff File
mod - radiant/Makefile.am Diff File
rm - radiant/RadiantModule.cpp Diff
rm - radiant/RadiantModule.h Diff
mod - radiant/ui/mainframe/MainFrame.cpp Diff File
mod - radiant/ui/ortho/OrthoContextMenu.cpp Diff File
mod - radiant/uimanager/UIManager.cpp Diff File
mod - radiantcore/map/AutoSaver.cpp Diff File
mod - radiantcore/selection/RadiantSelectionSystem.cpp Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: test_setup 48d2d05c

30.08.2020 04:35

greebo


Details Diff
0005200: Change the IApplicationContext::getLibraryPaths() interface to return a collection of paths. Affected Issues
0005200
mod - include/imodule.h Diff File
mod - libs/module/ApplicationContextBase.cpp Diff File
mod - libs/module/ApplicationContextBase.h Diff File
mod - libs/module/CoreModule.cpp Diff File
mod - libs/module/CoreModule.h Diff File
mod - libs/module/DynamicLibrary.h Diff File
mod - radiantcore/modulesystem/ModuleRegistry.cpp Diff File

DarkRadiant: test_setup 19d2192b

30.08.2020 05:04

greebo


Details Diff
0005200: Move the core module to the modules/ folder. Let the application context produce the list of library paths to search.
Fix a warning in ApplicationContextBase about converting wide strings to narrow ones.
Affected Issues
0005200
mod - libs/module/ApplicationContextBase.cpp Diff File
mod - libs/module/ApplicationContextBase.h Diff File
mod - radiantcore/Makefile.am Diff File
mod - radiantcore/modulesystem/ModuleLoader.cpp Diff File
mod - radiantcore/modulesystem/ModuleLoader.h Diff File
mod - radiantcore/modulesystem/ModuleRegistry.cpp Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File

DarkRadiant: test_setup 6f6e901c

30.08.2020 05:59

greebo


Details Diff
0005200: Don't load plugins/ in the test context Affected Issues
0005200
mod - libs/module/ApplicationContextBase.cpp Diff File
mod - libs/module/ApplicationContextBase.h Diff File
mod - test/TestContext.h Diff File

DarkRadiant: test_setup 60ebd0b9

30.08.2020 05:59

greebo


Details Diff
0005200: Remove EventManager dependency from BrushModule Affected Issues
0005200
mod - radiantcore/brush/BrushModule.cpp Diff File

DarkRadiant: test_setup 8d17221e

13.09.2020 14:41

greebo


Details Diff
0005200: Move UI-related toggle state code from RadiantSelectionSystem to the UI module.
Fix a bug in RadiantSelectionSystem::getManipulatorIdForType.
Affected Issues
0005200
mod - include/iselection.h Diff File
add - radiant/ui/ManipulatorToggle.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiant/ui/UserInterfaceModule.h Diff File
mod - radiantcore/selection/RadiantSelectionSystem.cpp Diff File
mod - radiantcore/selection/RadiantSelectionSystem.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: test_setup adb2af09

13.09.2020 16:07

greebo


Details Diff
0005200: Move Selection and ComponentMode toggle state management to a UI helper class Affected Issues
0005200
mod - include/iselection.h Diff File
add - radiant/ui/SelectionModeToggle.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiant/ui/UserInterfaceModule.h Diff File
mod - radiantcore/selection/RadiantSelectionSystem.cpp Diff File
mod - radiantcore/selection/RadiantSelectionSystem.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: test_setup 5a228f07

13.09.2020 16:11

greebo


Details Diff
0005200: Move registry toggle registration to UI module Affected Issues
0005200
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiantcore/brush/BrushModule.cpp Diff File

DarkRadiant: test_setup cf974072

14.09.2020 19:05

greebo


Details Diff
0005200: Introduce separate classes to hold and create the shared GL context, respectively. Affected Issues
0005200
mod - include/igl.h Diff File
mod - radiantcore/Makefile.am Diff File
add - radiantcore/rendersystem/SharedOpenGLContextModule.cpp Diff File
add - radiantcore/rendersystem/SharedOpenGLContextModule.h Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj.filters Diff File

DarkRadiant: test_setup 564f6c35

16.09.2020 17:03

greebo


Details Diff
0005200: Introduce WxGLWidgetManager which acts as global GL widget registration instance. It will create the shared wxGLContext and send it to the GL context holder. Affected Issues
0005200
add - include/iwxgl.h Diff File
mod - radiant/Makefile.am Diff File
add - radiant/ui/gl/WxGLWidgetManager.cpp Diff File
add - radiant/ui/gl/WxGLWidgetManager.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File
mod - tools/msvc/include.vcxproj Diff File

DarkRadiant: test_setup 63119595

16.09.2020 17:51

greebo


Details Diff
0005200: Move context setup code to wxutil::GLContext. Remove widget registration methods from OpenGLModule. Affected Issues
0005200
mod - include/igl.h Diff File
mod - include/iwxgl.h Diff File
add - libs/wxutil/GLContext.h Diff File
mod - libs/wxutil/GLWidget.cpp Diff File
mod - radiant/map/StartupMapLoader.cpp Diff File
mod - radiant/render/OpenGLModule.cpp Diff File
mod - radiant/render/OpenGLModule.h Diff File
mod - radiant/ui/gl/WxGLWidgetManager.cpp Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp Diff File
mod - tools/msvc/wxutillib.vcxproj Diff File
mod - tools/msvc/wxutillib.vcxproj.filters Diff File

DarkRadiant: test_setup a2e9ab6c

17.09.2020 15:49

greebo


Details Diff
0005200: OpenGLRenderSystem will listen to shared context created/destroyed signal on its own. Affected Issues
0005200
mod - radiant/render/OpenGLModule.cpp Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.h Diff File

DarkRadiant: test_setup bcbc5deb

17.09.2020 17:17

greebo


Details Diff
0005200: Separate the ScriptingSystem UI, move files to radiant UI binary.
Makefile should ideally skipping those files if scripting plugin is not compiled.
Affected Issues
0005200
mod - include/iscript.h Diff File
mod - plugins/script/Makefile.am Diff File
mod - plugins/script/ScriptCommand.h Diff File
mod - plugins/script/ScriptingSystem.cpp Diff File
mod - plugins/script/ScriptingSystem.h Diff File
mod - radiant/Makefile.am Diff File
add - radiant/ui/script/ScriptUserInterfaceModule.cpp Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File
mod - tools/msvc/script.vcxproj Diff File
mod - tools/msvc/script.vcxproj.filters Diff File

DarkRadiant: test_setup 439e6f1f

17.09.2020 17:25

greebo


Details Diff
0005200: MouseToolManager is not required by the SelectionSystem Affected Issues
0005200
mod - radiantcore/selection/RadiantSelectionSystem.cpp Diff File

DarkRadiant: test_setup b375759b

17.09.2020 17:38

greebo


Details Diff
0005200: ScriptCommands don't need to register the command to the EventManager.
Disable the sound module in the unit test environment.
Affected Issues
0005200
mod - plugins/script/ScriptCommand.cpp Diff File
mod - test/RadiantTest.h Diff File

Issue History

Date Modified Username Field Change
28.03.2020 09:04 greebo New Issue
28.03.2020 09:04 greebo Status new => acknowledged
27.04.2020 11:13 greebo Relationship added related to 0005231
22.08.2020 16:42 greebo Changeset attached => DarkRadiant test_setup 85ba6232
22.08.2020 16:42 greebo Changeset attached => DarkRadiant test_setup aa950889
22.08.2020 16:42 greebo Changeset attached => DarkRadiant test_setup 87c62e8d
22.08.2020 16:42 greebo Changeset attached => DarkRadiant test_setup 9c78af10
22.08.2020 18:47 greebo Assigned To => greebo
22.08.2020 18:47 greebo Status acknowledged => assigned
27.08.2020 17:00 greebo Changeset attached => DarkRadiant test_setup 8bcdc583
27.08.2020 17:00 greebo Changeset attached => DarkRadiant test_setup 35ea1684
27.08.2020 17:00 greebo Changeset attached => DarkRadiant test_setup 874b0b21
27.08.2020 17:00 greebo Changeset attached => DarkRadiant test_setup 6113937e
27.08.2020 17:00 greebo Changeset attached => DarkRadiant test_setup f7c6d364
27.08.2020 17:00 greebo Changeset attached => DarkRadiant test_setup 68fdea2f
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup adf93253
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup ae68565c
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup 42efa7b0
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup 21820e16
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup 9f252a54
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup 35a08afd
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup ef6aa921
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup fb3a30e4
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup fe4ad333
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup 0d59cc81
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup 47c4a090
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup 89cf6c5e
28.08.2020 16:21 greebo Changeset attached => DarkRadiant test_setup b78b3923
01.09.2020 05:20 greebo Changeset attached => DarkRadiant test_setup 18061fe7
01.09.2020 05:20 greebo Changeset attached => DarkRadiant test_setup 48d2d05c
01.09.2020 05:20 greebo Changeset attached => DarkRadiant test_setup 19d2192b
01.09.2020 05:21 greebo Changeset attached => DarkRadiant test_setup 6f6e901c
01.09.2020 05:21 greebo Changeset attached => DarkRadiant test_setup 60ebd0b9
14.09.2020 16:22 greebo Changeset attached => DarkRadiant test_setup 8d17221e
14.09.2020 16:22 greebo Changeset attached => DarkRadiant test_setup adb2af09
14.09.2020 16:22 greebo Changeset attached => DarkRadiant test_setup 5a228f07
16.09.2020 18:48 greebo Changeset attached => DarkRadiant test_setup cf974072
16.09.2020 18:48 greebo Changeset attached => DarkRadiant test_setup 564f6c35
16.09.2020 18:48 greebo Changeset attached => DarkRadiant test_setup 63119595
17.09.2020 17:38 greebo Changeset attached => DarkRadiant test_setup a2e9ab6c
17.09.2020 17:38 greebo Changeset attached => DarkRadiant test_setup bcbc5deb
17.09.2020 17:38 greebo Changeset attached => DarkRadiant test_setup 439e6f1f
17.09.2020 17:38 greebo Changeset attached => DarkRadiant test_setup b375759b
17.09.2020 17:57 greebo Note Added: 0012776
17.09.2020 18:01 greebo Status assigned => resolved
17.09.2020 18:01 greebo Resolution open => fixed
17.09.2020 18:01 greebo Fixed in Version => 2.10.0
17.09.2020 18:01 greebo Note Added: 0012777
29.09.2020 16:46 greebo Fixed in Version 2.10.0 => 2.9.0
29.09.2020 16:47 greebo Target Version => 2.9.0
18.10.2020 13:40 greebo Relationship added related to 0005361
05.02.2021 11:29 greebo Status resolved => closed