Guest User

Untitled

a guest
Jan 24th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. it('action(value) should reset the forms pool only if value is true', () => {
  2. [
  3. [true, 1],
  4. [false, 0],
  5. ].forEach(([value, calledTimes]) => {
  6. spyResetFormsPool.calls.reset();
  7.  
  8. component.action(value); // type error #1
  9.  
  10. expect(spyResetFormsPool).toHaveBeenCalledTimes(calledTimes); // type error #2
  11. });
  12. });
  13.  
  14. it('action(value) should reset the forms pool only if value is true', () => {
  15. [
  16. [true, 1],
  17. [false, 0],
  18. ].forEach(([value, calledTimes]) => {
  19. spyResetFormsPool.calls.reset();
  20.  
  21. component.action(value as boolean); // necessary cast
  22.  
  23. expect(spyResetFormsPool).toHaveBeenCalledTimes(calledTimes as number); // necessary cast
  24. });
  25. });
  26.  
  27. it('action(value) should reset the forms pool only if value is true', () => {
  28. [
  29. { value: true, calledTimes: 1 },
  30. { value: false, calledTimes: 0 },
  31. ].forEach(({ value, calledTimes }) => {
  32. spyResetFormsPool.calls.reset();
  33.  
  34. component.action(value);
  35.  
  36. expect(spyResetFormsPool).toHaveBeenCalledTimes(calledTimes);
  37. });
  38. });
  39.  
  40. it('action(value) should reset the forms pool only if value is true', () => {
  41. for (const {value, calledTimes} of [
  42. {value: true, calledTimes: 1},
  43. {value: false, calledTimes: 0},
  44. ]) {
  45. spyResetFormsPool.calls.reset();
  46.  
  47. component.action(value);
  48.  
  49. expect(spyResetFormsPool).toHaveBeenCalledTimes(calledTimes);
  50. }
  51. });
  52.  
  53. import YamlTableReader, {fixtureData, TestData} from "./YamlTableReader";
  54.  
  55. describe("TestSuite", () => {
  56. describe("Real TestCase with Data Fixture", () => {
  57.  
  58. // now using tagged template-string to auto convert into YamlTableReader.
  59.  
  60. var testdata = fixtureData `
  61.  
  62. | ID | Value1 | Value2 | Squared |
  63. | 0 |1 | 1 | 1 |
  64. | 1 |2 | 2 | 4 |
  65. | 2 |3 | 3 | 91 |
  66.  
  67. `;
  68. // This actually creates a test for each row of the table above
  69. testdata.describeEach("Square Test","[ID={ID}]:{Value1} x {Value2} should be equal to {Squared}",
  70. (row: {Value1: number, Value2: number, Squared: number}) => {
  71. expect((row.Value1 * row.Value2)).toBe(row.Squared)
  72. }
  73. );
  74. });
  75.  
  76. Failures:
  77. 1) TestSuite 2 Real TestCase with Data Fixture Square Test : [ID=2]:3 x 3 should be equal to 91
  78. Message:
  79. Expected 9 to be 91.
Add Comment
Please, Sign In to add comment