Github user ajantha-bhat commented on a diff in the pull request: https://github.com/apache/carbondata/pull/2899#discussion_r241333995 --- Diff: store/CSDK/test/main.cpp --- @@ -645,6 +653,278 @@ bool testWriteData(JNIEnv *env, char *path, int argc, char *argv[]) { } } +void writeData(JNIEnv *env, CarbonWriter writer, int size, jclass objClass, char *stringField, short shortField) { + jobjectArray arr = env->NewObjectArray(size, objClass, 0); + + jobject jStringField = env->NewStringUTF(stringField); + env->SetObjectArrayElement(arr, 0, jStringField); + + char ctrShort[10]; + gcvt(shortField % 10000, 10, ctrShort); + jobject jShortField = env->NewStringUTF(ctrShort); + env->SetObjectArrayElement(arr, 1, jShortField); + + writer.write(arr); + + env->DeleteLocalRef(jStringField); + env->DeleteLocalRef(jShortField); + env->DeleteLocalRef(arr); +} + +/** + * test WithLoadOption interface + * + * @param env jni env + * @param path file path + * @param argc argument counter + * @param argv argument vector + * @return true or throw exception + */ +bool testWithLoadOption(JNIEnv *env, char *path, int argc, char *argv[]) { + + char *jsonSchema = "[{stringField:string},{shortField:short},{intField:int},{longField:long},{doubleField:double},{boolField:boolean},{dateField:date},{timeField:timestamp},{floatField:float},{arrayField:array}]"; + try { + CarbonWriter writer; + writer.builder(env); --- End diff -- Can add these load options to existing writer test case, no need to add new
---