# Atoms

Summary:[Methods](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#)  

# Atoms

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

`
public

final

class
Atoms
`  
`

extends `[Object](https://developer.android.com/reference/java/lang/Object.html)`


``


`

|---|-----------------------------------------------|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) ||
| ↳ | android.support.test.espresso.web.model.Atoms |

<br />

*** ** * ** ***

Utility class wrapping simple and more commonly used atoms.

## Summary

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ### Public methods                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` static <E> `[Transformer](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)`<`[Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)`, E>` | ` `[castOrDie](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#castOrDie(java.lang.Class<E>))`(`[Class](https://developer.android.com/reference/java/lang/Class.html)`<E> clazz) ` Creates a transformer which will convert an Evaluation to a given type (or die trying).                                                                                                                                                                                                                                                                                                                                                                                                     |
| ` static `[Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[String](https://developer.android.com/reference/java/lang/String.html)`>`                                                                        | ` `[getCurrentUrl](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#getCurrentUrl())`() ` Returns the value of document.location.href.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ` static `[Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[String](https://developer.android.com/reference/java/lang/String.html)`>`                                                                        | ` `[getTitle](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#getTitle())`() ` Returns the value of document.title.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ` static `[Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)`>`                                       | ` `[script](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#script(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` script) ` Creates an atom that will execute the provided script and return an evaluation object.                                                                                                                                                                                                                                                                                                                                                                                                              |
| ` static <O> `[Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<O>`                                                                                                                                            | ` `[script](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#script(java.lang.String, android.support.test.espresso.web.model.TransformingAtom.Transformer<android.support.test.espresso.web.model.Evaluation, O>))`(`[String](https://developer.android.com/reference/java/lang/String.html)` script, `[Transformer](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)`<`[Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)`, O> transformer) ` Creates an atom that will execute the provided script and return an object created by the given transformer. |
| ` static `[Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)`>`                                       | ` `[scriptWithArgs](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#scriptWithArgs(java.lang.String, java.util.List<java.lang.Object>))`(`[String](https://developer.android.com/reference/java/lang/String.html)` script, `[List](https://developer.android.com/reference/java/util/List.html)`<`[Object](https://developer.android.com/reference/java/lang/Object.html)`> args) ` Creates an atom that will execute the provided script with the given non-contextual arguments.                                                                                                                                                                                             |
| ` static <I, O> `[Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<O>`                                                                                                                                         | ` `[transform](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#transform(android.support.test.espresso.web.model.Atom<I>, android.support.test.espresso.web.model.TransformingAtom.Transformer<I, O>))`(`[Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<I> in, `[Transformer](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)`<I, O> transformer) ` Creates an atom which wraps the input atom and transforms its output using the given transformer.                                                                                                             |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms#)From class` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object.html)` ` |-------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object.html)          | ` clone() `                                                                                | | ` boolean`                                                                          | ` equals(`[Object](https://developer.android.com/reference/java/lang/Object.html)` arg0) ` | | ` void`                                                                             | ` finalize() `                                                                             | | ` final `[Class](https://developer.android.com/reference/java/lang/Class.html)`<?>` | ` getClass() `                                                                             | | ` int`                                                                              | ` hashCode() `                                                                             | | ` final void`                                                                       | ` notify() `                                                                               | | ` final void`                                                                       | ` notifyAll() `                                                                            | | ` `[String](https://developer.android.com/reference/java/lang/String.html)          | ` toString() `                                                                             | | ` final void`                                                                       | ` wait(long arg0, int arg1) `                                                              | | ` final void`                                                                       | ` wait(long arg0) `                                                                        | | ` final void`                                                                       | ` wait() `                                                                                 | ||

## Public methods

### castOrDie

```
Transformer<Evaluation, E> castOrDie (Class<E> clazz)
```

Creates a transformer which will convert an Evaluation to a given type (or die trying).

<br />

|       Parameters        ||
|---------|----------------|
| `clazz` | `Class` <br /> |

|                                                                                                                       Returns                                                                                                                        ||
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| [Transformer](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)`<`[Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)`, E>` | <br /> |

### getCurrentUrl

```
Atom<String> getCurrentUrl ()
```

Returns the value of document.location.href.

<br />

|                                                                                      Returns                                                                                      ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[String](https://developer.android.com/reference/java/lang/String.html)`>` | <br /> |

### getTitle

```
Atom<String> getTitle ()
```

Returns the value of document.title.

<br />

|                                                                                      Returns                                                                                      ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[String](https://developer.android.com/reference/java/lang/String.html)`>` | <br /> |

### script

```
Atom<Evaluation> script (String script)
```

Creates an atom that will execute the provided script and return an evaluation object.

<br />

|        Parameters         ||
|----------|-----------------|
| `script` | `String` <br /> |

|                                                                                                      Returns                                                                                                       ||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)`>` | <br /> |

### script

```
Atom<O> script (String script, 
                Transformer<Evaluation, O> transformer)
```

Creates an atom that will execute the provided script and return an object created by the given transformer.

<br />

|             Parameters              ||
|---------------|----------------------|
| `script`      | `String` <br />      |
| `transformer` | `Transformer` <br /> |

|                                                  Returns                                                  ||
|---------------------------------------------------------------------------------------------------|--------|
| [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<O>` | <br /> |

### scriptWithArgs

```
Atom<Evaluation> scriptWithArgs (String script, 
                List<Object> args)
```

Creates an atom that will execute the provided script with the given non-contextual arguments.

<br />

|        Parameters         ||
|----------|-----------------|
| `script` | `String` <br /> |
| `args`   | `List` <br />   |

|                                                                                                      Returns                                                                                                       ||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<`[Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)`>` | <br /> |

### transform

```
Atom<O> transform (Atom<I> in, 
                Transformer<I, O> transformer)
```

Creates an atom which wraps the input atom and transforms its output using the given transformer.

<br />

|             Parameters              ||
|---------------|----------------------|
| `in`          | `Atom` <br />        |
| `transformer` | `Transformer` <br /> |

|                                                  Returns                                                  ||
|---------------------------------------------------------------------------------------------------|--------|
| [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)`<O>` | <br /> |

-

  ## Interfaces

  - [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)
  - [JSONAble](https://developer.android.com/reference/android/support/test/espresso/web/model/JSONAble)
  - [JSONAble.DeJSONFactory](https://developer.android.com/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory)
  - [TransformingAtom.Transformer](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)
-

  ## Classes

  - [Atoms](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms)
  - [ElementReference](https://developer.android.com/reference/android/support/test/espresso/web/model/ElementReference)
  - [Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)
  - [ModelCodec](https://developer.android.com/reference/android/support/test/espresso/web/model/ModelCodec)
  - [SimpleAtom](https://developer.android.com/reference/android/support/test/espresso/web/model/SimpleAtom)
  - [TransformingAtom](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom)
  - [WindowReference](https://developer.android.com/reference/android/support/test/espresso/web/model/WindowReference)
-

  ## Enums

  - [SimpleAtom.ElementReferencePlacement](https://developer.android.com/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement)