1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-09-19 17:52:45 +02:00

fix: OSS export feature_env was always enabled for feature due to SQL join overwrite (#10667)

This commit is contained in:
David Leek 2025-09-18 10:01:25 +02:00 committed by GitHub
parent c2f6cfe45f
commit 831b4541a9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 42 additions and 0 deletions

View File

@ -0,0 +1,35 @@
import dbInit, { type ITestDb } from '../../test/e2e/helpers/database-init.js';
import getLogger from '../../test/fixtures/no-logger.js';
import { SYSTEM_USER_ID } from '../server-impl.js';
let db: ITestDb;
beforeAll(async () => {
db = await dbInit('feature_environment_store', getLogger, { isOss: true });
getLogger.setMuteError(true);
});
afterAll(async () => {
if (db) {
await db.destroy();
}
getLogger.setMuteError(false);
});
test('getAllByFeatures returns correct enabled state', async () => {
await db.stores.featureToggleStore.create('default', {
name: 'test-toggle',
createdByUserId: SYSTEM_USER_ID,
});
await db.stores.featureEnvironmentStore.addEnvironmentToFeature(
'test-toggle',
'development',
false,
);
const featureEnvs =
await db.stores.featureEnvironmentStore.getAllByFeatures(
['test-toggle'],
'development',
);
expect(featureEnvs[0].enabled).toBe(false);
});

View File

@ -124,6 +124,13 @@ export class FeatureEnvironmentStore implements IFeatureEnvironmentStore {
'default',
'development',
'production',
])
.select([
'feature_name',
'environment',
'variants',
'last_seen_at',
`${T.featureEnvs}.enabled`,
]);
}
return queryBuilder;