package openwrt type UCI struct { exec Executor } func NewUCI() *UCI { exec := &localExecutor{} return &UCI{exec} } func NewUCIWithExecutor(exec Executor) *UCI { return &UCI{exec} } func (u *UCI) Add(module string, name string) *Action { commandRes := u.exec.Run("uci add", module, name) return &Action{commandRes} }