From 86e3fee620f4182bd3966b2b3743cdd652d4bc0f Mon Sep 17 00:00:00 2001 From: cyanos3 Date: Tue, 5 Nov 2013 07:43:27 -0700 Subject: Add random color to Internet.js --- lib/internet.js | 10 ++++++++++ test/internet.unit.js | 7 +++++++ 2 files changed, 17 insertions(+) diff --git a/lib/internet.js b/lib/internet.js index 898769de..353a362a 100644 --- a/lib/internet.js +++ b/lib/internet.js @@ -37,6 +37,16 @@ var internet = { } return result.join("."); + }, + + color: function (baseRed255, baseGreen255, baseBlue255) { + + // based on awesome response : http://stackoverflow.com/questions/43044/algorithm-to-randomly-generate-an-aesthetically-pleasing-color-palette + var red = Math.floor((Faker.random.number(256) + baseRed255) / 2); + var green = Math.floor((Faker.random.number(256) + baseRed255) / 2); + var blue = Math.floor((Faker.random.number(256) + baseRed255) / 2); + + return '#' + red.toString(16) + green.toString(16) + blue.toString(16); } }; diff --git a/test/internet.unit.js b/test/internet.unit.js index d7d823cf..44879c37 100644 --- a/test/internet.unit.js +++ b/test/internet.unit.js @@ -82,4 +82,11 @@ describe("internet.js", function () { assert.equal(parts.length, 4); }); }); + + describe("color()", function () { + it("returns a valid hex value (like #ffffff)", function () { + var color = Faker.Internet.color(100, 100, 100); + assert.ok(color.match(/^#[a-f0-9]{6}$/)); + }); + }); }); -- cgit v1.2.3