1*082815dcSEvan Baconimport { getBuildNumber, getVersion, setBuildNumber, setVersion } from '../Version';
2*082815dcSEvan Bacon
3*082815dcSEvan Bacondescribe('version', () => {
4*082815dcSEvan Bacon  it(`uses version if it's given in config`, () => {
5*082815dcSEvan Bacon    expect(getVersion({ version: '1.2.3' })).toBe('1.2.3');
6*082815dcSEvan Bacon  });
7*082815dcSEvan Bacon
8*082815dcSEvan Bacon  it(`uses 1.0.0 if no version is given`, () => {
9*082815dcSEvan Bacon    expect(getVersion({})).toBe('1.0.0');
10*082815dcSEvan Bacon  });
11*082815dcSEvan Bacon
12*082815dcSEvan Bacon  it(`sets the CFBundleShortVersionString`, () => {
13*082815dcSEvan Bacon    expect(setVersion({ version: '0.0.1' }, {})).toMatchObject({
14*082815dcSEvan Bacon      CFBundleShortVersionString: '0.0.1',
15*082815dcSEvan Bacon    });
16*082815dcSEvan Bacon  });
17*082815dcSEvan Bacon});
18*082815dcSEvan Bacon
19*082815dcSEvan Bacondescribe('build number', () => {
20*082815dcSEvan Bacon  it(`uses ios.buildNumber if it's given in config`, () => {
21*082815dcSEvan Bacon    expect(getBuildNumber({ ios: { buildNumber: '12' } })).toEqual('12');
22*082815dcSEvan Bacon  });
23*082815dcSEvan Bacon
24*082815dcSEvan Bacon  it(`falls back to '1' if not provided`, () => {
25*082815dcSEvan Bacon    expect(getBuildNumber({ ios: { buildNumber: null } })).toEqual('1');
26*082815dcSEvan Bacon    expect(getBuildNumber({})).toEqual('1');
27*082815dcSEvan Bacon  });
28*082815dcSEvan Bacon
29*082815dcSEvan Bacon  it(`sets the CFBundleVersion`, () => {
30*082815dcSEvan Bacon    expect(setBuildNumber({ ios: { buildNumber: '21' } }, {})).toMatchObject({
31*082815dcSEvan Bacon      CFBundleVersion: '21',
32*082815dcSEvan Bacon    });
33*082815dcSEvan Bacon  });
34*082815dcSEvan Bacon});
35