// Path: phial-overlay/src/main/java/com/mindcoders/phial/TargetScreen.java
// public class TargetScreen {
//     private final Class<? extends Activity> target;
//     private final String scope;
// 
// 
//     TargetScreen(Class<? extends Activity> target, String scope) {
//         this.target = target;
//         this.scope = scope;
//     }
// 
//     /**
//      * Creates a {@link TargetScreen} with activity as a target.
//      * @param target activity.
//      */
//     public static TargetScreen forActivity(Class<? extends Activity> target) {
//         return new TargetScreen(target, null);
//     }
// 
//     /**
//      * Creates a {@link TargetScreen} with custom scope as a target.
//      * @param scope scope name.
//      */
//     public static TargetScreen forScope(String scope) {
//         return new TargetScreen(null, scope);
//     }
// 
//     public Class<? extends Activity> getTargetActivity() {
//         return target;
//     }
// 
//     public String getScopeName() {
//         return scope;
//     }
// 
//     @Override
//     public boolean equals(Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         TargetScreen that = (TargetScreen) o;
// 
//         if (target != null ? !target.equals(that.target) : that.target != null) return false;
//         return scope != null ? scope.equals(that.scope) : that.scope == null;
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = target != null ? target.hashCode() : 0;
//         result = 31 * result + (scope != null ? scope.hashCode() : 0);
//         return result;
//     }
// 
//     /**
//      * Returns either activity name or custom scope name.
//      * @return target name.
//      */
//     public String getName() {
//         if (target != null) {
//             return target.getSimpleName();
//         }
// 
//         return scope;
//     }
// }


import android.app.Activity;
import android.view.View;
import com.google.common.collect.ImmutableList;
import com.mindcoders.phial.TargetScreen;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.Robolectric;
import org.robolectric.RobolectricTestRunner;
import java.util.Collection;
import java.util.Collections;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
package com.mindcoders.phial.internal;






@RunWith(RobolectricTestRunner.class)
public class ScreenTest {

    private Screen screen;

    @Before
    public void setUp() throws Exception {
        screen = Screen.empty();
    }

    @Test
    public void matches_activity() throws Exception {
// Path: phial-overlay/src/main/java/com/mindcoders/phial/TargetScreen.java
// public class TargetScreen {
//     private final Class<? extends Activity> target;
//     private final String scope;
// 
// 
//     TargetScreen(Class<? extends Activity> target, String scope) {
//         this.target = target;
//         this.scope = scope;
//     }
// 
//     /**
//      * Creates a {@link TargetScreen} with activity as a target.
//      * @param target activity.
//      */
//     public static TargetScreen forActivity(Class<? extends Activity> target) {
//         return new TargetScreen(target, null);
//     }
// 
//     /**
//      * Creates a {@link TargetScreen} with custom scope as a target.
//      * @param scope scope name.
//      */
//     public static TargetScreen forScope(String scope) {
//         return new TargetScreen(null, scope);
//     }
// 
//     public Class<? extends Activity> getTargetActivity() {
//         return target;
//     }
// 
//     public String getScopeName() {
//         return scope;
//     }
// 
//     @Override
//     public boolean equals(Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         TargetScreen that = (TargetScreen) o;
// 
//         if (target != null ? !target.equals(that.target) : that.target != null) return false;
//         return scope != null ? scope.equals(that.scope) : that.scope == null;
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = target != null ? target.hashCode() : 0;
//         result = 31 * result + (scope != null ? scope.hashCode() : 0);
//         return result;
//     }
// 
//     /**
//      * Returns either activity name or custom scope name.
//      * @return target name.
//      */
//     public String getName() {
//         if (target != null) {
//             return target.getSimpleName();
//         }
// 
//         return scope;
//     }
// }


// Path: phial-overlay/src/test/java/com/mindcoders/phial/internal/ScreenTest.java
import android.app.Activity;
import android.view.View;
import com.google.common.collect.ImmutableList;
import com.mindcoders.phial.TargetScreen;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.Robolectric;
import org.robolectric.RobolectricTestRunner;
import java.util.Collection;
import java.util.Collections;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;

package com.mindcoders.phial.internal;






@RunWith(RobolectricTestRunner.class)
public class ScreenTest {

    private Screen screen;

    @Before
    public void setUp() throws Exception {
        screen = Screen.empty();
    }

    @Test
    public void matches_activity() throws Exception {
        TargetScreen targetScreen = TargetScreen.forActivity(ActivityA.class);