Merged PR 871: Function(音声ファイル自動削除)修正
## 概要 [Task4060: Function(音声ファイル自動削除)修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/4060) - 自動ファイル削除で生ファイル名を利用するように修正しUTを追従しました。 ## レビューポイント - 生ファイル名を使う方法は適切でしょうか? - テストの修正は適切でしょうか? ## UIの変更 - なし ## クエリの変更 - select対象をraw_file_nameに修正 ## 動作確認状況 - ローカルで確認 - 行った修正がデグレを発生させていないことを確認できるか - 具体的にどのような確認をしたか - テストが通ることを確認
This commit is contained in:
parent
c469f943f1
commit
69241ed36c
@ -14,6 +14,8 @@ export class AudioFile {
|
||||
@Column()
|
||||
file_name: string;
|
||||
@Column()
|
||||
raw_file_name: string;
|
||||
@Column()
|
||||
author_id: string;
|
||||
@Column()
|
||||
work_type_id: string;
|
||||
|
||||
@ -29,9 +29,9 @@ type TargetTaskInfo = {
|
||||
|
||||
/**
|
||||
* ファイル名
|
||||
* column: audio_files.file_name
|
||||
* column: audio_files.raw_file_name
|
||||
*/
|
||||
file_name: string;
|
||||
raw_file_name: string;
|
||||
|
||||
/**
|
||||
* アカウントID
|
||||
@ -64,12 +64,12 @@ export async function deleteAudioFilesProcessing(
|
||||
// タスクに紐づくファイルを削除
|
||||
for (const target of targets) {
|
||||
try {
|
||||
const { account_id, country, file_name } = target;
|
||||
const { account_id, country, raw_file_name } = target;
|
||||
await blobStorageService.deleteFile(
|
||||
context,
|
||||
account_id,
|
||||
country,
|
||||
file_name
|
||||
raw_file_name
|
||||
);
|
||||
context.log(`file delete success. target=${JSON.stringify(target)}`);
|
||||
} catch (e) {
|
||||
@ -168,7 +168,7 @@ export async function getProcessTargets(
|
||||
// SELECTでエイリアスを指定して、結果オブジェクトのプロパティとTargetTaskInfoのプロパティを一致させる
|
||||
.select("tasks.id", "id")
|
||||
.addSelect("tasks.audio_file_id", "audio_file_id")
|
||||
.addSelect("audio_files.file_name", "file_name")
|
||||
.addSelect("audio_files.raw_file_name", "raw_file_name")
|
||||
.addSelect("accounts.id", "account_id")
|
||||
.addSelect("accounts.country", "country")
|
||||
.where("tasks.finished_at IS NOT NULL")
|
||||
|
||||
@ -499,6 +499,7 @@ export const makeTestTask = async (
|
||||
owner_user_id: ownerUserId,
|
||||
url: `https://example.com/${identifierName}`,
|
||||
file_name: `test${identifierName}.wav`,
|
||||
raw_file_name: `test${identifierName}.wav`,
|
||||
author_id: "test_author",
|
||||
work_type_id: "test_work_type",
|
||||
started_at: new Date(),
|
||||
|
||||
@ -150,7 +150,7 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
@ -178,14 +178,14 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
@ -207,14 +207,14 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
@ -242,21 +242,21 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
{
|
||||
id: task3.id,
|
||||
audio_file_id: file3.id,
|
||||
file_name: file3.file_name,
|
||||
raw_file_name: file3.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
@ -278,21 +278,21 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
{
|
||||
id: task3.id,
|
||||
audio_file_id: file3.id,
|
||||
file_name: file3.file_name,
|
||||
raw_file_name: file3.raw_file_name,
|
||||
account_id: account.id,
|
||||
country: account.country,
|
||||
},
|
||||
@ -374,7 +374,7 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
@ -389,7 +389,7 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
@ -422,14 +422,14 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
@ -456,14 +456,14 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
@ -496,21 +496,21 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task3.id,
|
||||
audio_file_id: file3.id,
|
||||
file_name: file3.file_name,
|
||||
raw_file_name: file3.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
@ -537,21 +537,21 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task.id,
|
||||
audio_file_id: file.id,
|
||||
file_name: file.file_name,
|
||||
raw_file_name: file.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task2.id,
|
||||
audio_file_id: file2.id,
|
||||
file_name: file2.file_name,
|
||||
raw_file_name: file2.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task3.id,
|
||||
audio_file_id: file3.id,
|
||||
file_name: file3.file_name,
|
||||
raw_file_name: file3.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
@ -660,14 +660,14 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task01.id,
|
||||
audio_file_id: file01.id,
|
||||
file_name: file01.file_name,
|
||||
raw_file_name: file01.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task02.id,
|
||||
audio_file_id: file02.id,
|
||||
file_name: file02.file_name,
|
||||
raw_file_name: file02.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
@ -711,28 +711,28 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task01.id,
|
||||
audio_file_id: file01.id,
|
||||
file_name: file01.file_name,
|
||||
raw_file_name: file01.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task02.id,
|
||||
audio_file_id: file02.id,
|
||||
file_name: file02.file_name,
|
||||
raw_file_name: file02.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task03.id,
|
||||
audio_file_id: file03.id,
|
||||
file_name: file03.file_name,
|
||||
raw_file_name: file03.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task04.id,
|
||||
audio_file_id: file04.id,
|
||||
file_name: file04.file_name,
|
||||
raw_file_name: file04.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
@ -764,28 +764,28 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task01.id,
|
||||
audio_file_id: file01.id,
|
||||
file_name: file01.file_name,
|
||||
raw_file_name: file01.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task02.id,
|
||||
audio_file_id: file02.id,
|
||||
file_name: file02.file_name,
|
||||
raw_file_name: file02.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task03.id,
|
||||
audio_file_id: file03.id,
|
||||
file_name: file03.file_name,
|
||||
raw_file_name: file03.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task04.id,
|
||||
audio_file_id: file04.id,
|
||||
file_name: file04.file_name,
|
||||
raw_file_name: file04.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
@ -829,42 +829,42 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task01.id,
|
||||
audio_file_id: file01.id,
|
||||
file_name: file01.file_name,
|
||||
raw_file_name: file01.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task02.id,
|
||||
audio_file_id: file02.id,
|
||||
file_name: file02.file_name,
|
||||
raw_file_name: file02.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task03.id,
|
||||
audio_file_id: file03.id,
|
||||
file_name: file03.file_name,
|
||||
raw_file_name: file03.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task04.id,
|
||||
audio_file_id: file04.id,
|
||||
file_name: file04.file_name,
|
||||
raw_file_name: file04.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task05.id,
|
||||
audio_file_id: file05.id,
|
||||
file_name: file05.file_name,
|
||||
raw_file_name: file05.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task06.id,
|
||||
audio_file_id: file06.id,
|
||||
file_name: file06.file_name,
|
||||
raw_file_name: file06.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
@ -891,42 +891,42 @@ describe("getProcessTargets | 削除対象を特定するQueryが正常に動作
|
||||
{
|
||||
id: task01.id,
|
||||
audio_file_id: file01.id,
|
||||
file_name: file01.file_name,
|
||||
raw_file_name: file01.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task02.id,
|
||||
audio_file_id: file02.id,
|
||||
file_name: file02.file_name,
|
||||
raw_file_name: file02.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task03.id,
|
||||
audio_file_id: file03.id,
|
||||
file_name: file03.file_name,
|
||||
raw_file_name: file03.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task04.id,
|
||||
audio_file_id: file04.id,
|
||||
file_name: file04.file_name,
|
||||
raw_file_name: file04.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task05.id,
|
||||
audio_file_id: file05.id,
|
||||
file_name: file05.file_name,
|
||||
raw_file_name: file05.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task06.id,
|
||||
audio_file_id: file06.id,
|
||||
file_name: file06.file_name,
|
||||
raw_file_name: file06.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
@ -989,7 +989,7 @@ describe("deleteRecords | 削除対象タスク等を削除できる", () => {
|
||||
{
|
||||
id: 1,
|
||||
audio_file_id: 1,
|
||||
file_name: "test",
|
||||
raw_file_name: "test",
|
||||
account_id: 1,
|
||||
country: "US",
|
||||
},
|
||||
@ -1184,42 +1184,42 @@ describe("deleteRecords | 削除対象タスク等を削除できる", () => {
|
||||
{
|
||||
id: task01.id,
|
||||
audio_file_id: file01.id,
|
||||
file_name: file01.file_name,
|
||||
raw_file_name: file01.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task02.id,
|
||||
audio_file_id: file02.id,
|
||||
file_name: file02.file_name,
|
||||
raw_file_name: file02.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task03.id,
|
||||
audio_file_id: file03.id,
|
||||
file_name: file03.file_name,
|
||||
raw_file_name: file03.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task04.id,
|
||||
audio_file_id: file04.id,
|
||||
file_name: file04.file_name,
|
||||
raw_file_name: file04.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
{
|
||||
id: task05.id,
|
||||
audio_file_id: file05.id,
|
||||
file_name: file05.file_name,
|
||||
raw_file_name: file05.raw_file_name,
|
||||
account_id: account01.id,
|
||||
country: account01.country,
|
||||
},
|
||||
{
|
||||
id: task06.id,
|
||||
audio_file_id: file06.id,
|
||||
file_name: file06.file_name,
|
||||
raw_file_name: file06.raw_file_name,
|
||||
account_id: account02.id,
|
||||
country: account02.country,
|
||||
},
|
||||
@ -1278,6 +1278,7 @@ describe("deleteRecords | 削除対象タスク等を削除できる", () => {
|
||||
owner_user_id: admin.id,
|
||||
url: `https://example.com/${index}`,
|
||||
file_name: `test${index}.wav`,
|
||||
raw_file_name: `test${index}.wav`,
|
||||
author_id: "test_author",
|
||||
work_type_id: "test_work_type",
|
||||
started_at: new Date(),
|
||||
@ -1467,19 +1468,19 @@ describe("deleteAudioFilesProcessing", () => {
|
||||
// 想定通りの呼び出しが行われているか
|
||||
{
|
||||
const { accountId, country, fileName } = args[0];
|
||||
expect(fileName).toEqual(file1.file_name);
|
||||
expect(fileName).toEqual(file1.raw_file_name);
|
||||
expect(accountId).toEqual(account01.id);
|
||||
expect(country).toEqual(account01.country);
|
||||
}
|
||||
{
|
||||
const { accountId, country, fileName } = args[1];
|
||||
expect(fileName).toEqual(file2.file_name);
|
||||
expect(fileName).toEqual(file2.raw_file_name);
|
||||
expect(accountId).toEqual(account01.id);
|
||||
expect(country).toEqual(account01.country);
|
||||
}
|
||||
{
|
||||
const { accountId, country, fileName } = args[2];
|
||||
expect(fileName).toEqual(file3.file_name);
|
||||
expect(fileName).toEqual(file3.raw_file_name);
|
||||
expect(accountId).toEqual(account02.id);
|
||||
expect(country).toEqual(account02.country);
|
||||
}
|
||||
@ -1556,7 +1557,7 @@ describe("deleteAudioFilesProcessing", () => {
|
||||
.find((log) => log.includes(MANUAL_RECOVERY_REQUIRED));
|
||||
expect(log).toBeDefined();
|
||||
expect(log).toEqual(
|
||||
`[MANUAL_RECOVERY_REQUIRED] file delete failed. target={"id":"1","audio_file_id":"1","account_id":"1","country":"US","file_name":"testcase03.wav"}`
|
||||
`[MANUAL_RECOVERY_REQUIRED] file delete failed. target={"id":"1","audio_file_id":"1","account_id":"1","country":"US","raw_file_name":"testcase03.wav"}`
|
||||
);
|
||||
});
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user