diff --git a/src/index.ts b/src/index.ts index 1facbe5..a0380c5 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1 +1,3 @@ -console.log('heeee'); + + +export { default as sample } from "./sample" diff --git a/src/sample.ts b/src/sample.ts new file mode 100644 index 0000000..5b81933 --- /dev/null +++ b/src/sample.ts @@ -0,0 +1,11 @@ +const power = (n? : number) : number | undefined => { + if( typeof n === "undefined" || n === null){ + return undefined + } + if(typeof n !== "number"){ + return undefined + } + return Math.pow(n, 2) +} + +export default power diff --git a/test/sample.test.js b/test/sample.test.js new file mode 100644 index 0000000..a3404dd --- /dev/null +++ b/test/sample.test.js @@ -0,0 +1,25 @@ +import {sample} from "../src" + +// Describe : top level to describe a block of test below is for what +describe("Test Sample Function", () => { + // Test : is run for each test + test("Test N is Undefined", () => { + expect(sample(undefined)).toBe(undefined) // expect sample(undefined) return undefined + }) + + test("Test N is Null", () => { + expect(sample(null)).toBe(undefined) + }) + + test("Test N is not number",() => { + expect(sample("Hello")).toBe(undefined) + }) + + test("Test Normal Number",() => { + expect(sample(0)).toBe(0) + expect(sample(1)).toBe(1) + expect(sample(2)).toBe(4) + expect(sample(100)).toBe(10000) + }) + +})