@UnstableApi
class FakeDataSet

Known direct subclasses
FakeAdaptiveDataSet

Fake data set emulating the data of an adaptive media source.


Collection of FakeData to be served by a FakeDataSource.

Multiple fake data can be defined by setData and newData methods. It's also possible to define a default data by newDefaultData.

newData and newDefaultData return a instance which can be used to define specific results during read calls.

The data that will be read from the source can be constructed by calling appendReadData Calls to read will not span the boundaries between arrays passed to successive calls, and hence the boundaries control the positions at which read requests to the source may only be partially satisfied.

Errors can be inserted by calling appendReadError. An inserted error will be thrown from the first call to read that attempts to read from the corresponding position, and from all subsequent calls to read until the source is closed. If the source is closed and re-opened having encountered an error, that error will not be thrown again.

Actions are inserted by calling appendReadAction. An actions is triggered when the reading reaches action's position. This can be used to make sure the code is in a certain state while testing.

Example usage:

  // Create a FakeDataSource then add default data and two FakeData
  // "test_file" throws an IOException when tried to be read until closed and reopened.
  FakeDataSource fakeDataSource = new FakeDataSource();
  fakeDataSource.getDataSet()
      .newDefaultData()
        .appendReadData(defaultData)
        .endData()
      .setData("http://1", data1)
      .newData("test_file")
        .appendReadError(new IOException())
        .appendReadData(data2)
        .endData();

Summary

Nested types

Container of fake data to be served by a FakeDataSource.

A segment of FakeData.

Public constructors

Public functions

ArrayList<FakeDataSet.FakeData!>!

Returns a list of all data including defaultData.

FakeDataSet.FakeData?
getData(uri: String!)

Returns the data for the given uri, or defaultData if no data is set.

FakeDataSet.FakeData?
getData(uri: Uri!)

Returns the data for the given uri, or defaultData if no data is set.

FakeDataSet.FakeData!
newData(uri: String!)

Returns a new FakeData with the given uri.

FakeDataSet.FakeData!
newData(uri: Uri!)

Returns a new FakeData with the given uri.

FakeDataSet.FakeData!

Sets the default data, overwrites if there is one already.

FakeDataSet!
setData(uri: String!, data: ByteArray!)

Sets the given data for the given uri.

FakeDataSet!
setData(uri: Uri!, data: ByteArray!)

Sets the given data for the given uri.

FakeDataSet!
setRandomData(uri: String!, length: Int)

Sets random data with the given length for the given uri.

FakeDataSet!
setRandomData(uri: Uri!, length: Int)

Sets random data with the given length for the given uri.

Public constructors

FakeDataSet

FakeDataSet()

Public functions

getAllData

fun getAllData(): ArrayList<FakeDataSet.FakeData!>!

Returns a list of all data including defaultData.

getData

fun getData(uri: String!): FakeDataSet.FakeData?

Returns the data for the given uri, or defaultData if no data is set.

getData

fun getData(uri: Uri!): FakeDataSet.FakeData?

Returns the data for the given uri, or defaultData if no data is set.

newData

fun newData(uri: String!): FakeDataSet.FakeData!

Returns a new FakeData with the given uri.

newData

fun newData(uri: Uri!): FakeDataSet.FakeData!

Returns a new FakeData with the given uri.

newDefaultData

fun newDefaultData(): FakeDataSet.FakeData!

Sets the default data, overwrites if there is one already.

setData

fun setData(uri: String!, data: ByteArray!): FakeDataSet!

Sets the given data for the given uri.

setData

fun setData(uri: Uri!, data: ByteArray!): FakeDataSet!

Sets the given data for the given uri.

setRandomData

fun setRandomData(uri: String!, length: Int): FakeDataSet!

Sets random data with the given length for the given uri.

setRandomData

fun setRandomData(uri: Uri!, length: Int): FakeDataSet!

Sets random data with the given length for the given uri.