@@ -248,6 +248,62 @@ describe("TestItemParse", function()
248248 assert .are .equals (" +44 to Spirit" , item .explicitModLines [1 ].line )
249249 end )
250250
251+ it (" Crafted affixes matching base implicits stay explicit" , function ()
252+ local item = new (" Item" , [[
253+ Rarity: Rare
254+ New Item
255+ Gemini Crossbow
256+ Crafted: true
257+ Prefix: None
258+ Prefix: None
259+ Prefix: None
260+ Suffix: {range:0}AdditionalAmmo1
261+ Suffix: None
262+ Suffix: None
263+ Implicits: 1
264+ Loads an additional bolt
265+ ]] )
266+
267+ item :Craft ()
268+ assert .are .equals (1 , # item .implicitModLines )
269+ assert .are .equals (" Loads an additional bolt" , item .implicitModLines [1 ].line )
270+ assert .are .equals (1 , # item .explicitModLines )
271+ assert .are .equals (" Loads an additional bolt" , item .explicitModLines [1 ].line )
272+
273+ item .suffixes [1 ].range = 0.2
274+ item :Craft ()
275+ assert .are .equals (1 , # item .implicitModLines )
276+ assert .are .equals (1 , # item .explicitModLines )
277+ assert .are .equals (" Loads an additional bolt" , item .explicitModLines [1 ].line )
278+ end )
279+
280+ it (" Pasted affixes matching base implicits stay explicit" , function ()
281+ local item = new (" Item" , [[
282+ Item Class: Crossbows
283+ Rarity: Rare
284+ New Item
285+ Gemini Crossbow
286+ --------
287+ Physical Damage: 28-112
288+ Critical Hit Chance: 5.00%
289+ Attacks per Second: 1.60
290+ Reload Time: 1.10
291+ --------
292+ Requires: Level 78, 89 Str, 89 Dex
293+ --------
294+ Item Level: 82
295+ --------
296+ Loads an additional bolt (implicit)
297+ --------
298+ Loads an additional bolt
299+ ]] )
300+
301+ assert .are .equals (1 , # item .implicitModLines )
302+ assert .are .equals (" Loads an additional bolt" , item .implicitModLines [1 ].line )
303+ assert .are .equals (1 , # item .explicitModLines )
304+ assert .are .equals (" Loads an additional bolt" , item .explicitModLines [1 ].line )
305+ end )
306+
251307 -- TODO: POB2 Leagues?
252308 -- it("League", function()
253309 -- end)
0 commit comments