@ledgerhq/live-common
Version:
Common ground for the Ledger Live apps
183 lines • 6.36 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const useAppVersionBlockCheck_1 = require("./useAppVersionBlockCheck");
describe("useAppVersionBlockCheck", () => {
describe("LLM", () => {
it("should update if current version is not compatible on android", () => {
// given
const getConfigValue = () => ({
llm: {
android: [
{
minOsVersion: "32",
version: "2.0.3",
},
],
},
});
// when
const { shouldUpdate } = (0, useAppVersionBlockCheck_1.useAppVersionBlockCheck)({
appVersion: "2.0.1",
osVersion: "32",
platform: "android",
appKey: "llm",
getConfigValue,
});
//then
expect(shouldUpdate).toBe(true);
});
it("should update if current version is not compatible on ios", () => {
const getConfigValue = () => ({
llm: {
ios: [
{
minOsVersion: "32",
version: "2.0.3",
},
],
},
});
// when
const { shouldUpdate } = (0, useAppVersionBlockCheck_1.useAppVersionBlockCheck)({
appVersion: "2.0.1",
osVersion: "32",
platform: "ios",
appKey: "llm",
getConfigValue,
});
//then
expect(shouldUpdate).toBe(true);
});
it("should not update the app if current version is not compatible on android with another os version", () => {
// given
const getConfigValue = () => ({
llm: {
android: [
{
minOsVersion: "33",
version: "2.0.3",
},
],
},
});
// when
const { shouldUpdate } = (0, useAppVersionBlockCheck_1.useAppVersionBlockCheck)({
appVersion: "2.0.1",
osVersion: "32",
platform: "android",
appKey: "llm",
getConfigValue,
});
//then
expect(shouldUpdate).toBe(false);
});
it("should not update the app if current version is not compatible on ios with another os version", () => {
// given
const getConfigValue = () => ({
llm: {
ios: [
{
minOsVersion: "33",
version: "2.0.3",
},
],
},
});
// when
const { shouldUpdate } = (0, useAppVersionBlockCheck_1.useAppVersionBlockCheck)({
appVersion: "2.0.1",
osVersion: "32",
platform: "ios",
appKey: "llm",
getConfigValue,
});
//then
expect(shouldUpdate).toBe(false);
});
it.each([
["android", "2.1.3"],
["ios", "2.1.3"],
["android", "2.1.3-rc.2"],
["ios", "2.1.3-rc.2"],
["android", "2.2.3-next.0"],
["ios", "2.2.3-next.0"],
["android", "2.0.3-rc2"],
["ios", "2.0.3-rc2"],
["android", "2.0.3-next.3"],
["ios", "2.0.3-next.3"],
])("should not update the app on %s for version %s compatible with 2.0.3", (platform, appVersion) => {
// given
const getConfigValue = () => ({
llm: {
[platform]: [
{
minOsVersion: "32",
version: "2.0.3",
},
],
},
});
// when
const { shouldUpdate } = (0, useAppVersionBlockCheck_1.useAppVersionBlockCheck)({
appVersion,
osVersion: "32",
platform: platform,
appKey: "llm",
getConfigValue,
});
// then
expect(shouldUpdate).toBe(false);
});
});
describe("LLD", () => {
it.each([
["windows", "2.110.9"],
["windows", "2.110.4-next.9"],
["macOS", "2.0.112"],
["macOS", "2.099.122-next.8"],
["linux", "1.9.33"],
["linux", "1.9.33-next.1"],
])("should not update on %s from app version version %s", (platform, appVersion) => {
// given
const getConfigValue = () => ({
lld: {
[platform]: "1.9.33",
},
});
// when
const { shouldUpdate } = (0, useAppVersionBlockCheck_1.useAppVersionBlockCheck)({
appVersion,
platform: platform,
appKey: "lld",
getConfigValue,
});
// then
expect(shouldUpdate).toBe(false);
});
it.each([
["windows", "2.110.9"],
["windows", "2.110.4-next.9"],
["macOS", "2.0.112"],
["macOS", "2.99.122-next.8"],
["linux", "1.9.33"],
["linux", "1.9.33-next.1"],
])("should update on %s from app version version %s", (platform, appVersion) => {
// given
const getConfigValue = () => ({
lld: {
[platform]: "2.111.5-next.9",
},
});
// when
const { shouldUpdate } = (0, useAppVersionBlockCheck_1.useAppVersionBlockCheck)({
appVersion,
platform: platform,
appKey: "lld",
getConfigValue,
});
// then
expect(shouldUpdate).toBe(true);
});
});
});
//# sourceMappingURL=useAppVersionBlockCheck.test.js.map