가입 트리거 서울 리전 · 탈퇴 시 업로드 파일 삭제 · 위치 인증 위경도 미저장
This commit is contained in:
@@ -456,8 +456,9 @@ describe('방문 — S-H-PLACE (fn-quest-verify-place)', () => {
|
||||
const logs = await db().collection(`users/${UID}/activityLogs`).get();
|
||||
expect(only(logs.docs).get('rejectReason')).toBe('E-QST-02');
|
||||
const evidence = only(logs.docs).get('evidence') as
|
||||
{ place: { gps: { mocked: boolean } } };
|
||||
expect(evidence.place.gps.mocked).toBe(true);
|
||||
{ place: { location: { mocked: boolean }; gps?: unknown } };
|
||||
expect(evidence.place.location.mocked).toBe(true);
|
||||
expect(evidence.place.gps).toBeUndefined();
|
||||
});
|
||||
|
||||
it('좌표만으로도 반경 안이면 지급한다 — QR · 사진은 추가 수단(C-03)', async () => {
|
||||
@@ -517,8 +518,9 @@ describe('방문 — S-H-PLACE (fn-quest-verify-place)', () => {
|
||||
const result = await call(fnQuestVerifyPlace, { ...q, qr: 'code-ok' });
|
||||
expect(result.rewarded).toBe(100);
|
||||
const ok = (await db().collection(`users/${UID}/activityLogs`).where('verified', '==', true).get()).docs;
|
||||
const evidence = only(ok).get('evidence') as { place: { gps: unknown; qr: { value: string; ok: boolean } } };
|
||||
expect(evidence.place.gps).toBeDefined();
|
||||
const evidence = only(ok).get('evidence') as { place: { location: { distanceM: number }; qr: { value: string; ok: boolean } } };
|
||||
expect(evidence.place.location.distanceM).toBeGreaterThanOrEqual(0);
|
||||
expect(JSON.stringify(evidence)).not.toMatch(/"(lat|lng)"/);
|
||||
expect(evidence.place.qr).toEqual({ value: 'code-ok', ok: true });
|
||||
// GPS 없이(반경 밖) QR 만으로는 0건.
|
||||
await db().doc('quests/place-quest-qr2').set({ type: 'location', placeId: PLACE, verifyMethods: ['gps', 'qr'] });
|
||||
|
||||
Reference in New Issue
Block a user