วันเสาร์ที่ 14 เมษายน พ.ศ. 2561

Commit 1-3 Wordbucket

เนื่องจากเพิ่งเริ่มสร้างโปรเจค commit แรกๆจึงสั้นเลยนำมารวมกัน(1-3)ครับ

Assignment1 : Wordbucket GitHub Link

Commit 1 : start assignment1 : wordbucket

Commits on Feb 25, 2018
Link GitHub Commit 1 Wordbucket

ทำการสร้าง project ชื่อ a1 (มาจาก assignment1) และ สร้าง functional test แบบง่าย ๆ ตามหนังสือ obeythetestinggoat

@@ -0,0 +1,6 @@
+from selenium import webdriver
+
+browser = webdriver.Firefox()
+browser.get('http://localhost:8000')
+
+assert 'Django' in browser.title

Commit 2 : add README

Commits on Feb 25, 2018
Link GitHub Commit 2 Wordbucket

ใส่ไฟล์ README.md เข้าไปประกอบโปรเจค

@@ -0,0 +1 @@
+# wordbucket

Commit 3 : First webpage's title

Commits on Feb 26, 2018
Link GitHub Commit 3 Wordbucket

- ทำการสร้าง app ชื่อ wordbucket แก้ urls.py ของโปรเจค ให้เชื่อมต่อกับชี้ทางกับ function home_page() ใน views.py ของ app

@@ -14,8 +14,10 @@
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
-from django.urls import path
+from django.urls import include, path, re_path
+from wordbucket import views
urlpatterns = [
+ path('', views.home_page, name='home'),
path('admin/', admin.site.urls),
]

- เพิ่ม user story และ function พื้นฐานของ functional test (เช่น setUp, tearDown) ใส่ใน functional_tests.py โดยเป็นเรื่องของ user ชื่อ Ann เข้ามาลองใช้ webapp. ของเรา

@@ -1,6 +1,25 @@
from selenium import webdriver
+import unittest
-browser = webdriver.Firefox()
-browser.get('http://localhost:8000')
+class NewVisitorTest(unittest.TestCase):
-assert 'Django' in browser.title
+ def setUp(self):
+ self.browser = webdriver.Firefox()
+
+ def tearDown(self):
+ self.browser.quit()
+
+ def test_can_start_a_list_and_retrieve_it_later(self):
+ # Ann has heard about a cool new online word app. She goes
+ # to check out its homepage
+ self.browser.get('http://localhost:8000')
+
+ # She notices the page title and header mention Word Bucket lists
+ self.assertIn('Word Bucket', self.browser.title)
+ self.fail('Finish the test!')
+
+ # She is invited to enter a word item straight away
+ # She types "weeb" into a text box
+
+if __name__ == '__main__':
+ unittest.main(warnings='ignore')

- แก้ config app ชื่อ wordbucket

@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class WordbucketConfig(AppConfig):
+ name = 'wordbucket'

- สร้าง test homepage แบบง่ายๆตามหนังสือ obeythetestinggoat ใน tests.py ของ app

@@ -0,0 +1,19 @@
+from django.urls import resolve
+from django.test import TestCase
+from django.http import HttpRequest
+
+from wordbucket.views import home_page
+
+class HomePageTest(TestCase):
+
+ def test_root_url_resolves_to_home_page_view(self):
+ found = resolve('/')
+ self.assertEqual(found.func, home_page)
+
+ def test_home_page_returns_correct_html(self):
+ request = HttpRequest()
+ response = home_page(request)
+ html = response.content.decode('utf8')
+ self.assertTrue(html.startswith('<html>'))
+ self.assertIn('<title>Word Bucket</title>', html)
+ self.assertTrue(html.endswith('</html>'))

- สร้างหน้า homepage แรกของ assignment แบบง่ายๆ(มีแต่ title)

@@ -0,0 +1,6 @@
+from django.shortcuts import render
+from django.http import HttpResponse
+
+# Create your views here.
+def home_page(request):
+ return HttpResponse('<html><title>Word Bucket</title></html>')

ไม่มีความคิดเห็น:

แสดงความคิดเห็น