未验证 提交 5bacbe98 编写于 作者: O openharmony_ci 提交者: Gitee

!3483 update fileio xts

Merge pull request !3483 from zhangxingxia/master
...@@ -1390,19 +1390,18 @@ describe('fileIOTestStream', function () { ...@@ -1390,19 +1390,18 @@ describe('fileIOTestStream', function () {
let fpath = await nextFileName('fileio_test_stream_read_sync_005'); let fpath = await nextFileName('fileio_test_stream_read_sync_005');
let text = '0123456789abcdefg'; let text = '0123456789abcdefg';
expect(prepareFile(fpath, text)).assertTrue(); expect(prepareFile(fpath, text)).assertTrue();
let ss = fileio.createStreamSync(fpath, 'r+');
expect(ss !== null).assertTrue();
try { try {
var ss = fileio.createStreamSync(fpath, 'r+'); ss.readSync(new ArrayBuffer(4096), {
expect(ss !== null).assertTrue();
let len = ss.readSync(new ArrayBuffer(4096), {
position: -1 position: -1
}); });
expect(len == text.length).assertTrue();
ss.closeSync();
fileio.unlinkSync(fpath);
} }
catch (e) { catch (e) {
console.log('---fileio_test_stream_read_sync_005 has failed for ' + e); console.info('fileio_test_stream_read_sync_005 has failed for ' + e);
expect(null).assertFail(); expect(e.message == "option.position shall be positive number").assertTrue();
ss.closeSync();
fileio.unlinkSync(fpath);
} }
}); });
......
...@@ -123,6 +123,7 @@ describe('fileio_stream_read', function () { ...@@ -123,6 +123,7 @@ describe('fileio_stream_read', function () {
expect(ss !== null).assertTrue(); expect(ss !== null).assertTrue();
let readout = await ss.read(new ArrayBuffer(4096), {offset: 4096}); let readout = await ss.read(new ArrayBuffer(4096), {offset: 4096});
expect(readout.bytesRead == 0).assertTrue(); expect(readout.bytesRead == 0).assertTrue();
expect(readout.offset == 4096).assertTrue();
ss.closeSync(); ss.closeSync();
fileio.unlinkSync(fpath); fileio.unlinkSync(fpath);
done(); done();
...@@ -151,10 +152,15 @@ describe('fileio_stream_read', function () { ...@@ -151,10 +152,15 @@ describe('fileio_stream_read', function () {
expect(ss !== null).assertTrue(); expect(ss !== null).assertTrue();
let options = { let options = {
offset: 1, offset: 1,
position:5 position:6
} }
let readout = await ss.read(new ArrayBuffer(4096),options); let readout = await ss.read(new ArrayBuffer(4096),options);
expect(readout.bytesRead == FILE_CONTENT.length).assertTrue(); expect(readout.bytesRead == FILE_CONTENT.length-6).assertTrue();
expect(readout.offset == 1).assertTrue();
let start = readout.offset;
let end = readout.offset+readout.bytesRead;
let result = String.fromCharCode.apply(null, new Uint8Array(readout.buffer.slice(start,end)));
expect(result== "world").assertTrue();
ss.closeSync(); ss.closeSync();
fileio.unlinkSync(fpath); fileio.unlinkSync(fpath);
done(); done();
...@@ -267,7 +273,7 @@ describe('fileio_stream_read', function () { ...@@ -267,7 +273,7 @@ describe('fileio_stream_read', function () {
/** /**
* @tc.number SUB_DF_FILEIO_STREAM_READASYNC_0900 * @tc.number SUB_DF_FILEIO_STREAM_READASYNC_0900
* @tc.name fileio_test_stream_read_async_009 * @tc.name fileio_test_stream_read_async_009
* @tc.desc Test read() interface, When the length is negative. * @tc.desc Test read() interface, When the length is negative,equivalent to omitting the parameter.
* @tc.size MEDIUM * @tc.size MEDIUM
* @tc.type Function * @tc.type Function
* @tc.level Level 0 * @tc.level Level 0
...@@ -279,15 +285,13 @@ describe('fileio_stream_read', function () { ...@@ -279,15 +285,13 @@ describe('fileio_stream_read', function () {
let ss = fileio.createStreamSync(fpath, 'r+'); let ss = fileio.createStreamSync(fpath, 'r+');
expect(ss !== null).assertTrue(); expect(ss !== null).assertTrue();
try { try {
let readout = await ss.read(new ArrayBuffer(4096), {length: -1}); let readout = await ss.read(new ArrayBuffer(16), {offset:13, length: -1});
console.info("====>"+readout.bytesRead); expect(readout.bytesRead == 3).assertTrue();
done();
} catch (err) {
console.info('fileio_test_stream_read_async_009 has failed for ' + err);
expect(err.message == "Failed GetReadArg").assertTrue();
ss.closeSync(); ss.closeSync();
fileio.unlinkSync(fpath); fileio.unlinkSync(fpath);
done(); done();
} catch (err) {
console.info('fileio_test_stream_read_async_009 has failed for ' + err);
} }
}); });
...@@ -340,4 +344,54 @@ describe('fileio_stream_read', function () { ...@@ -340,4 +344,54 @@ describe('fileio_stream_read', function () {
console.info('fileio_test_stream_read_async_011 has failed for ' + err); console.info('fileio_test_stream_read_async_011 has failed for ' + err);
} }
}); });
/**
* @tc.number SUB_DF_FILEIO_STREAM_READASYNC_1200
* @tc.name fileio_test_stream_read_async_012
* @tc.desc Test read() interface, When the position is negative.
* @tc.size MEDIUM
* @tc.type Function
* @tc.level Level 0
* @tc.require
*/
it('fileio_test_stream_read_async_012', 0, async function (done) {
let fpath = await nextFileName('fileio_test_stream_read_async_012');
expect(prepareFile(fpath, FILE_CONTENT)).assertTrue();
let ss = fileio.createStreamSync(fpath, 'r+');
expect(ss !== null).assertTrue();
try {
await ss.read(new ArrayBuffer(4096), {position:-1});
} catch (err) {
console.info('fileio_test_stream_read_async_012 has failed for ' + err);
expect(err.message == "Failed GetReadArg").assertTrue();
ss.closeSync();
fileio.unlinkSync(fpath);
done();
}
});
/**
* @tc.number SUB_DF_FILEIO_STREAM_READASYNC_1300
* @tc.name fileio_test_stream_read_async_013
* @tc.desc Test read() interface,When the parameter type is wrong.
* @tc.size MEDIUM
* @tc.type Function
* @tc.level Level 0
* @tc.require
*/
it('fileio_test_stream_read_async_013', 0, async function (done) {
let fpath = await nextFileName('fileio_test_stream_read_async_013');
expect(prepareFile(fpath, FILE_CONTENT)).assertTrue();
let ss = fileio.createStreamSync(fpath, 'r+');
expect(ss !== null).assertTrue();
try {
await ss.read("");
} catch (err) {
console.info('fileio_test_stream_read_async_013 has failed for ' + err);
expect(err.message == "Failed GetReadArg").assertTrue();
ss.closeSync();
fileio.unlinkSync(fpath);
done();
}
});
}); });
...@@ -113,7 +113,7 @@ describe('fileio_stream_write', function () { ...@@ -113,7 +113,7 @@ describe('fileio_stream_write', function () {
/** /**
* @tc.number SUB_DF_FILEIO_STREAM_WRITEASYNC_0300 * @tc.number SUB_DF_FILEIO_STREAM_WRITEASYNC_0300
* @tc.name fileio_test_stream_write_async_003 * @tc.name fileio_test_stream_write_async_003
* @tc.desc Test write() interface,When the length is 1. * @tc.desc Test write() interface,When the offset is 1 and position is 5.
* @tc.size MEDIUM * @tc.size MEDIUM
* @tc.type Function * @tc.type Function
* @tc.level Level 0 * @tc.level Level 0
...@@ -126,9 +126,14 @@ describe('fileio_stream_write', function () { ...@@ -126,9 +126,14 @@ describe('fileio_stream_write', function () {
try { try {
let ss = fileio.createStreamSync(fpath, 'r+'); let ss = fileio.createStreamSync(fpath, 'r+');
expect(ss !== null).assertTrue(); expect(ss !== null).assertTrue();
let content = "hello, world"; let content = "test";
let bytesWritten = await ss.write(content, { length: 1, encoding: 'utf-8' }); let bytesWritten = await ss.write(content, {offset:1, position:5, encoding: 'utf-8' });
expect(bytesWritten == 1).assertTrue(); expect(bytesWritten == content.length-1).assertTrue();
let readOut = await ss.read(new ArrayBuffer(4096), {offset:0,position: 0});
let start = readOut.offset;
let end = readOut.offset+readOut.bytesRead;
let result = String.fromCharCode.apply(null, new Uint8Array(readOut.buffer.slice(start,end)));
expect(result == "helloestrld").assertTrue();
fileio.unlinkSync(fpath); fileio.unlinkSync(fpath);
ss.closeSync(); ss.closeSync();
done(); done();
...@@ -330,7 +335,7 @@ describe('fileio_stream_write', function () { ...@@ -330,7 +335,7 @@ describe('fileio_stream_write', function () {
/** /**
* @tc.number SUB_DF_FILEIO_STREAM_WRITEASYNC_1100 * @tc.number SUB_DF_FILEIO_STREAM_WRITEASYNC_1100
* @tc.name fileio_test_stream_write_async_011 * @tc.name fileio_test_stream_write_async_011
* @tc.desc Test write() interface,When the length is negative. * @tc.desc Test write() interface,When the length is negative,equivalent to omitting the parameter.
* @tc.size MEDIUM * @tc.size MEDIUM
* @tc.type Function * @tc.type Function
* @tc.level Level 0 * @tc.level Level 0
...@@ -343,15 +348,13 @@ describe('fileio_stream_write', function () { ...@@ -343,15 +348,13 @@ describe('fileio_stream_write', function () {
expect(ss !== null).assertTrue(); expect(ss !== null).assertTrue();
try { try {
let content = "hello, world"; let content = "hello, world";
let number = await ss.write(content, {length:-1}); let number = await ss.write(content, {offset:1 ,length:-1});
console.info("====>"+number); expect(number == content.length-1).assertTrue();
done();
} catch (err) {
console.info('fileio_test_stream_write_async_011 has failed for ' + err);
expect(err.message == "Invalid option.length, positive integer is desired").assertTrue();
fileio.unlinkSync(fpath); fileio.unlinkSync(fpath);
ss.closeSync(); ss.closeSync();
done(); done();
} catch (err) {
console.info('fileio_test_stream_write_async_011 has failed for ' + err);
} }
}); });
...@@ -432,4 +435,30 @@ describe('fileio_stream_write', function () { ...@@ -432,4 +435,30 @@ describe('fileio_stream_write', function () {
done(); done();
} }
}); });
/**
* @tc.number SUB_DF_FILEIO_STREAM_WRITEASYNC_1500
* @tc.name fileio_test_stream_write_async_015
* @tc.desc Test write() interface,When the position is negative.
* @tc.size MEDIUM
* @tc.type Function
* @tc.level Level 0
* @tc.require
*/
it('fileio_test_stream_write_async_015', 0, async function (done) {
let fpath = await nextFileName('fileio_test_stream_write_async_015');
expect(prepareFile(fpath, FILE_CONTENT)).assertTrue();
let ss = fileio.createStreamSync(fpath, 'r+');
expect(ss !== null).assertTrue();
try {
let content = "hello, world";
await ss.write(content, {position:-1});
} catch (err) {
console.info('fileio_test_stream_write_async_015 has failed for ' + err);
expect(err.message == "option.position shall be positive number").assertTrue();
fileio.unlinkSync(fpath);
ss.closeSync();
done();
}
});
}); });
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册