aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/res/drawable-hdpi/actionbar_share.pngbin681 -> 0 bytes
-rw-r--r--main/res/drawable-hdpi/hw_menu.pngbin947 -> 0 bytes
-rw-r--r--main/res/drawable-hdpi/main_about.pngbin4559 -> 0 bytes
-rw-r--r--main/res/drawable-hdpi/main_settings.pngbin10393 -> 0 bytes
-rw-r--r--main/res/drawable-hdpi/trackable_coin.pngbin864 -> 0 bytes
-rw-r--r--main/res/drawable-hdpi/trackable_coins.pngbin1032 -> 0 bytes
-rw-r--r--main/res/drawable-hdpi/trackable_tb.pngbin1103 -> 0 bytes
-rw-r--r--main/res/drawable-hdpi/trackable_tbs.pngbin1426 -> 0 bytes
-rw-r--r--main/res/drawable-ldpi/actionbar_share.pngbin495 -> 0 bytes
-rw-r--r--main/res/drawable-ldpi/hw_menu.pngbin737 -> 0 bytes
-rw-r--r--main/res/drawable-ldpi/main_about.pngbin2950 -> 0 bytes
-rw-r--r--main/res/drawable-ldpi/main_settings.pngbin5982 -> 0 bytes
-rw-r--r--main/res/drawable/actionbar_share.pngbin757 -> 0 bytes
-rw-r--r--main/res/drawable/hw_menu.pngbin1148 -> 0 bytes
-rw-r--r--main/res/drawable/main_about.pngbin3985 -> 0 bytes
-rw-r--r--main/res/drawable/main_settings.pngbin7358 -> 0 bytes
-rw-r--r--main/res/drawable/my_location.pngbin1138 -> 0 bytes
-rw-r--r--main/res/drawable/my_location_arrow.pngbin542 -> 0 bytes
-rw-r--r--main/res/layout/address_button.xml11
-rw-r--r--main/res/layout/touch.xml96
-rw-r--r--main/src/cgeo/geocaching/Settings.java2
-rw-r--r--main/src/cgeo/geocaching/connector/OXConnector.java6
-rw-r--r--main/src/cgeo/geocaching/connector/gc/GCConnector.java5
-rw-r--r--main/src/cgeo/geocaching/connector/gc/GCConstants.java4
-rw-r--r--main/src/cgeo/geocaching/connector/opencaching/OpenCachingConnector.java11
-rw-r--r--main/src/cgeo/geocaching/gcvote/GCVote.java16
-rw-r--r--tests/src/cgeo/geocaching/cgBaseTest.java3
-rw-r--r--tests/src/cgeo/geocaching/connector/ConnectorFactoryTest.java29
28 files changed, 99 insertions, 84 deletions
diff --git a/main/res/drawable-hdpi/actionbar_share.png b/main/res/drawable-hdpi/actionbar_share.png
deleted file mode 100644
index e748c85..0000000
--- a/main/res/drawable-hdpi/actionbar_share.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-hdpi/hw_menu.png b/main/res/drawable-hdpi/hw_menu.png
deleted file mode 100644
index 182788a..0000000
--- a/main/res/drawable-hdpi/hw_menu.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-hdpi/main_about.png b/main/res/drawable-hdpi/main_about.png
deleted file mode 100644
index a3c75cb..0000000
--- a/main/res/drawable-hdpi/main_about.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-hdpi/main_settings.png b/main/res/drawable-hdpi/main_settings.png
deleted file mode 100644
index 02b564d..0000000
--- a/main/res/drawable-hdpi/main_settings.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-hdpi/trackable_coin.png b/main/res/drawable-hdpi/trackable_coin.png
deleted file mode 100644
index 3f5138e..0000000
--- a/main/res/drawable-hdpi/trackable_coin.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-hdpi/trackable_coins.png b/main/res/drawable-hdpi/trackable_coins.png
deleted file mode 100644
index 7713407..0000000
--- a/main/res/drawable-hdpi/trackable_coins.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-hdpi/trackable_tb.png b/main/res/drawable-hdpi/trackable_tb.png
deleted file mode 100644
index 29f348c..0000000
--- a/main/res/drawable-hdpi/trackable_tb.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-hdpi/trackable_tbs.png b/main/res/drawable-hdpi/trackable_tbs.png
deleted file mode 100644
index 595f7a1..0000000
--- a/main/res/drawable-hdpi/trackable_tbs.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-ldpi/actionbar_share.png b/main/res/drawable-ldpi/actionbar_share.png
deleted file mode 100644
index 53f28fe..0000000
--- a/main/res/drawable-ldpi/actionbar_share.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-ldpi/hw_menu.png b/main/res/drawable-ldpi/hw_menu.png
deleted file mode 100644
index d1b54f4..0000000
--- a/main/res/drawable-ldpi/hw_menu.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-ldpi/main_about.png b/main/res/drawable-ldpi/main_about.png
deleted file mode 100644
index 482e511..0000000
--- a/main/res/drawable-ldpi/main_about.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable-ldpi/main_settings.png b/main/res/drawable-ldpi/main_settings.png
deleted file mode 100644
index a6c46b3..0000000
--- a/main/res/drawable-ldpi/main_settings.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable/actionbar_share.png b/main/res/drawable/actionbar_share.png
deleted file mode 100644
index f323732..0000000
--- a/main/res/drawable/actionbar_share.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable/hw_menu.png b/main/res/drawable/hw_menu.png
deleted file mode 100644
index ba7dee9..0000000
--- a/main/res/drawable/hw_menu.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable/main_about.png b/main/res/drawable/main_about.png
deleted file mode 100644
index 61abcac..0000000
--- a/main/res/drawable/main_about.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable/main_settings.png b/main/res/drawable/main_settings.png
deleted file mode 100644
index a0a624e..0000000
--- a/main/res/drawable/main_settings.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable/my_location.png b/main/res/drawable/my_location.png
deleted file mode 100644
index cdb58c7..0000000
--- a/main/res/drawable/my_location.png
+++ /dev/null
Binary files differ
diff --git a/main/res/drawable/my_location_arrow.png b/main/res/drawable/my_location_arrow.png
deleted file mode 100644
index c8401d2..0000000
--- a/main/res/drawable/my_location_arrow.png
+++ /dev/null
Binary files differ
diff --git a/main/res/layout/address_button.xml b/main/res/layout/address_button.xml
deleted file mode 100644
index 5369282..0000000
--- a/main/res/layout/address_button.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/button_map"
- android:layout_height="wrap_content"
- android:layout_width="fill_parent"
- android:padding="5dip" >
- <Button style="@style/button"
- android:id="@+id/button"
- android:singleLine="false"
- android:gravity="left" />
-</LinearLayout> \ No newline at end of file
diff --git a/main/res/layout/touch.xml b/main/res/layout/touch.xml
index 52378aa..de17c3d 100644
--- a/main/res/layout/touch.xml
+++ b/main/res/layout/touch.xml
@@ -23,65 +23,59 @@
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
- android:layout_height="fill_parent"
+ android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- android:layout_marginTop="10dip"
- android:orientation="vertical" >
- <LinearLayout
- android:layout_width="fill_parent"
+ android:orientation="horizontal" >
+ <Button style="@style/button"
+ android:id="@+id/type"
+ android:layout_width="0dip"
+ android:layout_weight="1"/>
+ <Button style="@style/button"
+ android:id="@+id/date"
+ android:layout_width="0dip"
+ android:layout_weight="1"/>
+ </LinearLayout>
+ <EditText style="@style/edittext"
+ android:id="@+id/tracking"
+ android:inputType="textCapCharacters"
+ android:hint="@string/trackable_code" />
+ <EditText style="@style/edittext"
+ android:id="@+id/log"
+ android:hint="@string/log_new_log_text"
+ android:singleLine="false"
+ android:lines="5"
+ android:capitalize="sentences" />
+ <LinearLayout android:id="@+id/tweet_box"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal"
+ android:layout_marginLeft="10dip"
+ android:layout_marginRight="10dip"
+ android:layout_marginBottom="5dip"
+ android:visibility="gone" >
+ <CheckBox android:id="@+id/tweet"
+ android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:orientation="horizontal" >
- <Button style="@style/button"
- android:id="@+id/type"
- android:layout_width="0dip"
- android:layout_weight="1"/>
- <Button style="@style/button"
- android:id="@+id/date"
- android:layout_width="0dip"
- android:layout_weight="1"/>
- </LinearLayout>
- <EditText style="@style/edittext"
- android:id="@+id/tracking"
- android:inputType="textCapCharacters"
- android:hint="@string/trackable_code" />
- <EditText style="@style/edittext"
- android:id="@+id/log"
- android:hint="@string/log_new_log_text"
- android:singleLine="false"
- android:lines="5"
- android:capitalize="sentences" />
- <LinearLayout android:id="@+id/tweet_box"
- android:layout_width="fill_parent"
+ android:layout_gravity="left"
+ android:padding="1px"
+ android:gravity="center" />
+ <TextView
+ android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:orientation="horizontal"
- android:layout_marginLeft="10dip"
- android:layout_marginRight="10dip"
- android:layout_marginBottom="5dip"
- android:visibility="gone" >
- <CheckBox android:id="@+id/tweet"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="left"
- android:padding="1px"
- android:gravity="center" />
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center_vertical"
- android:gravity="left"
- android:paddingRight="3dip"
- android:textSize="14dip"
- android:textColor="?text_color"
- android:text="@string/visit_tweet" />
- </LinearLayout>
- <Button style="@style/button"
- android:id="@+id/post"
- android:text="@string/log_post" />
+ android:layout_gravity="center_vertical"
+ android:gravity="left"
+ android:paddingRight="3dip"
+ android:textSize="14dip"
+ android:textColor="?text_color"
+ android:text="@string/visit_tweet" />
</LinearLayout>
+ <Button style="@style/button"
+ android:id="@+id/post"
+ android:text="@string/log_post" />
</LinearLayout>
</ScrollView>
</LinearLayout>
diff --git a/main/src/cgeo/geocaching/Settings.java b/main/src/cgeo/geocaching/Settings.java
index 397c8b1..1a58a85 100644
--- a/main/src/cgeo/geocaching/Settings.java
+++ b/main/src/cgeo/geocaching/Settings.java
@@ -204,10 +204,8 @@ public final class Settings {
@Override
public void edit(Editor edit) {
if (StringUtils.isBlank(memberStatus)) {
- // erase password
edit.remove(KEY_MEMBER_STATUS);
} else {
- // save password
edit.putString(KEY_MEMBER_STATUS, memberStatus);
}
}
diff --git a/main/src/cgeo/geocaching/connector/OXConnector.java b/main/src/cgeo/geocaching/connector/OXConnector.java
index 7348421..755dbaa 100644
--- a/main/src/cgeo/geocaching/connector/OXConnector.java
+++ b/main/src/cgeo/geocaching/connector/OXConnector.java
@@ -2,7 +2,7 @@ package cgeo.geocaching.connector;
import cgeo.geocaching.cgCache;
-import org.apache.commons.lang3.StringUtils;
+import java.util.regex.Pattern;
/**
* connector for OpenCaching.com
@@ -10,9 +10,11 @@ import org.apache.commons.lang3.StringUtils;
*/
public class OXConnector extends AbstractConnector {
+ private static final Pattern PATTERN_GEOCODE = Pattern.compile("OX[A-Z0-9]+", Pattern.CASE_INSENSITIVE);
+
@Override
public boolean canHandle(String geocode) {
- return StringUtils.startsWithIgnoreCase(geocode, "OX");
+ return PATTERN_GEOCODE.matcher(geocode).matches();
}
@Override
diff --git a/main/src/cgeo/geocaching/connector/gc/GCConnector.java b/main/src/cgeo/geocaching/connector/gc/GCConnector.java
index 9f71f62..95e4921 100644
--- a/main/src/cgeo/geocaching/connector/gc/GCConnector.java
+++ b/main/src/cgeo/geocaching/connector/gc/GCConnector.java
@@ -38,7 +38,10 @@ public class GCConnector extends AbstractConnector {
@Override
public boolean canHandle(String geocode) {
- return StringUtils.startsWithIgnoreCase(geocode, "GC");
+ if (geocode == null) {
+ return false;
+ }
+ return GCConstants.PATTERN_GC_CODE.matcher(geocode).matches();
}
@Override
diff --git a/main/src/cgeo/geocaching/connector/gc/GCConstants.java b/main/src/cgeo/geocaching/connector/gc/GCConstants.java
index b166d95..cb4f896 100644
--- a/main/src/cgeo/geocaching/connector/gc/GCConstants.java
+++ b/main/src/cgeo/geocaching/connector/gc/GCConstants.java
@@ -143,8 +143,8 @@ public final class GCConstants {
/**
* Patterns for GC and TB codes
*/
- public final static Pattern PATTERN_GC_CODE = Pattern.compile("GC[0-9A-Z]*", Pattern.CASE_INSENSITIVE);
- public final static Pattern PATTERN_TB_CODE = Pattern.compile("TB[0-9A-Z]*", Pattern.CASE_INSENSITIVE);
+ public final static Pattern PATTERN_GC_CODE = Pattern.compile("GC[0-9A-Z]+", Pattern.CASE_INSENSITIVE);
+ public final static Pattern PATTERN_TB_CODE = Pattern.compile("TB[0-9A-Z]+", Pattern.CASE_INSENSITIVE);
/** Live Map since 14.02.2012 */
public final static Pattern PATTERN_USERSESSION = Pattern.compile("UserSession\\('([^']+)'");
diff --git a/main/src/cgeo/geocaching/connector/opencaching/OpenCachingConnector.java b/main/src/cgeo/geocaching/connector/opencaching/OpenCachingConnector.java
index 7c13c5b..bfaa345 100644
--- a/main/src/cgeo/geocaching/connector/opencaching/OpenCachingConnector.java
+++ b/main/src/cgeo/geocaching/connector/opencaching/OpenCachingConnector.java
@@ -3,26 +3,27 @@ package cgeo.geocaching.connector.opencaching;
import cgeo.geocaching.cgCache;
import cgeo.geocaching.connector.AbstractConnector;
-import org.apache.commons.lang3.StringUtils;
-
import java.util.regex.Pattern;
public class OpenCachingConnector extends AbstractConnector {
private final String host;
private final String name;
- private final String prefix;
+ private final Pattern codePattern;
private static final Pattern gpxZipFilePattern = Pattern.compile("oc[a-z]{2,3}\\d{5,}\\.zip", Pattern.CASE_INSENSITIVE);
public OpenCachingConnector(final String name, final String host, final String prefix) {
this.name = name;
this.host = host;
- this.prefix = prefix;
+ codePattern = Pattern.compile(prefix + "[A-Z0-9]+", Pattern.CASE_INSENSITIVE);
}
@Override
public boolean canHandle(String geocode) {
- return StringUtils.startsWithIgnoreCase(geocode, prefix);
+ if (geocode == null) {
+ return false;
+ }
+ return codePattern.matcher(geocode).matches();
}
@Override
diff --git a/main/src/cgeo/geocaching/gcvote/GCVote.java b/main/src/cgeo/geocaching/gcvote/GCVote.java
index 663fd20..c98d4d9 100644
--- a/main/src/cgeo/geocaching/gcvote/GCVote.java
+++ b/main/src/cgeo/geocaching/gcvote/GCVote.java
@@ -118,7 +118,7 @@ public final class GCVote {
}
}
} catch (Exception e) {
- Log.w(Settings.tag, "cgBase.getRating: Failed to parse guid");
+ Log.w(Settings.tag, "GCVote.getRating: Failed to parse guid");
}
if (guid == null) {
continue;
@@ -135,7 +135,7 @@ public final class GCVote {
}
}
} catch (Exception e) {
- Log.w(Settings.tag, "cgBase.getRating: Failed to parse loggedIn");
+ Log.w(Settings.tag, "GCVote.getRating: Failed to parse loggedIn");
}
float rating = 0;
@@ -145,7 +145,7 @@ public final class GCVote {
rating = Float.parseFloat(matcherRating.group(1));
}
} catch (Exception e) {
- Log.w(Settings.tag, "cgBase.getRating: Failed to parse rating");
+ Log.w(Settings.tag, "GCVote.getRating: Failed to parse rating");
}
if (rating <= 0) {
continue;
@@ -158,7 +158,7 @@ public final class GCVote {
votes = Integer.parseInt(matcherVotes.group(1));
}
} catch (Exception e) {
- Log.w(Settings.tag, "cgBase.getRating: Failed to parse vote count");
+ Log.w(Settings.tag, "GCVote.getRating: Failed to parse vote count");
}
if (votes < 0) {
continue;
@@ -172,7 +172,7 @@ public final class GCVote {
myVote = Float.parseFloat(matcherVote.group(1));
}
} catch (Exception e) {
- Log.w(Settings.tag, "cgBase.getRating: Failed to parse user's vote");
+ Log.w(Settings.tag, "GCVote.getRating: Failed to parse user's vote");
}
}
@@ -183,7 +183,7 @@ public final class GCVote {
}
}
} catch (Exception e) {
- Log.e(Settings.tag, "cgBase.getRating: " + e.toString());
+ Log.e(Settings.tag, "GCVote.getRating: " + e.toString());
}
return ratings;
@@ -238,6 +238,10 @@ public final class GCVote {
}
}
+ if (guids.isEmpty()) {
+ return;
+ }
+
try {
final Map<String, GCVoteRating> ratings = GCVote.getRating(guids, null);
diff --git a/tests/src/cgeo/geocaching/cgBaseTest.java b/tests/src/cgeo/geocaching/cgBaseTest.java
index 6b7c6b6..b9c3586 100644
--- a/tests/src/cgeo/geocaching/cgBaseTest.java
+++ b/tests/src/cgeo/geocaching/cgBaseTest.java
@@ -21,7 +21,7 @@ public class cgBaseTest extends AndroidTestCase {
public static void testRegEx() {
String page = MockedCache.readCachePage("GC2CJPF");
assertEquals("blafoo", BaseUtils.getMatch(page, GCConstants.PATTERN_LOGIN_NAME, true, "???"));
- assertEquals("Premium Member", BaseUtils.getMatch(page, GCConstants.PATTERN_MEMBER_STATUS, true, "???"));
+ assertTrue(page.contains("id=\"ctl00_hlRenew\"") || "Premium Member".equals(BaseUtils.getMatch(page, GCConstants.PATTERN_MEMBER_STATUS, true, "???")));
int cachesFound = Integer.parseInt(BaseUtils.getMatch(page, GCConstants.PATTERN_CACHES_FOUND, true, "0").replaceAll("[,.]", ""));
assertTrue(cachesFound >= 491);
}
@@ -59,7 +59,6 @@ public class cgBaseTest extends AndroidTestCase {
assertEquals(expected.getPersonalNote(), actual.getPersonalNote());
assertEquals(expected.isFound(), actual.isFound());
assertEquals(expected.isFavorite(), actual.isFavorite());
- System.out.println(expected.getFavoritePoints() + " " + actual.getFavoritePoints());
assertTrue(expected.getFavoritePoints() <= actual.getFavoritePoints());
assertEquals(expected.isWatchlist(), actual.isWatchlist());
assertEquals(expected.getHiddenDate().toString(), actual.getHiddenDate().toString());
diff --git a/tests/src/cgeo/geocaching/connector/ConnectorFactoryTest.java b/tests/src/cgeo/geocaching/connector/ConnectorFactoryTest.java
index 41a819f..75beb2c 100644
--- a/tests/src/cgeo/geocaching/connector/ConnectorFactoryTest.java
+++ b/tests/src/cgeo/geocaching/connector/ConnectorFactoryTest.java
@@ -1,13 +1,14 @@
package cgeo.geocaching.connector;
import cgeo.geocaching.connector.gc.GCConnector;
+import cgeo.geocaching.connector.opencaching.OpenCachingConnector;
import cgeo.geocaching.test.AbstractResourceInstrumentationTestCase;
import cgeo.geocaching.test.mock.GC1ZXX2;
public class ConnectorFactoryTest extends AbstractResourceInstrumentationTestCase {
public static void testGetConnectors() {
- IConnector[] connectors = ConnectorFactory.getConnectors();
+ final IConnector[] connectors = ConnectorFactory.getConnectors();
assertNotNull(connectors);
assertTrue(connectors.length > 0); // unknown connector must exist
}
@@ -19,12 +20,36 @@ public class ConnectorFactoryTest extends AbstractResourceInstrumentationTestCas
assertFalse(ConnectorFactory.canHandle("[/start with special char"));
}
+ public static void testGeocodeOpenCaching() {
+ assertTrue(ConnectorFactory.getConnector("OZ12345") instanceof OpenCachingConnector); // opencaching CZ
+ assertTrue(ConnectorFactory.getConnector("OC12345") instanceof OpenCachingConnector); // opencaching DE
+ assertTrue(ConnectorFactory.getConnector("OU12345") instanceof OpenCachingConnector); // opencaching US
+ assertTrue(ConnectorFactory.getConnector("OK12345") instanceof OpenCachingConnector); // opencaching UK
+ assertTrue(ConnectorFactory.getConnector("OJ12345") instanceof OpenCachingConnector); // opencaching JP
+ assertTrue(ConnectorFactory.getConnector("OS12345") instanceof OpenCachingConnector); // opencaching NO
+ assertTrue(ConnectorFactory.getConnector("OB12345") instanceof OpenCachingConnector); // opencaching NL
+ assertTrue(ConnectorFactory.getConnector("OP12345") instanceof OpenCachingConnector); // opencaching PL
+ }
+
+ public static void testGeocodeInvalidFormat() throws Exception {
+ // all codes are invalid
+ assertTrue(ConnectorFactory.getConnector("GC") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("OC") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("OX") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("GC 1234") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("OC 1234") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("OX 1234") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("GC-1234") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("OC-1234") instanceof UnknownConnector);
+ assertTrue(ConnectorFactory.getConnector("OX-1234") instanceof UnknownConnector);
+ }
+
public static void testGetConnectorCgCache() {
assertEquals(GCConnector.getInstance(), ConnectorFactory.getConnector(new GC1ZXX2()));
}
public static void testGetConnectorString() {
- IConnector connector = ConnectorFactory.getConnector("GC12345");
+ final IConnector connector = ConnectorFactory.getConnector("GC12345");
assertNotNull(connector);
assertEquals(GCConnector.getInstance().getName(), connector.getName());
}