- Pretty much completed set of examples and tests on 'pool' APIs implemented so far
This commit is contained in:
		
							parent
							
								
									c1288a9a2e
								
							
						
					
					
						commit
						f7f90fe57f
					
				
							
								
								
									
										7
									
								
								zpool.go
								
								
								
								
							
							
						
						
									
										7
									
								
								zpool.go
								
								
								
								
							| 
						 | 
					@ -136,6 +136,13 @@ func PoolPropertyToName(p PoolProp) (name string) {
 | 
				
			||||||
	return
 | 
						return
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//  Map POOL STATE to string.
 | 
				
			||||||
 | 
					func PoolStateToName(state PoolState) (name string) {
 | 
				
			||||||
 | 
						ps := C.pool_state_t(state)
 | 
				
			||||||
 | 
						name = C.GoString(C.zpool_pool_state_to_name(ps))
 | 
				
			||||||
 | 
						return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Re-read ZFS pool properties and features, refresh Pool.Properties and
 | 
					// Re-read ZFS pool properties and features, refresh Pool.Properties and
 | 
				
			||||||
// Pool.Features map
 | 
					// Pool.Features map
 | 
				
			||||||
func (pool *Pool) ReloadProperties() (err error) {
 | 
					func (pool *Pool) ReloadProperties() (err error) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -227,6 +227,17 @@ func zpoolTestPoolProp(t *testing.T) {
 | 
				
			||||||
			return
 | 
								return
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// this test pool should not be bootable
 | 
				
			||||||
 | 
							prop, err := pool.GetProperty(zfs.PoolPropBootfs)
 | 
				
			||||||
 | 
							if err != nil {
 | 
				
			||||||
 | 
								t.Error(err)
 | 
				
			||||||
 | 
								return
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							if prop.Value != "-" {
 | 
				
			||||||
 | 
								t.Errorf("Failed at bootable fs property evaluation")
 | 
				
			||||||
 | 
								return
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// fetch all properties
 | 
							// fetch all properties
 | 
				
			||||||
		if err = pool.ReloadProperties(); err != nil {
 | 
							if err = pool.ReloadProperties(); err != nil {
 | 
				
			||||||
			t.Error(err)
 | 
								t.Error(err)
 | 
				
			||||||
| 
						 | 
					@ -253,10 +264,12 @@ func zpoolTestPoolStatusAndState(t *testing.T) {
 | 
				
			||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if _, err = pool.State(); err != nil {
 | 
						var pstate zfs.PoolState
 | 
				
			||||||
 | 
						if pstate, err = pool.State(); err != nil {
 | 
				
			||||||
		t.Error(err.Error())
 | 
							t.Error(err.Error())
 | 
				
			||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						println("POOL", TST_POOL_NAME, "state:", zfs.PoolStateToName(pstate))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	println("PASS\n")
 | 
						println("PASS\n")
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -412,3 +425,16 @@ func ExamplePool_ExportForce() {
 | 
				
			||||||
		panic(err)
 | 
							panic(err)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func ExamplePool_State() {
 | 
				
			||||||
 | 
						p, err := zfs.PoolOpen("TESTPOOL")
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							panic(err)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						defer p.Close()
 | 
				
			||||||
 | 
						pstate, err := p.State()
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							panic(err)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						println("POOL TESTPOOL state:", zfs.PoolStateToName(pstate))
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue