PageRenderTime 32ms CodeModel.GetById 9ms RepoModel.GetById 1ms app.codeStats 0ms

/d3py/test.py

https://github.com/followyourheart/d3py
Python | 83 lines | 67 code | 16 blank | 0 comment | 1 complexity | 93fec20927026e3fe8d98aba33470283 MD5 | raw file
  1. import unittest
  2. import css
  3. import pandas
  4. import d3py
  5. import javascript
  6. class TestCSS(unittest.TestCase):
  7. def setUp(self):
  8. self.css = css.CSS()
  9. def test_init(self):
  10. out = css.CSS({"#test":{"fill":"red"}})
  11. self.assertTrue(out["#test"] == {"fill":"red"})
  12. def test_get(self):
  13. self.css["#test"] = {"fill":"red"}
  14. self.assertTrue(self.css["#test"] == {"fill":"red"})
  15. def test_set(self):
  16. self.css["#test"] = {"fill":"red"}
  17. self.css["#test"] = {"stroke":"black"}
  18. self.assertTrue(self.css["#test"] == {"fill":"red", "stroke":"black"})
  19. def test_add(self):
  20. a = css.CSS()
  21. b = css.CSS()
  22. a["#foo"] = {"fill":"red"}
  23. a["#bar"] = {"fill":"blue"}
  24. b["#foo"] = {"stroke":"green"}
  25. b["#bear"] = {"fill":"yellow"}
  26. out = a + b
  27. expected = css.CSS({
  28. "#foo":{
  29. "fill":"red",
  30. "stroke":"green"
  31. },
  32. "#bar" : {"fill":"blue"},
  33. "#bear" : {"fill":"yellow"}
  34. })
  35. self.assertTrue(out.rules == expected.rules)
  36. def test_str(self):
  37. self.css["#test"] = {"fill":"red"}
  38. out = str(self.css)
  39. self.assertTrue(out == "#test {\n\tfill: red;\n}\n\n")
  40. class Test_d3py(unittest.TestCase):
  41. def setUp(self):
  42. self.df = pandas.DataFrame({
  43. "count": [1,2,3],
  44. "time": [1326825168, 1326825169, 1326825170]
  45. })
  46. def test_data_to_json(self):
  47. p = d3py.Figure(self.df)
  48. j = p.data_to_json()
  49. class Test_JavaScript_object_lookup(unittest.TestCase):
  50. def setUp(self):
  51. self.g = javascript.Selection("g").attr("color", "red")
  52. self.j = javascript.JavaScript() + self.g
  53. self.f = javascript.Function("test", None, "return 5")
  54. def test_getobject(self):
  55. self.assertTrue(self.j.get_object("g", javascript.Selection) == self.g)
  56. def test_inplace_mod(self):
  57. self.g.attr("test", "test")
  58. self.assertTrue(self.j.get_object("g", javascript.Selection) == self.g)
  59. def test_add_fucntion(self):
  60. self.j += self.f
  61. self.assertTrue(self.j.get_object("test", javascript.Function) == self.f)
  62. def test_prepend_function(self):
  63. self.j += self.f
  64. self.f = "console.debug('hello')" + self.f
  65. self.assertTrue(self.j.get_object("test", javascript.Function) == self.f)
  66. if __name__ == '__main__':
  67. unittest.main()