43 lines
		
	
	
	
		
			1.1 KiB
			
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
	
		
			1.1 KiB
			
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
// Copyright 2024 Signal Messenger, LLC
 | 
						|
// SPDX-License-Identifier: AGPL-3.0-only
 | 
						|
 | 
						|
import { assert } from 'chai';
 | 
						|
import type { WritableDB } from '../../sql/Interface';
 | 
						|
import { sql } from '../../sql/util';
 | 
						|
import { createDB, updateToVersion, explain } from './helpers';
 | 
						|
 | 
						|
describe('SQL/updateToSchemaVersion1120', () => {
 | 
						|
  let db: WritableDB;
 | 
						|
  beforeEach(() => {
 | 
						|
    db = createDB();
 | 
						|
    updateToVersion(db, 1120);
 | 
						|
  });
 | 
						|
 | 
						|
  afterEach(() => {
 | 
						|
    db.close();
 | 
						|
  });
 | 
						|
 | 
						|
  it('uses index for deleting edited messages', () => {
 | 
						|
    const details = explain(
 | 
						|
      db,
 | 
						|
      sql`DELETE FROM edited_messages WHERE messageId = 'messageId';`
 | 
						|
    );
 | 
						|
 | 
						|
    assert.strictEqual(
 | 
						|
      details,
 | 
						|
      'SEARCH edited_messages USING COVERING INDEX edited_messages_messageId (messageId=?)'
 | 
						|
    );
 | 
						|
  });
 | 
						|
 | 
						|
  it('uses index for deleting mentions', () => {
 | 
						|
    const details = explain(
 | 
						|
      db,
 | 
						|
      sql`DELETE FROM mentions WHERE messageId = 'messageId';`
 | 
						|
    );
 | 
						|
 | 
						|
    assert.strictEqual(
 | 
						|
      details,
 | 
						|
      'SEARCH mentions USING COVERING INDEX mentions_messageId (messageId=?)'
 | 
						|
    );
 | 
						|
  });
 | 
						|
});
 |