mirror of https://github.com/aseprite/aseprite.git
				
				
				
			
		
			
				
	
	
		
			67 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Lua
		
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Lua
		
	
	
	
| -- Copyright (C) 2022  Igara Studio S.A.
 | |
| --
 | |
| -- This file is released under the terms of the MIT license.
 | |
| -- Read LICENSE.txt for more information.
 | |
| 
 | |
| local fn = '_test_modified.png'
 | |
| 
 | |
| do
 | |
|   local doc = Sprite(2, 2)
 | |
| 
 | |
|   -- New sprites are created without modifications (can be closed
 | |
|   -- without warning)
 | |
|   assert(not doc.isModified)
 | |
| 
 | |
|   doc.width = 3
 | |
|   assert(doc.isModified)
 | |
|   app.undo()
 | |
|   assert(not doc.isModified)
 | |
|   app.redo()
 | |
|   assert(doc.isModified)
 | |
| 
 | |
|   -- Not modified after it's saved
 | |
|   doc:saveAs(fn)
 | |
|   assert(not doc.isModified)
 | |
| 
 | |
|   -- Modified if we undo the saved state
 | |
|   app.undo()
 | |
|   assert(doc.width == 2)
 | |
|   assert(doc.isModified)
 | |
|   app.redo()
 | |
|   assert(doc.width == 3)
 | |
|   assert(not doc.isModified)
 | |
| 
 | |
|   -- Selection changes shouldn't change the modified flag
 | |
|   app.command.MaskAll()
 | |
|   assert(not doc.isModified)
 | |
|   app.command.DeselectMask()
 | |
|   assert(not doc.isModified)
 | |
|   doc:saveAs(fn)
 | |
|   assert(not doc.isModified)
 | |
|   app.undo()                    -- Undo Deselect
 | |
|   assert(not doc.isModified)
 | |
|   app.undo()                    -- Undo Select All
 | |
|   assert(not doc.isModified)
 | |
|   assert(doc.width == 3)
 | |
|   app.undo()                    -- Undo size change
 | |
|   assert(doc.isModified)
 | |
|   assert(doc.width == 2)
 | |
| end
 | |
| 
 | |
| do
 | |
|   local doc = Sprite{ fromFile=fn }
 | |
| 
 | |
|   -- Loaded sprites are created without modifications (can be closed
 | |
|   -- without warning)
 | |
|   assert(not doc.isModified)
 | |
| 
 | |
|   app.command.MaskAll()
 | |
|   assert(not doc.isModified)
 | |
|   doc:saveAs(fn)
 | |
|   assert(not doc.isModified)
 | |
|   app.undo()
 | |
|   assert(not doc.isModified)
 | |
|   app.redo()
 | |
|   assert(not doc.isModified)
 | |
| end
 |