5353import com .google .common .collect .Iterables ;
5454import com .google .spanner .v1 .ResultSetStats ;
5555import java .math .BigDecimal ;
56- import java .math .BigInteger ;
5756import java .util .ArrayList ;
5857import java .util .Arrays ;
5958import java .util .Collections ;
@@ -427,6 +426,8 @@ public void bindDateNull() {
427426
428427 @ Test
429428 public void bindInterval () {
429+ assumeTrue ("Interval is currently only supported in cloud-devel" , isUsingCloudDevel ());
430+ assumeFalse ("Emulator does not yet support INTERVAL" , EmulatorSpannerHelper .isUsingEmulator ());
430431 Interval d = Interval .parseFromString ("P1Y2M3DT4H5M6.789123S" );
431432 Struct row = execute (Statement .newBuilder (selectValueQuery ).bind ("p1" ).to (d ), Type .interval ());
432433 assertThat (row .isNull (0 )).isFalse ();
@@ -435,6 +436,8 @@ public void bindInterval() {
435436
436437 @ Test
437438 public void bindIntervalNull () {
439+ assumeTrue ("Interval is currently only supported in cloud-devel" , isUsingCloudDevel ());
440+ assumeFalse ("Emulator does not yet support INTERVAL" , EmulatorSpannerHelper .isUsingEmulator ());
438441 Struct row =
439442 execute (
440443 Statement .newBuilder (selectValueQuery ).bind ("p1" ).to ((Interval ) null ), Type .interval ());
@@ -837,6 +840,8 @@ public void bindDateArrayNull() {
837840
838841 @ Test
839842 public void bindIntervalArray () {
843+ assumeTrue ("Interval is currently only supported in cloud-devel" , isUsingCloudDevel ());
844+ assumeFalse ("Emulator does not yet support INTERVAL" , EmulatorSpannerHelper .isUsingEmulator ());
840845 Interval d1 = Interval .parseFromString ("P-1Y-2M-3DT4H5M6.789123S" );
841846 Interval d2 = Interval .parseFromString ("P1Y2M3DT-4H-5M-6.789123S" );
842847 Struct row =
@@ -849,6 +854,8 @@ public void bindIntervalArray() {
849854
850855 @ Test
851856 public void bindIntervalArrayEmpty () {
857+ assumeTrue ("Interval is currently only supported in cloud-devel" , isUsingCloudDevel ());
858+ assumeFalse ("Emulator does not yet support INTERVAL" , EmulatorSpannerHelper .isUsingEmulator ());
852859 Struct row =
853860 execute (
854861 Statement .newBuilder (selectValueQuery )
@@ -861,6 +868,8 @@ public void bindIntervalArrayEmpty() {
861868
862869 @ Test
863870 public void bindIntervalArrayNull () {
871+ assumeTrue ("Interval is currently only supported in cloud-devel" , isUsingCloudDevel ());
872+ assumeFalse ("Emulator does not yet support INTERVAL" , EmulatorSpannerHelper .isUsingEmulator ());
864873 Struct row =
865874 execute (
866875 Statement .newBuilder (selectValueQuery ).bind ("p1" ).toIntervalArray (null ),
@@ -1019,6 +1028,7 @@ public void invalidAmbiguousFieldAccess() {
10191028 }
10201029
10211030 private Struct structValue () {
1031+ // TODO: Add test for interval once interval is supported in emulator.
10221032 return Struct .newBuilder ()
10231033 .set ("f_int" )
10241034 .to (10 )
@@ -1032,8 +1042,6 @@ private Struct structValue() {
10321042 .to (Date .fromYearMonthDay (1 , 3 , 1 ))
10331043 .set ("f_string" )
10341044 .to ("hello" )
1035- .set ("f_interval" )
1036- .to (Interval .fromMonthsDaysNanos (100 , 200 , BigInteger .valueOf (5000000L )))
10371045 .set ("f_bytes" )
10381046 .to (ByteArray .copyFrom ("bytes" ))
10391047 .build ();
@@ -1042,6 +1050,7 @@ private Struct structValue() {
10421050 @ Test
10431051 public void bindStruct () {
10441052 assumeFalse ("structs are not supported on POSTGRESQL" , dialect .dialect == Dialect .POSTGRESQL );
1053+ // TODO: Add test for interval once interval is supported in emulator.
10451054 Struct p = structValue ();
10461055 String query =
10471056 "SELECT "
@@ -1051,7 +1060,6 @@ public void bindStruct() {
10511060 + "@p.f_timestamp,"
10521061 + "@p.f_date,"
10531062 + "@p.f_string,"
1054- + "@p.f_interval,"
10551063 + "@p.f_bytes" ;
10561064
10571065 Struct row =
0 commit comments