MCPcopy Create free account
hub / github.com/FreeCAD/FreeCAD / TEST_F

Function TEST_F

tests/src/Mod/Material/App/TestMaterialFilter.cpp:129–261  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

127};
128
129TEST_F(TestMaterialFilter, TestFilters)
130{
131 ASSERT_NE(_modelManager, nullptr);
132
133 // First check that our materials are loading
134 auto material = _materialManager->getMaterial(QString::fromLatin1(UUIDAluminumAppearance));
135 ASSERT_TRUE(material);
136 ASSERT_EQ(material->getName(), QStringLiteral("TestAluminumAppearance"));
137 ASSERT_EQ(material->getUUID(), QString::fromLatin1(UUIDAluminumAppearance));
138
139 material = _materialManager->getMaterial(QString::fromLatin1(UUIDAluminumMixed));
140 ASSERT_TRUE(material);
141 ASSERT_EQ(material->getName(), QStringLiteral("TestAluminumMixed"));
142 ASSERT_EQ(material->getUUID(), QString::fromLatin1(UUIDAluminumMixed));
143
144 material = _materialManager->getMaterial(QString::fromLatin1(UUIDAluminumPhysical));
145 ASSERT_TRUE(material);
146 ASSERT_EQ(material->getName(), QStringLiteral("TestAluminumPhysical"));
147 ASSERT_EQ(material->getUUID(), QString::fromLatin1(UUIDAluminumPhysical));
148
149 material = _materialManager->getMaterial(QString::fromLatin1(UUIDBrassAppearance));
150 ASSERT_TRUE(material);
151 ASSERT_EQ(material->getName(), QStringLiteral("TestBrassAppearance"));
152 ASSERT_EQ(material->getUUID(), QString::fromLatin1(UUIDBrassAppearance));
153
154 material = _materialManager->getMaterialByPath(QStringLiteral("TestAcrylicLegacy.FCMat"),
155 QStringLiteral("Custom"));
156 ASSERT_TRUE(material);
157 ASSERT_EQ(material->getName(), QStringLiteral("TestAcrylicLegacy"));
158 ASSERT_EQ(material->getUUID().size(), 36); // We don't know the UUID
159
160 // Create an empty filter
161 Materials::MaterialFilter filter;
162 Materials::MaterialFilterOptions options;
163 ASSERT_TRUE(_library);
164
165 auto tree = _materialManager->getMaterialTree(*_library, filter, options);
166 ASSERT_EQ(tree->size(), 4);
167
168 options.setIncludeLegacy(true);
169 tree = _materialManager->getMaterialTree(*_library, filter, options);
170 ASSERT_EQ(tree->size(), 5);
171
172 // Create a basic rendering filter
173 filter.setName(QStringLiteral("Basic Appearance"));
174 filter.addRequiredComplete(Materials::ModelUUIDs::ModelUUID_Rendering_Basic);
175 options.setIncludeLegacy(false);
176
177 tree = _materialManager->getMaterialTree(*_library, filter, options);
178 ASSERT_EQ(tree->size(), 3);
179
180 options.setIncludeLegacy(true);
181 tree = _materialManager->getMaterialTree(*_library, filter, options);
182 ASSERT_EQ(tree->size(), 3);
183
184 // Create an advanced rendering filter
185 filter.clear();
186 filter.setName(QStringLiteral("Advanced Appearance"));

Callers

nothing calls this directly

Calls 11

addRequiredCompleteMethod · 0.80
addRequiredMethod · 0.80
getMaterialMethod · 0.45
getNameMethod · 0.45
getUUIDMethod · 0.45
getMaterialByPathMethod · 0.45
sizeMethod · 0.45
getMaterialTreeMethod · 0.45
setIncludeLegacyMethod · 0.45
setNameMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected