Skip to content

Commit

Permalink
add tests for meteor build
Browse files Browse the repository at this point in the history
  • Loading branch information
johnthepink committed Sep 6, 2016
1 parent 70dad27 commit 5d7e80a
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 2 deletions.
60 changes: 60 additions & 0 deletions src/__test/meteor.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,64 @@ describe("meteor", () => {
})
));
});
describe.only("build", () => {
it("should reject if no server param", (done) => {
process.argv = [];
process.env.PATH = `${process.cwd()}/src/__test/mocks:${process.env.PATH}`;
meteor.build(process.env)
.catch((error) => {
assert.isOk(error);
done();
})
;
});
it("should reject if exec error", (done) => {
process.argv = ["build", "example.com"];
process.env.PATH = `${process.cwd()}/src/__test/mocks:${process.env.PATH}`;
process.env.METEOR_INPUT_DIR = "blahblah";
meteor.build(process.env)
.catch((error) => {
assert.isOk(error);
done();
})
;
});
it("should call meteor", (done) => {
process.argv = ["build", "example.com"];
process.env.PATH = `${process.cwd()}/src/__test/mocks:${process.env.PATH}`;
process.env.METEOR_INPUT_DIR = ".";
meteor.build(process.env)
.then((result) => {
assert.equal(result, "built");
done();
})
;
});
it("should call meteor with settings", (done) => {
process.argv = ["build", "example.com", "path/to/settings.json"];
process.env.PATH = `${process.cwd()}/src/__test/mocks:${process.env.PATH}`;
process.env.METEOR_INPUT_DIR = ".";
meteor.build(process.env)
.then((result) => {
assert.equal(result, "built");
done();
})
;
});
// no arrow syntax to preserve `this`
// eslint-disable-next-line func-names
it("should try to open xcode and wait 5 seconds", function (done) {
this.timeout(6000);
process.argv = ["build", "example.com", "path/to/settings.json"];
process.env.PATH = `${process.cwd()}/src/__test/mocks:${process.env.PATH}`;
process.env.METEOR_INPUT_DIR = ".";
process.env.XCODE_PROJECT = ".";
meteor.build(process.env)
.then((result) => {
assert.equal(result, "built");
done();
})
;
});
});
});
5 changes: 3 additions & 2 deletions src/meteor.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,13 @@ const build = (env) => (
stdio: [0],
env,
});
console.log(process.env.XCODE_PROJECT);
execSync("sleep 5");

return resolve();
return resolve("built");
} catch (error) {
// fail silently if no xcode project
return resolve();
return resolve("built");
}
})
);
Expand Down

0 comments on commit 5d7e80a

Please sign in to comment.