71 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
		
		
			
		
	
	
			71 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
|  | package core_test | ||
|  | 
 | ||
|  | import ( | ||
|  | 	"testing" | ||
|  | 
 | ||
|  | 	"github.com/pocketbase/pocketbase/core" | ||
|  | ) | ||
|  | 
 | ||
|  | func TestBaseModel(t *testing.T) { | ||
|  | 	id := "test_id" | ||
|  | 
 | ||
|  | 	m := core.BaseModel{Id: id} | ||
|  | 
 | ||
|  | 	if m.PK() != id { | ||
|  | 		t.Fatalf("[before PostScan] Expected PK %q, got %q", "", m.PK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if m.LastSavedPK() != "" { | ||
|  | 		t.Fatalf("[before PostScan] Expected LastSavedPK %q, got %q", "", m.LastSavedPK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if !m.IsNew() { | ||
|  | 		t.Fatalf("[before PostScan] Expected IsNew %v, got %v", true, m.IsNew()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if err := m.PostScan(); err != nil { | ||
|  | 		t.Fatal(err) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if m.PK() != id { | ||
|  | 		t.Fatalf("[after PostScan] Expected PK %q, got %q", "", m.PK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if m.LastSavedPK() != id { | ||
|  | 		t.Fatalf("[after PostScan] Expected LastSavedPK %q, got %q", id, m.LastSavedPK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if m.IsNew() { | ||
|  | 		t.Fatalf("[after PostScan] Expected IsNew %v, got %v", false, m.IsNew()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	m.MarkAsNew() | ||
|  | 
 | ||
|  | 	if m.PK() != id { | ||
|  | 		t.Fatalf("[after MarkAsNew] Expected PK %q, got %q", id, m.PK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if m.LastSavedPK() != "" { | ||
|  | 		t.Fatalf("[after MarkAsNew] Expected LastSavedPK %q, got %q", "", m.LastSavedPK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if !m.IsNew() { | ||
|  | 		t.Fatalf("[after MarkAsNew] Expected IsNew %v, got %v", true, m.IsNew()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	// mark as not new without id
 | ||
|  | 	m.MarkAsNotNew() | ||
|  | 
 | ||
|  | 	if m.PK() != id { | ||
|  | 		t.Fatalf("[after MarkAsNotNew] Expected PK %q, got %q", id, m.PK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if m.LastSavedPK() != id { | ||
|  | 		t.Fatalf("[after MarkAsNotNew] Expected LastSavedPK %q, got %q", id, m.LastSavedPK()) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if m.IsNew() { | ||
|  | 		t.Fatalf("[after MarkAsNotNew] Expected IsNew %v, got %v", false, m.IsNew()) | ||
|  | 	} | ||
|  | } |