2626import org .junit .Test ;
2727
2828import java .nio .charset .StandardCharsets ;
29- import java .util .List ;
3029
3130public class WriteChannelConfigurationTest {
3231
@@ -46,7 +45,7 @@ public class WriteChannelConfigurationTest {
4645 .setDescription ("FieldDescription" )
4746 .build ();
4847 private static final Schema TABLE_SCHEMA = Schema .of (FIELD_SCHEMA );
49- private static final WriteChannelConfiguration LOAD_CONFIGURATION =
48+ private static final WriteChannelConfiguration LOAD_CONFIGURATION_CSV =
5049 WriteChannelConfiguration .newBuilder (TABLE_ID )
5150 .setCreateDisposition (CREATE_DISPOSITION )
5251 .setWriteDisposition (WRITE_DISPOSITION )
@@ -56,15 +55,28 @@ public class WriteChannelConfigurationTest {
5655 .setSchema (TABLE_SCHEMA )
5756 .build ();
5857
58+ private static final DatastoreBackupOptions BACKUP_OPTIONS = DatastoreBackupOptions .newBuilder ()
59+ .setProjectionFields (ImmutableList .of ("field_1" , "field_2" ))
60+ .build ();
61+ private static final WriteChannelConfiguration LOAD_CONFIGURATION_BACKUP =
62+ WriteChannelConfiguration .newBuilder (TABLE_ID )
63+ .setCreateDisposition (CREATE_DISPOSITION )
64+ .setWriteDisposition (WRITE_DISPOSITION )
65+ .setFormatOptions (BACKUP_OPTIONS )
66+ .setIgnoreUnknownValues (IGNORE_UNKNOWN_VALUES )
67+ .setMaxBadRecords (MAX_BAD_RECORDS )
68+ .setSchema (TABLE_SCHEMA )
69+ .build ();
70+
5971 @ Test
6072 public void testToBuilder () {
61- compareLoadConfiguration (LOAD_CONFIGURATION , LOAD_CONFIGURATION .toBuilder ().build ());
62- WriteChannelConfiguration configuration = LOAD_CONFIGURATION .toBuilder ()
73+ compareLoadConfiguration (LOAD_CONFIGURATION_CSV , LOAD_CONFIGURATION_CSV .toBuilder ().build ());
74+ WriteChannelConfiguration configuration = LOAD_CONFIGURATION_CSV .toBuilder ()
6375 .setDestinationTable (TableId .of ("dataset" , "newTable" ))
6476 .build ();
6577 assertEquals ("newTable" , configuration .getDestinationTable ().getTable ());
6678 configuration = configuration .toBuilder ().setDestinationTable (TABLE_ID ).build ();
67- compareLoadConfiguration (LOAD_CONFIGURATION , configuration );
79+ compareLoadConfiguration (LOAD_CONFIGURATION_CSV , configuration );
6880 }
6981
7082 @ Test
@@ -85,38 +97,43 @@ public void testToBuilderIncomplete() {
8597
8698 @ Test
8799 public void testBuilder () {
88- assertEquals (TABLE_ID , LOAD_CONFIGURATION .getDestinationTable ());
89- assertEquals (CREATE_DISPOSITION , LOAD_CONFIGURATION .getCreateDisposition ());
90- assertEquals (WRITE_DISPOSITION , LOAD_CONFIGURATION .getWriteDisposition ());
91- assertEquals (CSV_OPTIONS , LOAD_CONFIGURATION .getCsvOptions ());
92- assertEquals (FORMAT , LOAD_CONFIGURATION .getFormat ());
93- assertEquals (IGNORE_UNKNOWN_VALUES , LOAD_CONFIGURATION .ignoreUnknownValues ());
94- assertEquals (MAX_BAD_RECORDS , LOAD_CONFIGURATION .getMaxBadRecords ());
95- assertEquals (TABLE_SCHEMA , LOAD_CONFIGURATION .getSchema ());
96- WriteChannelConfiguration loadConfiguration =
100+ assertEquals (TABLE_ID , LOAD_CONFIGURATION_CSV .getDestinationTable ());
101+ assertEquals (CREATE_DISPOSITION , LOAD_CONFIGURATION_CSV .getCreateDisposition ());
102+ assertEquals (WRITE_DISPOSITION , LOAD_CONFIGURATION_CSV .getWriteDisposition ());
103+ assertEquals (CSV_OPTIONS , LOAD_CONFIGURATION_CSV .getCsvOptions ());
104+ assertEquals (FORMAT , LOAD_CONFIGURATION_CSV .getFormat ());
105+ assertEquals (IGNORE_UNKNOWN_VALUES , LOAD_CONFIGURATION_CSV .ignoreUnknownValues ());
106+ assertEquals (MAX_BAD_RECORDS , LOAD_CONFIGURATION_CSV .getMaxBadRecords ());
107+ assertEquals (TABLE_SCHEMA , LOAD_CONFIGURATION_CSV .getSchema ());
108+ assertEquals (BACKUP_OPTIONS , LOAD_CONFIGURATION_BACKUP .getDatastoreBackupOptions ());
109+
110+ WriteChannelConfiguration .Builder builder =
97111 WriteChannelConfiguration .newBuilder (TABLE_ID , CSV_OPTIONS )
98112 .setCreateDisposition (CREATE_DISPOSITION )
99113 .setWriteDisposition (WRITE_DISPOSITION )
100114 .setIgnoreUnknownValues (IGNORE_UNKNOWN_VALUES )
101115 .setMaxBadRecords (MAX_BAD_RECORDS )
102- .setSchema (TABLE_SCHEMA )
103- .build ();
104- assertEquals (TABLE_ID , loadConfiguration .getDestinationTable ());
105- assertEquals (CREATE_DISPOSITION , loadConfiguration .getCreateDisposition ());
106- assertEquals (WRITE_DISPOSITION , loadConfiguration .getWriteDisposition ());
107- assertEquals (CSV_OPTIONS , loadConfiguration .getCsvOptions ());
108- assertEquals (FORMAT , loadConfiguration .getFormat ());
109- assertEquals (IGNORE_UNKNOWN_VALUES , loadConfiguration .ignoreUnknownValues ());
110- assertEquals (MAX_BAD_RECORDS , loadConfiguration .getMaxBadRecords ());
111- assertEquals (TABLE_SCHEMA , loadConfiguration .getSchema ());
112- }
116+ .setSchema (TABLE_SCHEMA );
117+ WriteChannelConfiguration loadConfigurationCSV = builder .build ();
118+ assertEquals (TABLE_ID , loadConfigurationCSV .getDestinationTable ());
119+ assertEquals (CREATE_DISPOSITION , loadConfigurationCSV .getCreateDisposition ());
120+ assertEquals (WRITE_DISPOSITION , loadConfigurationCSV .getWriteDisposition ());
121+ assertEquals (CSV_OPTIONS , loadConfigurationCSV .getCsvOptions ());
122+ assertEquals (FORMAT , loadConfigurationCSV .getFormat ());
123+ assertEquals (IGNORE_UNKNOWN_VALUES , loadConfigurationCSV .ignoreUnknownValues ());
124+ assertEquals (MAX_BAD_RECORDS , loadConfigurationCSV .getMaxBadRecords ());
125+ assertEquals (TABLE_SCHEMA , loadConfigurationCSV .getSchema ());
113126
127+ builder .setFormatOptions (BACKUP_OPTIONS );
128+ WriteChannelConfiguration loadConfigurationBackup = builder .build ();
129+ assertEquals (BACKUP_OPTIONS , loadConfigurationBackup .getDatastoreBackupOptions ());
130+ }
114131
115132 @ Test
116133 public void testToPbAndFromPb () {
117- assertNull (LOAD_CONFIGURATION .toPb ().getLoad ().getSourceUris ());
118- compareLoadConfiguration (LOAD_CONFIGURATION ,
119- WriteChannelConfiguration .fromPb (LOAD_CONFIGURATION .toPb ()));
134+ assertNull (LOAD_CONFIGURATION_CSV .toPb ().getLoad ().getSourceUris ());
135+ compareLoadConfiguration (LOAD_CONFIGURATION_CSV ,
136+ WriteChannelConfiguration .fromPb (LOAD_CONFIGURATION_CSV .toPb ()));
120137 WriteChannelConfiguration configuration = WriteChannelConfiguration .of (TABLE_ID );
121138 compareLoadConfiguration (configuration , WriteChannelConfiguration .fromPb (configuration .toPb ()));
122139 }
0 commit comments