Android Open Source - android-nfc-lib Test Empty Fields Nfc Activity






From Project

Back to project page android-nfc-lib.

License

The source code is released under:

MIT License

If you think the Android project android-nfc-lib listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * TestEmptyFieldsNfcActivity.java/* w ww.  ja  v a  2  s.  com*/
 * NfcLibrary project.
 *
 * Created by : Daneo van Overloop - 17/6/2014.
 *
 * The MIT License (MIT)
 *
 * Copyright (c) 2014 AppFoundry. All rights reserved.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 */

package be.appfoundry.nfclibrary.implementation;

import android.test.ActivityInstrumentationTestCase2;
import android.widget.Spinner;

import com.google.android.apps.common.testing.ui.espresso.ViewInteraction;
import com.squareup.spoon.Spoon;

import be.appfoundry.nfclibrary.implementation.NfcActivity;
import be.idamediafoundry.nfclibrary.implementationApp.R;

import static com.google.android.apps.common.testing.ui.espresso.Espresso.onView;
import static com.google.android.apps.common.testing.ui.espresso.action.ViewActions.click;
import static com.google.android.apps.common.testing.ui.espresso.action.ViewActions.typeText;
import static com.google.android.apps.common.testing.ui.espresso.assertion.ViewAssertions.doesNotExist;
import static com.google.android.apps.common.testing.ui.espresso.matcher.ViewMatchers.withId;
import static com.google.android.apps.common.testing.ui.espresso.matcher.ViewMatchers.withText;

/**
 * NfcLibrary by daneo
 * Created on 30/04/14.
 */
public class TestEmptyFieldsNfcActivity extends ActivityInstrumentationTestCase2<NfcActivity> {

    public TestEmptyFieldsNfcActivity() {
        super(NfcActivity.class);
    }

    @Override
    public void setUp() throws Exception {
        super.setUp();
        getActivity();
    }

    public void testEmptyUriFieldNotDisplayingAfterClick() {
        makeEmpty(R.id.input_text_uri_target);
        emptyFieldNotDisplayingToast(R.id.btn_write_uri_nfc);
    }

    public void testEmptyGeoFieldNotDisplayingAfterClick() {
        makeEmpty(R.id.input_text_geo_lat_target);
        emptyFieldNotDisplayingToast(R.id.btn_write_geolocation_nfc);
    }

    public void testEmptyEmailFieldNotDisplayingAfterClick() {
        makeEmpty(R.id.input_text_email_target);
        emptyFieldNotDisplayingToast(R.id.btn_write_email_nfc);
    }

    public void testEmptySmsFieldNotDisplayingAfterClick() {
        makeEmpty(R.id.input_text_sms_target);
        emptyFieldNotDisplayingToast(R.id.btn_write_sms_nfc);
    }


    public void testEmptyBluetoothFieldNotDisplayingAfterClick() {
        final Spinner spinner = (Spinner) getActivity().findViewById(R.id.input_text_bluetooth_address);
        spinner.post(new Runnable() {
            @Override
            public void run() {
                spinner.setAdapter(null);
            }
        });
        emptyFieldNotDisplayingToast(R.id.btn_write_bluetooth_nfc);
    }

    public void testEmptyTelFieldNotDisplayingAfterClick() {
        makeEmpty(R.id.input_text_tel_target);
        emptyFieldNotDisplayingToast(R.id.btn_write_tel_nfc);
    }


    public void emptyFieldNotDisplayingToast(int id) {
        onView(withId(id)).perform(click());

        // Not able to check for Toast being displayed due to their async nature

        // onView(withText(R.string.no_input)).check(matches(isDisplayed()));

        checkProgressDialogNotShowing();
        makeScreenshot("end");
    }

    private ViewInteraction makeEmpty(int id) {
        makeScreenshot("init");
        return onView(withId(id)).perform(typeText(""));
    }

    private void makeScreenshot(String tag) {
        Spoon.screenshot(getActivity(), tag);
    }

