|
|
@ -1,4 +1,4 @@
|
|
|
|
import { Map as ImmutableMap } from 'immutable';
|
|
|
|
import { InstanceRecord } from 'soapbox/normalizers';
|
|
|
|
|
|
|
|
|
|
|
|
import {
|
|
|
|
import {
|
|
|
|
parseVersion,
|
|
|
|
parseVersion,
|
|
|
@ -28,7 +28,7 @@ describe('parseVersion', () => {
|
|
|
|
describe('getFeatures', () => {
|
|
|
|
describe('getFeatures', () => {
|
|
|
|
describe('emojiReacts', () => {
|
|
|
|
describe('emojiReacts', () => {
|
|
|
|
it('is true for Pleroma 2.0+', () => {
|
|
|
|
it('is true for Pleroma 2.0+', () => {
|
|
|
|
const instance = ImmutableMap({
|
|
|
|
const instance = InstanceRecord({
|
|
|
|
version: '2.7.2 (compatible; Pleroma 2.0.5-6-ga36eb5ea-plerasstodon+dev)',
|
|
|
|
version: '2.7.2 (compatible; Pleroma 2.0.5-6-ga36eb5ea-plerasstodon+dev)',
|
|
|
|
});
|
|
|
|
});
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
@ -36,7 +36,7 @@ describe('getFeatures', () => {
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('is false for Pleroma < 2.0', () => {
|
|
|
|
it('is false for Pleroma < 2.0', () => {
|
|
|
|
const instance = ImmutableMap({
|
|
|
|
const instance = InstanceRecord({
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
});
|
|
|
|
});
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
@ -44,7 +44,7 @@ describe('getFeatures', () => {
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('is false for Mastodon', () => {
|
|
|
|
it('is false for Mastodon', () => {
|
|
|
|
const instance = ImmutableMap({ version: '3.1.4' });
|
|
|
|
const instance = InstanceRecord({ version: '3.1.4' });
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
expect(features.emojiReacts).toBe(false);
|
|
|
|
expect(features.emojiReacts).toBe(false);
|
|
|
|
});
|
|
|
|
});
|
|
|
@ -52,19 +52,19 @@ describe('getFeatures', () => {
|
|
|
|
|
|
|
|
|
|
|
|
describe('suggestions', () => {
|
|
|
|
describe('suggestions', () => {
|
|
|
|
it('is true for Mastodon 2.4.3+', () => {
|
|
|
|
it('is true for Mastodon 2.4.3+', () => {
|
|
|
|
const instance = ImmutableMap({ version: '2.4.3' });
|
|
|
|
const instance = InstanceRecord({ version: '2.4.3' });
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
expect(features.suggestions).toBe(true);
|
|
|
|
expect(features.suggestions).toBe(true);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('is false for Mastodon < 2.4.3', () => {
|
|
|
|
it('is false for Mastodon < 2.4.3', () => {
|
|
|
|
const instance = ImmutableMap({ version: '2.4.2' });
|
|
|
|
const instance = InstanceRecord({ version: '2.4.2' });
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
expect(features.suggestions).toBe(false);
|
|
|
|
expect(features.suggestions).toBe(false);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('is false for Pleroma', () => {
|
|
|
|
it('is false for Pleroma', () => {
|
|
|
|
const instance = ImmutableMap({
|
|
|
|
const instance = InstanceRecord({
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
});
|
|
|
|
});
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
@ -74,19 +74,19 @@ describe('getFeatures', () => {
|
|
|
|
|
|
|
|
|
|
|
|
describe('trends', () => {
|
|
|
|
describe('trends', () => {
|
|
|
|
it('is true for Mastodon 3.0.0+', () => {
|
|
|
|
it('is true for Mastodon 3.0.0+', () => {
|
|
|
|
const instance = ImmutableMap({ version: '3.0.0' });
|
|
|
|
const instance = InstanceRecord({ version: '3.0.0' });
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
expect(features.trends).toBe(true);
|
|
|
|
expect(features.trends).toBe(true);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('is false for Mastodon < 3.0.0', () => {
|
|
|
|
it('is false for Mastodon < 3.0.0', () => {
|
|
|
|
const instance = ImmutableMap({ version: '2.4.3' });
|
|
|
|
const instance = InstanceRecord({ version: '2.4.3' });
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
expect(features.trends).toBe(false);
|
|
|
|
expect(features.trends).toBe(false);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('is false for Pleroma', () => {
|
|
|
|
it('is false for Pleroma', () => {
|
|
|
|
const instance = ImmutableMap({
|
|
|
|
const instance = InstanceRecord({
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
});
|
|
|
|
});
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
@ -96,13 +96,13 @@ describe('getFeatures', () => {
|
|
|
|
|
|
|
|
|
|
|
|
describe('focalPoint', () => {
|
|
|
|
describe('focalPoint', () => {
|
|
|
|
it('is true for Mastodon 2.3.0+', () => {
|
|
|
|
it('is true for Mastodon 2.3.0+', () => {
|
|
|
|
const instance = ImmutableMap({ version: '2.3.0' });
|
|
|
|
const instance = InstanceRecord({ version: '2.3.0' });
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
expect(features.focalPoint).toBe(true);
|
|
|
|
expect(features.focalPoint).toBe(true);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('is false for Pleroma', () => {
|
|
|
|
it('is false for Pleroma', () => {
|
|
|
|
const instance = ImmutableMap({
|
|
|
|
const instance = InstanceRecord({
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
version: '2.7.2 (compatible; Pleroma 1.1.50-42-g3d9ac6ae-develop)',
|
|
|
|
});
|
|
|
|
});
|
|
|
|
const features = getFeatures(instance);
|
|
|
|
const features = getFeatures(instance);
|
|
|
|