Clean up sample code to look better.

Change-Id: I91bdfc7ce2d32f23dc7ce9a4276cba37d7fafc42
This commit is contained in:
Megha Joshi
2010-08-13 10:57:39 -07:00
parent 4779ab6f9a
commit c51da235c2
15 changed files with 430 additions and 300 deletions

View File

@@ -0,0 +1,32 @@
/*
* Copyright (C) 2008 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.example.android.apis;
import junit.framework.Test;
import junit.framework.TestSuite;
import android.test.suitebuilder.TestSuiteBuilder;
/**
* A test suite containing all tests for SampleSyncAdapter.
*
*/
public class AllTests extends TestSuite {
public static Test suite() {
return new TestSuiteBuilder(AllTests.class).includeAllPackagesUnderHere().build();
}
}

View File

@@ -0,0 +1,78 @@
/*
* Copyright (C) 2009 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.example.android.samplesync.authenticator;
import android.app.Activity;
import android.app.Instrumentation;
import android.content.Context;
import android.content.Intent;
import android.test.ActivityInstrumentationTestCase2;
import android.test.suitebuilder.annotation.SmallTest;
import android.view.View;
/**
* This is a series of unit tests for the {@link AuthenticatorActivity} class.
*/
@SmallTest
public class AuthenticatorActivityTests extends
ActivityInstrumentationTestCase2<AuthenticatorActivity> {
private static final int ACTIVITY_WAIT = 10000;
private Instrumentation mInstrumentation;
private Context mContext;
public AuthenticatorActivityTests() {
super(AuthenticatorActivity.class);
}
/**
* Common setup code for all tests. Sets up a default launch intent, which
* some tests will use (others will override).
*/
@Override
protected void setUp() throws Exception {
super.setUp();
mInstrumentation = this.getInstrumentation();
mContext = mInstrumentation.getTargetContext();
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
}
/**
* Confirm that Login is presented.
*/
@SmallTest
public void testLoginOffered() {
Instrumentation.ActivityMonitor monitor =
mInstrumentation.addMonitor(AuthenticatorActivity.class.getName(), null, false);
Intent intent = new Intent(mContext, AuthenticatorActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mInstrumentation.startActivitySync(intent);
Activity activity = mInstrumentation.waitForMonitorWithTimeout(monitor, ACTIVITY_WAIT);
View loginbutton = activity.findViewById(R.id.ok_button);
int expected = View.VISIBLE;
assertEquals(expected, loginbutton.getVisibility());
}
}

View File

@@ -0,0 +1,52 @@
/*
* Copyright (C) 2008 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.example.android.samplesync.client;
import com.example.android.samplesync.client.User;
import junit.framework.TestCase;
import org.json.JSONObject;
public class UserTest extends TestCase {
@SmallTest
public void testConstructor() throws Exception {
User user =
new User("mjoshi", "Megha", "Joshi", "1-650-335-5681", "1-650-111-5681",
"1-650-222-5681", "test@google.com", false, 1);
assertEquals("Megha", user.getFirstName());
assertEquals("Joshi", user.getLastName());
assertEquals("mjoshi", user.getUserName());
assertEquals(1, user.getUserId());
assertEquals("1-650-335-5681", user.getCellPhone());
assertEquals(false, user.isDeleted());
}
@SmallTest
public void testValueOf() throws Exception {
JSONObject jsonObj = new JSONObject();
jsonObj.put("u", "mjoshi");
jsonObj.put("f", "Megha");
jsonObj.put("l", "Joshi");
jsonObj.put("i", 1);
User user = User.valueOf(jsonObj);
assertEquals("Megha", user.getFirstName());
assertEquals("Joshi", user.getLastName());
assertEquals("mjoshi", user.getUserName());
assertEquals(1, user.getUserId());
}
}