    protected void checkProgressDialogNotShowing() {
        getInstrumentation().waitForIdleSync();
        onView(withText(getActivity().getString(R.string.progressdialog_waiting_for_tag))).check(doesNotExist());

    }
}




Java Source Code List

be.appfoundry.nfclibrary.activities.NfcActivity.java
be.appfoundry.nfclibrary.constants.NfcPayloadHeader.java
be.appfoundry.nfclibrary.constants.NfcType.java
be.appfoundry.nfclibrary.exceptions.InsufficientCapacityException.java
be.appfoundry.nfclibrary.exceptions.ReadOnlyTagException.java
be.appfoundry.nfclibrary.exceptions.TagNotPresentException.java
be.appfoundry.nfclibrary.exceptions.TagNotWritableException.java
be.appfoundry.nfclibrary.implementation.NfcActivity.java
be.appfoundry.nfclibrary.implementation.TestEmptyFieldsNfcActivity.java
be.appfoundry.nfclibrary.implementation.TestFilledFieldsNfcActivity.java
be.appfoundry.nfclibrary.tasks.GenericTask.java
be.appfoundry.nfclibrary.tasks.interfaces.AsyncOperationCallback.java
be.appfoundry.nfclibrary.tasks.interfaces.AsyncUiCallback.java
be.appfoundry.nfclibrary.utilities.TestUtilities.java
be.appfoundry.nfclibrary.utilities.async.AbstractFailsTestsAsync.java
be.appfoundry.nfclibrary.utilities.async.AbstractNfcAsync.java
be.appfoundry.nfclibrary.utilities.async.GenericTaskTestsAsync.java
be.appfoundry.nfclibrary.utilities.async.WriteBluetoothNfcAsync.java
be.appfoundry.nfclibrary.utilities.async.WriteCallbackNfcAsync.java
be.appfoundry.nfclibrary.utilities.async.WriteEmailNfcAsync.java
be.appfoundry.nfclibrary.utilities.async.WriteGeoLocationNfcAsync.java
be.appfoundry.nfclibrary.utilities.async.WritePhoneNfcAsync.java
be.appfoundry.nfclibrary.utilities.async.WriteSmsNfcAsync.java
be.appfoundry.nfclibrary.utilities.async.WriteUriNfcAsync.java
be.appfoundry.nfclibrary.utilities.interfaces.AsyncNfcWriteOperation.java
be.appfoundry.nfclibrary.utilities.interfaces.NdefWrite.java
be.appfoundry.nfclibrary.utilities.interfaces.NfcMessageUtility.java
be.appfoundry.nfclibrary.utilities.interfaces.NfcReadUtility.java
be.appfoundry.nfclibrary.utilities.interfaces.NfcWriteUtility.java
be.appfoundry.nfclibrary.utilities.interfaces.WriteUtility.java
be.appfoundry.nfclibrary.utilities.sync.NdefWriteImpl.java
be.appfoundry.nfclibrary.utilities.sync.NfcMessageUtilityImpl.java
be.appfoundry.nfclibrary.utilities.sync.NfcReadUtilityImpl.java
be.appfoundry.nfclibrary.utilities.sync.NfcWriteUtilityImpl.java
be.appfoundry.nfclibrary.utilities.sync.WriteEmailFailsTests.java
be.appfoundry.nfclibrary.utilities.sync.WriteEmailSucceedsTests.java
be.appfoundry.nfclibrary.utilities.sync.WriteGeolocationFailsTests.java
be.appfoundry.nfclibrary.utilities.sync.WriteGeolocationSucceedsTests.java
be.appfoundry.nfclibrary.utilities.sync.WritePhoneFailsTests.java
be.appfoundry.nfclibrary.utilities.sync.WritePhoneSucceedsTests.java
be.appfoundry.nfclibrary.utilities.sync.WriteUriFailsTests.java
be.appfoundry.nfclibrary.utilities.sync.WriteUriSucceedsTests.java
be.appfoundry.nfclibrary.utilities.sync.WriteUtilityImpl.java