pub struct ManagerProxy { /* private fields */ }

Implementations§

source§

impl ManagerProxy

source

pub fn new(channel: AsyncChannel) -> Self

Create a new Proxy for fuchsia.fuzzer/Manager.

source

pub fn take_event_stream(&self) -> ManagerEventStream

Get a Stream of events from the remote end of the protocol.

§Panics

Panics if the event stream was already taken.

source

pub fn connect( &self, fuzzer_url: &str, controller: ServerEnd<ControllerMarker> ) -> QueryResponseFut<ManagerConnectResult>

Connects to a fuzzer that implements the fuchsia.fuzzer/Controller protocol.

If the fuzzer is not currently running, the fuzz_manager will first start it (via the test_manager) before proceeding. The fuzz_manager sends the controller on to the fuzz-registry, which contains the ControllerProviders that can fulfill the connection request.

See fuchsia.test.manager/LaunchError for details on ways test_manager can fail.

  • request fuzzer_url the package URL for the fuzzer.
  • request controller the connection from the client.
  • error one of the following:
    • ZX_ERR_NO_RESOURCES if test_manager needs resources that are unavailable.
    • ZX_ERR_NOT_FOUND if the fuzzer URL is not recognized by test_manager.
    • ZX_ERR_INVALID_ARGS if test_manager reports invalid arguments.
    • ZX_ERR_NOT_SUPPORTED if test_manager cannot connect to the test suite.
    • ZX_ERR_INTERNAL if test_manager encountered some other, unspecified failure.
    • ZX_ERR_TIMED_OUT if the fuzzer is not present or added to fuzz-registry after starting.
    • ZX_ERR_SHOULD_WAIT if another fuzzer is still starting.
source

pub fn get_output( &self, fuzzer_url: &str, output: TestOutput, socket: Socket ) -> QueryResponseFut<ManagerGetOutputResult>

Forwards the fuzzer’s output of the given type to the provided socket.

If this method is called multiple times for the same output type, the socket from the subsequent call replaces the socket from the earlier call, which is closed.

  • request fuzzer_url the package URL for the fuzzer.
  • request output the type of the output stream to forward.
  • request socket a socket to forward the output stream to.
  • error one of the following:
    • ZX_ERR_INVALID_ARGS if the URL cannot be parsed.
    • ZX_ERR_NOT_FOUND if the fuzzer URL was not recognized by test_manager.
    • ZX_ERR_BAD_STATE if the fuzzer is not connected.
source

pub fn stop(&self, fuzzer_url: &str) -> QueryResponseFut<ManagerStopResult>

Stops the associated fuzzer immediately, ending any workflows in progress.

  • request fuzzer_url the package URL for the fuzzer.
  • error ZX_ERR_NOT_FOUND if no fuzzer was active with the given URL.

Trait Implementations§

source§

impl Clone for ManagerProxy

source§

fn clone(&self) -> ManagerProxy

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ManagerProxy

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl ManagerProxyInterface for ManagerProxy

source§

impl Proxy for ManagerProxy

§

type Protocol = ManagerMarker

The protocol which this Proxy controls.
source§

fn from_channel(inner: AsyncChannel) -> Self

Create a proxy over the given channel.
source§

fn into_channel(self) -> Result<AsyncChannel, Self>

Attempt to convert the proxy back into a channel. Read more
source§

fn as_channel(&self) -> &AsyncChannel

Get a reference to the proxy’s underlying channel. Read more
source§

fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>

Attempt to convert the proxy back into a client end. Read more
source§

fn is_closed(&self) -> bool

Returns true if the proxy has received the PEER_CLOSED signal.
source§

fn on_closed(&self) -> OnSignals<'_>

Returns a future that completes when the proxy receives the PEER_CLOSED signal.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> Encode<Ambiguous1> for T

source§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
source§

impl<T> Encode<Ambiguous2> for T

source§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more