brotherton-erpnext/.travis.yml
Ameya Shenoy 5c62368a65 [Agriculture Domain] (#11663)
* created Soil Analysis, Water Analysis, Weather and Fertilizer doctype

* soil doctype edited and crop doctype added

* minor stuff

* Land Unit + Leaflet

* crop cycle added

* Land Unit changes + Crop cycle

* autoname for plant_analysis

* created Agriculture Task

* minor stuff

* - deleted agriculture_task
- current state after the call

* [Agriculture] modified fertilizer doctype to have a link to Item
This was done so that the `Fertilizer` doctype could track the contents exclusive to the fertilizer, whereas the `Fertilizer Item` could be a seperate entity, so as to leverage the existing ERPNext doctypes

* Added fields to `Water Analysis` doctype
- Collection Datetime
- Laboratory Testing Datetime
- Results Datetime (default to Laboratory Testing Datetime)

* Edited the doctypes `Agrivulture Task`, `Pest` and `Soil Texture`
- Created `agriculture task` doctype
- added fields `Common Name`, `Scientific Name`, `Treatment` and `Treatment Options` to `Pest` doctype
- edited `Soil Texture` doctype to contain a soil texture ternary plot diagram made using SnapSVG. The code was put in public folder so as to be accessible by the entire agriculture module

* Recursively reflect child land unit feature changes on parents

* fixed feature repition bug

* added legeneds to ternary plot

* added stuff

* changes

* fix Task

* reverted the Task Doctype to have naming in the form TASK.#####

* fixed modifications made to TASK doctype

* [dirty commit] added auto create Task from Crop on creation of Crop Cycle

* Changed the Crop Cycle Doctype
- Deleted the "Crop Cycly Task" doctype and its link from "Crop Cycle"
- Creation of a new Project with the same name as the Crop Cycle on creation of a new Crop Cycle
- Creation of all the tasks imported from Agriculture Task doctype of the Crop in the Crop Cycle

* [Agriculture Module] Modifications
- Created childtable doctype "Pest Detected"
- Added childtable "Pest Detected" to Pest
- Modified "Agriculture Task" to include "Start Day" and "End Day" of task
- Modified the code in "Crop Cycle" to create a parent task with same name as Crop Cycle

* [Agriculture Module] fixed Pest doctype not saving issue

* [Agrcilture Module] Changes in Crop Cycle
- removed the creation of a master task on creation of a new crop cycle
- temporary fix to add the pest tasks from the pests added in crop cycle

* land_unit_tree.js fields modified to have field objects instead of just field names

* Revert "land_unit_tree.js modified"

* land_unit_tree.js fields modified to have field objects instead of just field names

* [Agriculture Domain] Converted Agriculture Module to a Domain
- Converted into a Domain field from Select to Link field in Company doctype, linked to Domain doctype
- Agriculture (alpha) is now a Domain

* land_unit area aggregation enabled

* land_unit.py checks feature diff for every ancestor and not just the parent

* Removed unnecessary print messages

* agriculture.py modified to include fixtures

* fixtures added to setup.py inside agriculture module

* [Agriculture Domain] UI tests added
- 'materials' table renamed to 'materials_required' in 'Crop'
- wrote UI test for Crop, Fertilizer, Crop Cycle, Pest, Water Analysis, Soil Texture
- moved creation of tasks from client side to server side in Crop Cycle
- Plant Analysis, Water Analysis, Soil Analysis, Soil Texture docs are now autonamed in the format PAnalysis.#####, WAnalysis.#####, SAnalysis.#####, STexture.##### respectively
- company_name changed in domains.py from 'Schrute Farms.' to 'Schrute Farms'

* [Agriculture Domain] Mostly written server side tests and moved client side code to server side
- moved client side code to server side for Crop, Water Analysis, Pest, Soil Texture,
- wrote server side tests for Crop, Crop Cycle, Fertilizer, Soil Texture, Pest
- NOTE: none of the server side codes were tested

* [Agriculture Domain] All server side tests working locally

* [Agriculture Domain] Testing
- added sample test for Land Unit, which needs to be modified to test multiple things
- modified tests to be independant of each other

* Land Units tests added and area aggregation code migrated to server side

* added land_unit server side tests and on_trash added to land_unit

* Changing field location for start date

* [Agriculture Domain] deleted unnecessary comments

* [Agriculture Domain] reverted changes

* [Agriculture Domain] Modified the code to replace Pest doctype with Land Unit doctype
- Deleted the Pest doctype and replaced it with the more generic Disease doctype
- Deleted the Detected Pest doctype and replaced it with Detected Disease doctype

* [Agriculture Domain] resolves #11654, resolves #11653

* [Agriculture] Added links to soil analysis, soil texture, plant analysis in crop cycle and land unit
- not working perfectly yet
- docs are fetched but not appended

* [Agricuture] Crop Cycle modifed to link with relevent analysis docs, not fully functional

* [Agriculture] added seperate stage for client side agriculture tests

* [Agriculture] minor modification to crop_cycle.js test

* [Agriculture] fixed tests

* upgrade chromedriver in .travis.yml from 2.32 to 2.33

* [Agriculture] added land unit ui test

* [Agriculture] added Agriculture server side test as a seperate stage in travis

* tesing travis.yml

* [Agriculture] Crop Cycle is able to fetch linked analysis docs

* Modified travis.yml for modular server side testing

* [minor fix][Agriculture] in soil_texture

- fixed multiple soil_texture ternary plot creation on refresh
- fixed error on soil composition change

* Update .travis.yml

* removed location field from linked doctypes

* minor fixes and cleanup of agri

* minor fix in agriculture and domain patches

* permissions added to agriculture

- Agriculture Manager and Agriculture User roles were added to all Agriculture doctypes

* [Agriculture]

- Created Agiculture Analysis Criteria and added sample records to it
- All the analysis doctypes now fetch their fields inside a child table, form Agriculture Analysis Criteria
- Also Fertilizer does the same
  This was introduced so that, new parameters could be added on demand

* minor changes requested in Agriculture

* minor changes

* minor fix

* Update desktop.py

* Update .travis.yml
2017-12-06 18:36:27 +05:30

79 lines
2.5 KiB
YAML

language: python
dist: trusty
addons:
apt:
sources:
- google-chrome
packages:
- google-chrome-stable
python:
- "2.7"
services:
- mysql
install:
- pip install flake8==3.3.0
- flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
- sudo rm /etc/apt/sources.list.d/docker.list
- sudo apt-get purge -y mysql-common mysql-server mysql-client
- nvm install v7.10.0
- wget https://raw.githubusercontent.com/frappe/bench/master/playbooks/install.py
- sudo python install.py --develop --user travis --without-bench-setup
- sudo pip install -e ~/bench
- rm $TRAVIS_BUILD_DIR/.git/shallow
- bash $TRAVIS_BUILD_DIR/travis/bench_init.sh
- cp -r $TRAVIS_BUILD_DIR/test_sites/test_site ~/frappe-bench/sites/
before_script:
- wget http://chromedriver.storage.googleapis.com/2.33/chromedriver_linux64.zip
- unzip chromedriver_linux64.zip
- sudo apt-get install libnss3
- sudo apt-get --only-upgrade install google-chrome-stable
- sudo cp chromedriver /usr/local/bin/.
- sudo chmod +x /usr/local/bin/chromedriver
- export DISPLAY=:99.0
- sh -e /etc/init.d/xvfb start
- sleep 3
- mysql -u root -ptravis -e 'create database test_frappe'
- echo "USE mysql;\nCREATE USER 'test_frappe'@'localhost' IDENTIFIED BY 'test_frappe';\nFLUSH PRIVILEGES;\n" | mysql -u root -ptravis
- echo "USE mysql;\nGRANT ALL PRIVILEGES ON \`test_frappe\`.* TO 'test_frappe'@'localhost';\n" | mysql -u root -ptravis
- cd ~/frappe-bench
- bench get-app erpnext $TRAVIS_BUILD_DIR
- bench use test_site
- bench reinstall --yes
- bench build
- bench scheduler disable
- bench start &
- sleep 10
jobs:
include:
- stage: test
script:
- set -e
- bench run-tests
env: Server Side Test
- # stage
script:
- bench --verbose run-setup-wizard-ui-test
- bench execute erpnext.setup.utils.enable_all_roles_and_domains
- bench run-ui-tests --app erpnext
env: Client Side Test
- # stage
script:
- bench --verbose run-setup-wizard-ui-test
- bench execute erpnext.setup.utils.enable_all_roles_and_domains
- bench run-ui-tests --app erpnext --test-list erpnext/tests/ui/agriculture.txt
env: Agriculture Client Side Test
- # stage
script:
- wget http://build.erpnext.com/20171108_190013_955977f8_database.sql.gz
- bench --force restore ~/frappe-bench/20171108_190013_955977f8_database.sql.gz --mariadb-root-password travis
- bench migrate
env: Patch Testing