rules_engine 0.3.2 → 0.3.3
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/app/views/re_history/_index_update.html.erb +7 -5
- data/app/views/re_history/_show.html.erb +1 -1
- data/app/views/re_plans/_change.html.erb +1 -1
- data/app/views/re_plans/_index.html.erb +1 -1
- data/app/views/re_plans/_show.html.erb +1 -1
- data/app/views/re_publications/_show_update.html.erb +6 -5
- data/generators/manifests/templates/public/stylesheets/rules_engine/rules_engine.css +12 -4
- data/generators/manifests/templates/public/stylesheets/rules_engine/screen.css +7 -1
- data/lib/rules_engine/cache.rb +1 -1
- data/lib/rules_engine/discovery.rb +1 -1
- data/spec/lib/rules_engine/cache_spec.rb +2 -4
- data/spec/rails_3_0_0_root/Gemfile +1 -1
- data/spec/rails_3_0_0_root/Gemfile.lock +18 -16
- data/spec/rails_3_0_0_root/config/initializers/rules_engine.rb +17 -0
- data/spec/rails_3_0_0_root/db/migrate/20100308225008_create_rules_engine.rb +100 -0
- data/spec/rails_3_0_0_root/doc/README.rules_engine +170 -0
- data/spec/rails_3_0_0_root/doc/README.rules_engine_view +97 -0
- data/spec/rails_3_0_0_root/log/test.log +22192 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/jquery-1.4.2.min.js +154 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/jquery.autocomplete.pack.js +13 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/jquery.blockUI.js +486 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/jquery.fancybox-1.3.1.js +1077 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_history_index.js +43 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_history_show.js +18 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_plan_change.js +117 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_plan_new.js +23 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_plan_preview.js +18 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_publication_show.js +39 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_view.js +148 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_workflow_add.js +115 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_workflow_change.js +204 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_workflow_new.js +23 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_workflow_plan.js +38 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_workflow_preview.js +18 -0
- data/spec/rails_3_0_0_root/public/javascripts/rules_engine/re_workflow_show.js +22 -0
- data/spec/rails_3_0_0_root/public/stylesheets/application.css +1 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/ie.css +35 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/buttons/icons/cross.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/buttons/icons/key.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/buttons/icons/tick.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/buttons/readme.txt +32 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/buttons/screen.css +97 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/fancy-type/readme.txt +14 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/fancy-type/screen.css +71 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/doc.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/email.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/external.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/feed.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/im.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/pdf.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/visited.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/icons/xls.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/readme.txt +18 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/link-icons/screen.css +40 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/rtl/readme.txt +10 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/plugins/rtl/screen.css +110 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/print.css +29 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/screen.css +258 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/src/forms.css +65 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/src/grid.css +280 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/src/grid.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/src/ie.css +76 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/src/print.css +85 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/src/reset.css +45 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/blueprint/src/typography.css +106 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/blank.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_close.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_loading.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_nav_left.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_nav_right.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_e.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_n.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_ne.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_nw.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_s.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_se.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_sw.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_shadow_w.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_title_left.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_title_main.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_title_over.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancy_title_right.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancybox-x.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancybox-y.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/fancybox.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/fancybox/jquery.fancybox-1.3.1.css +363 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_box/shadowbox.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_box/whitebox.jpg +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/checked-off.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/checked-on.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/icon-add.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/icon-delete.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/list-add.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/list-remove.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/list-select.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-blue-left.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-blue-right.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-gray-left.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-gray-right.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-green-left.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-green-right.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-orange-left.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-orange-right.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-red-left.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_button/oval-red-right.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_error/re-alert-close.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/re_view_navigate/breadcrumb.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/list-next-disabled-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/list-next-enabled-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/list-prev-disabled-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/list-prev-enabled-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/loading.gif +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-changed-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-changed-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-draft-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-draft-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-error-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-info-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-published-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-published-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-success-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-valid-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-valid-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-verify-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-verify-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_common/status-verify-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_history/error-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_history/info-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_history/list-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_history/success-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/alert-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/change-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/copy-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/delete-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/edit-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/list-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/new-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/preview-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/publish-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/revert-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/show-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/title-plural.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_plan/title-single.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_publication/show-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/add-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/alert-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/destroy-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/edit-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/error-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/help-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/help-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/icon-ad-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/move-down-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/move-down-off-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/move-up-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/move-up-off-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/new-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/next-down-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/next-right-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/show-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/start-pipeline-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/stop-failure-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/stop-success-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/title-plural.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_rule/title-single.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/add-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/add-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/add-off-14.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/alert-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/change-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/change-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/copy-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/delete-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/edit-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/is-default-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/list-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/make-default-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/make-default-off-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/new-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/plan-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/preview-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/remove-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/show-18.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/show-25.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/title-plural.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/images/rules_engine/re_workflow/title-single.png +0 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/jquery.autocomplete.css +53 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/rules_engine.css +899 -0
- data/spec/rails_3_0_0_root/public/stylesheets/rules_engine/screen.css +738 -0
- data/tasks/rspec.rake +1 -0
- metadata +183 -8
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.3
|
@@ -4,12 +4,14 @@
|
|
4
4
|
<% @re_history["processes"].each do |re_process| %>
|
5
5
|
<div class="clear top-2"></div>
|
6
6
|
<div class="left-10 right-5">
|
7
|
-
<a class="re-
|
8
|
-
|
7
|
+
<a class="re-xtra-history-show" href="#<%= re_process["process_id"] %>">
|
8
|
+
<span class="float-left re-xtra-history-<%= re_history_status(re_process["process_status"]) %>"></span>
|
9
|
+
<span class="re-code-small float-left">V.<%= re_process["plan_version"] %></span>
|
10
|
+
<span class="re-code-small float-left left-5"><%= re_process["plan_code"] %> </span>
|
11
|
+
<span class="re-code-small float-right right-5">
|
12
|
+
<%= re_process["started_at"].nil? ? '' : Time.parse(re_process["started_at"]).strftime('%d %b %Y - %H:%M') %>
|
13
|
+
</span>
|
9
14
|
</a>
|
10
|
-
<div class="smalltext float-right right-5">
|
11
|
-
<%= re_process["started_at"].nil? ? '' : Time.parse(re_process["started_at"]).strftime('%d %b %Y - %H:%M') %>
|
12
|
-
</div>
|
13
15
|
<hr/>
|
14
16
|
</div>
|
15
17
|
<% end %>
|
@@ -11,7 +11,7 @@
|
|
11
11
|
<div class="re-code-small float-left re-xtra-history-audit-<%= re_audit_status(re_audit["code"]) %>">
|
12
12
|
<%= re_audit["message"] %>
|
13
13
|
</div>
|
14
|
-
<div class="
|
14
|
+
<div class="re-code-small float-right right-5">
|
15
15
|
<%= re_audit["created_at"].nil? ? '' : Time.parse(re_audit["created_at"]).strftime('%d %b %Y - %H:%M') %>
|
16
16
|
</div>
|
17
17
|
<hr/>
|
@@ -20,7 +20,7 @@
|
|
20
20
|
<% if re_plan_error.blank? %>
|
21
21
|
<em class="float-right top-2 re-sts-plan-<%= re_plan_status %>"><%= re_plan_status.titleize %> <%= re_plan_version(@re_plan) %></em>
|
22
22
|
<% else %>
|
23
|
-
<em class="float-right top-2
|
23
|
+
<em class="float-right top-2 re-sts-plan-verify"><%= re_plan_error %> <%= re_plan_version(@re_plan) %></em>
|
24
24
|
<% end %>
|
25
25
|
</div>
|
26
26
|
<div class="clear"></div>
|
@@ -32,7 +32,7 @@
|
|
32
32
|
<% if re_plan_error.blank? %>
|
33
33
|
<em class="float-right top-2 re-sts-plan-<%= re_plan_status %>"><%= re_plan_status.titleize %> <%= re_plan_version(re_plan) %></em>
|
34
34
|
<% else %>
|
35
|
-
<em class="float-right top-2
|
35
|
+
<em class="float-right top-2 re-sts-plan-verify"><%= re_plan_error %> <%= re_plan_version(re_plan) %></em>
|
36
36
|
<% end %>
|
37
37
|
</div>
|
38
38
|
<div class="clear"></div>
|
@@ -20,7 +20,7 @@
|
|
20
20
|
<% if re_plan_error.blank? %>
|
21
21
|
<em class="float-right top-2 re-sts-plan-<%= re_plan_status %>"><%= re_plan_status.titleize %> <%= re_plan_version(@re_plan) %></em>
|
22
22
|
<% else %>
|
23
|
-
<em class="float-right top-2
|
23
|
+
<em class="float-right top-2 re-sts-plan-verify"><%= re_plan_error %> <%= re_plan_version(@re_plan) %></em>
|
24
24
|
<% end %>
|
25
25
|
</div>
|
26
26
|
<div class="clear"></div>
|
@@ -4,12 +4,13 @@
|
|
4
4
|
<% @re_publications["publications"].each do |re_publication| %>
|
5
5
|
<div class="clear top-2"></div>
|
6
6
|
<div class="left-10 right-5">
|
7
|
-
<
|
8
|
-
|
9
|
-
|
10
|
-
|
7
|
+
<span class="re-code-small float-left blue">V.<%= re_publication["plan_version"] %></span>
|
8
|
+
<span class="re-code-small left-5 float-left">
|
9
|
+
<%= re_publication["version_tag"] %>
|
10
|
+
</span>
|
11
|
+
<span class="re-code-small float-right">
|
11
12
|
<%= re_publication["published_at"].nil? ? '' : Time.parse(re_publication["published_at"]).strftime('%d %b %Y - %H:%M') %>
|
12
|
-
</
|
13
|
+
</span>
|
13
14
|
<hr/>
|
14
15
|
</div>
|
15
16
|
<% end %>
|
@@ -123,15 +123,19 @@ h4.re-sts-plan-verify {
|
|
123
123
|
}
|
124
124
|
em.re-sts-plan-draft {
|
125
125
|
color: #696969;
|
126
|
+
font-size: 14px;
|
126
127
|
}
|
127
128
|
em.re-sts-plan-changed {
|
128
129
|
color: #92b83c;
|
130
|
+
font-size: 14px;
|
129
131
|
}
|
130
132
|
em.re-sts-plan-published {
|
131
133
|
color: #218868;
|
134
|
+
font-size: 14px;
|
132
135
|
}
|
133
136
|
em.re-sts-plan-verify {
|
134
137
|
color: #b43838;
|
138
|
+
font-size: 14px;
|
135
139
|
}
|
136
140
|
|
137
141
|
/* menu */
|
@@ -735,7 +739,8 @@ div.re-xtra-rule-title-single span {
|
|
735
739
|
.re-xtra-rule-continue {
|
736
740
|
width: 155px;
|
737
741
|
background: #fffef0 url('./images/rules_engine/re_rule/start-pipeline-18.png') no-repeat 165px 2px;
|
738
|
-
font-weight:
|
742
|
+
font-weight: normal;
|
743
|
+
font-size: 17px;
|
739
744
|
border: 1px #92b83c solid;
|
740
745
|
padding: 3px 24px 3px 6px;
|
741
746
|
margin: 0 2px 4px 2px;
|
@@ -743,7 +748,8 @@ div.re-xtra-rule-title-single span {
|
|
743
748
|
.re-xtra-rule-stop-failure {
|
744
749
|
width: 155px;
|
745
750
|
background: #FBE3E4 url('./images/rules_engine/re_rule/stop-failure-18.png') no-repeat 165px 2px;
|
746
|
-
font-weight:
|
751
|
+
font-weight: normal;
|
752
|
+
font-size: 17px;
|
747
753
|
border: 1px #7c1e1e solid;
|
748
754
|
padding: 3px 24px 3px 6px;
|
749
755
|
margin: 0 2px 4px 2px;
|
@@ -751,7 +757,8 @@ div.re-xtra-rule-title-single span {
|
|
751
757
|
.re-xtra-rule-stop-success {
|
752
758
|
width: 155px;
|
753
759
|
background: #fffef0 url('./images/rules_engine/re_rule/stop-success-18.png') no-repeat 165px 2px;
|
754
|
-
font-weight:
|
760
|
+
font-weight: normal;
|
761
|
+
font-size: 17px;
|
755
762
|
border: 1px #7c1e1e solid;
|
756
763
|
padding: 3px 24px 3px 6px;
|
757
764
|
margin: 0 2px 4px 2px;
|
@@ -759,7 +766,8 @@ div.re-xtra-rule-title-single span {
|
|
759
766
|
.re-xtra-rule-start-workflow {
|
760
767
|
width: 155px;
|
761
768
|
background: #fffef0 url('./images/rules_engine/re_rule/start-workflow-18.png') no-repeat 165px 2px;
|
762
|
-
font-weight:
|
769
|
+
font-weight: normal;
|
770
|
+
font-size: 17px;
|
763
771
|
border: 1px #92b83c solid;
|
764
772
|
padding: 3px 24px 3px 6px;
|
765
773
|
margin: 0 2px 4px 2px;
|
@@ -47,7 +47,12 @@ h6 {
|
|
47
47
|
margin: 8px 6px 6px 6px;
|
48
48
|
}
|
49
49
|
p {
|
50
|
-
|
50
|
+
color: #444;
|
51
|
+
font-size:14px;
|
52
|
+
line-height:20px;
|
53
|
+
margin: 6px;
|
54
|
+
}
|
55
|
+
li {
|
51
56
|
color: #444;
|
52
57
|
font-size:14px;
|
53
58
|
line-height:20px;
|
@@ -546,6 +551,7 @@ a.re-alert-close {
|
|
546
551
|
float: right;
|
547
552
|
text-decoration: none;
|
548
553
|
background: url('./images/re_view_error/re-alert-close.png') no-repeat 2px 2px;
|
554
|
+
height: 20px;
|
549
555
|
padding-left: 24px;
|
550
556
|
}
|
551
557
|
a.re-alert-close:hover {
|
data/lib/rules_engine/cache.rb
CHANGED
@@ -23,7 +23,7 @@ module RulesEngine
|
|
23
23
|
Dir.glob("#{rules_path}/**/*.rb").each do |rule|
|
24
24
|
Kernel.load rule
|
25
25
|
|
26
|
-
rule_class = Rule.const_get(File.basename(rule, '.rb').classify)
|
26
|
+
rule_class = RulesEngine::Rule.const_get(File.basename(rule, '.rb').classify)
|
27
27
|
@rule_classes << rule_class
|
28
28
|
|
29
29
|
group = rule_class.options[:group]
|
@@ -1,11 +1,9 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
2
2
|
|
3
3
|
describe "RulesEngine::Cache" do
|
4
|
-
|
5
|
-
ActiveSupport::Cache.stub!(:lookup_store).and_return("mock store")
|
6
|
-
end
|
7
|
-
|
4
|
+
|
8
5
|
it "should set perform caching to false if cahing not set" do
|
6
|
+
RulesEngine::Cache.cache_store=nil
|
9
7
|
RulesEngine::Cache.should_not be_perform_caching
|
10
8
|
end
|
11
9
|
|
@@ -1,7 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: /Users/chris/Workspace/chris/Gems/rules_engine
|
3
3
|
specs:
|
4
|
-
rules_engine (0.3.
|
4
|
+
rules_engine (0.3.2)
|
5
|
+
acts_as_list (>= 0.1.2)
|
6
|
+
will_paginate (>= 3.0.pre2)
|
5
7
|
|
6
8
|
GEM
|
7
9
|
remote: http://rubygems.org/
|
@@ -43,7 +45,7 @@ GEM
|
|
43
45
|
faker (0.3.1)
|
44
46
|
i18n (0.4.1)
|
45
47
|
machinist (1.0.6)
|
46
|
-
mail (2.2.
|
48
|
+
mail (2.2.7)
|
47
49
|
activesupport (>= 2.3.6)
|
48
50
|
mime-types
|
49
51
|
treetop (>= 1.4.5)
|
@@ -53,7 +55,7 @@ GEM
|
|
53
55
|
rack (1.2.1)
|
54
56
|
rack-mount (0.6.13)
|
55
57
|
rack (>= 1.0.0)
|
56
|
-
rack-test (0.5.
|
58
|
+
rack-test (0.5.6)
|
57
59
|
rack (>= 1.0)
|
58
60
|
rails (3.0.0)
|
59
61
|
actionmailer (= 3.0.0)
|
@@ -70,20 +72,20 @@ GEM
|
|
70
72
|
thor (~> 0.14.0)
|
71
73
|
rake (0.8.7)
|
72
74
|
rcov (0.9.9)
|
73
|
-
rspec (2.0.0
|
74
|
-
rspec-core (= 2.0.0
|
75
|
-
rspec-expectations (= 2.0.0
|
76
|
-
rspec-mocks (= 2.0.0
|
77
|
-
rspec-core (2.0.0
|
78
|
-
rspec-expectations (2.0.0
|
75
|
+
rspec (2.0.0)
|
76
|
+
rspec-core (= 2.0.0)
|
77
|
+
rspec-expectations (= 2.0.0)
|
78
|
+
rspec-mocks (= 2.0.0)
|
79
|
+
rspec-core (2.0.0)
|
80
|
+
rspec-expectations (2.0.0)
|
79
81
|
diff-lcs (>= 1.1.2)
|
80
|
-
rspec-mocks (2.0.0
|
81
|
-
rspec-core (= 2.0.0
|
82
|
-
rspec-expectations (= 2.0.0
|
83
|
-
rspec-rails (2.0.0
|
84
|
-
rspec (= 2.0.0
|
82
|
+
rspec-mocks (2.0.0)
|
83
|
+
rspec-core (= 2.0.0)
|
84
|
+
rspec-expectations (= 2.0.0)
|
85
|
+
rspec-rails (2.0.0)
|
86
|
+
rspec (= 2.0.0)
|
85
87
|
sqlite3-ruby (1.3.1)
|
86
|
-
thor (0.14.
|
88
|
+
thor (0.14.3)
|
87
89
|
treetop (1.4.8)
|
88
90
|
polyglot (>= 0.3.1)
|
89
91
|
tzinfo (0.3.23)
|
@@ -102,7 +104,7 @@ DEPENDENCIES
|
|
102
104
|
machinist
|
103
105
|
rails (= 3.0.0)
|
104
106
|
rcov
|
105
|
-
rspec-rails (>= 2.0.0
|
107
|
+
rspec-rails (>= 2.0.0)
|
106
108
|
rules_engine!
|
107
109
|
sqlite3-ruby
|
108
110
|
webrat
|
@@ -0,0 +1,17 @@
|
|
1
|
+
RulesEngine::Discovery.discover!
|
2
|
+
|
3
|
+
RulesEngine::Publish.publisher = :db_publisher
|
4
|
+
RulesEngine::Process.runner = :db_runner
|
5
|
+
RulesEngine::Process.auditor = :db_auditor
|
6
|
+
RulesEngine::Process.auditor.audit_level = RulesEngine::Process::AUDIT_INFO
|
7
|
+
|
8
|
+
RulesEngineView::Config.layout = nil
|
9
|
+
RulesEngineView::Config.prefix_breadcrumbs = nil
|
10
|
+
|
11
|
+
RulesEngine::Cache.cache_store = nil
|
12
|
+
# RulesEngine::Cache.cache_store = :mem_cache_store, "localhost:11210"
|
13
|
+
# RulesEngine::Cache.cache_store = :memory_store
|
14
|
+
# RulesEngine::Cache.cache_store = :file_store, "/path/to/cache/directory"
|
15
|
+
# RulesEngine::Cache.cache_store = :drb_store, "druby://localhost:9192"
|
16
|
+
# RulesEngine::Cache.cache_store = :mem_cache_store, "localhost"
|
17
|
+
# RulesEngine::Cache.cache_store = MyOwnStore.new("parameter")
|
@@ -0,0 +1,100 @@
|
|
1
|
+
class CreateRulesEngine < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
|
4
|
+
create_table :re_plans do |t|
|
5
|
+
t.string :code
|
6
|
+
t.string :title
|
7
|
+
t.text :description
|
8
|
+
|
9
|
+
t.integer :plan_status
|
10
|
+
t.integer :plan_version
|
11
|
+
|
12
|
+
t.datetime :created_at
|
13
|
+
t.datetime :updated_at
|
14
|
+
end
|
15
|
+
|
16
|
+
create_table :re_plan_workflows do |t|
|
17
|
+
t.integer :re_plan_id
|
18
|
+
t.integer :re_workflow_id
|
19
|
+
t.integer :position
|
20
|
+
end
|
21
|
+
|
22
|
+
create_table :re_workflows do |t|
|
23
|
+
t.string :code
|
24
|
+
t.string :title
|
25
|
+
t.text :description
|
26
|
+
|
27
|
+
t.datetime :created_at
|
28
|
+
t.datetime :updated_at
|
29
|
+
end
|
30
|
+
|
31
|
+
#################################
|
32
|
+
create_table :re_rules do |t|
|
33
|
+
t.integer :re_workflow_id
|
34
|
+
|
35
|
+
t.integer :position
|
36
|
+
|
37
|
+
t.string :rule_class_name
|
38
|
+
|
39
|
+
t.string :title
|
40
|
+
t.string :summary
|
41
|
+
t.text :data
|
42
|
+
|
43
|
+
t.datetime :created_at
|
44
|
+
t.datetime :updated_at
|
45
|
+
end
|
46
|
+
|
47
|
+
add_index :re_rules, [:re_workflow_id]
|
48
|
+
add_index :re_rules, [:re_workflow_id, :position]
|
49
|
+
|
50
|
+
|
51
|
+
#################################
|
52
|
+
create_table :re_published_plans do |t|
|
53
|
+
t.string :plan_code
|
54
|
+
t.integer :plan_version
|
55
|
+
t.string :version_tag
|
56
|
+
|
57
|
+
t.datetime :published_at
|
58
|
+
t.text :data
|
59
|
+
end
|
60
|
+
|
61
|
+
add_index :re_published_plans, [:plan_code]
|
62
|
+
add_index :re_published_plans, [:plan_code, :plan_version]
|
63
|
+
|
64
|
+
create_table :re_process_runs do |t|
|
65
|
+
t.string :plan_code
|
66
|
+
t.integer :plan_version
|
67
|
+
t.integer :process_status
|
68
|
+
t.datetime :created_at
|
69
|
+
t.datetime :started_at
|
70
|
+
t.datetime :finished_at
|
71
|
+
end
|
72
|
+
|
73
|
+
add_index :re_process_runs, [:plan_code]
|
74
|
+
add_index :re_process_runs, [:process_status]
|
75
|
+
add_index :re_process_runs, [:started_at]
|
76
|
+
add_index :re_process_runs, [:finished_at]
|
77
|
+
|
78
|
+
create_table :re_process_audits do |t|
|
79
|
+
t.integer :process_id
|
80
|
+
|
81
|
+
t.datetime :created_at
|
82
|
+
t.integer :code
|
83
|
+
t.string :message
|
84
|
+
end
|
85
|
+
|
86
|
+
add_index :re_process_audits, [:process_id]
|
87
|
+
|
88
|
+
end
|
89
|
+
|
90
|
+
def self.down
|
91
|
+
drop_table :re_published_plans
|
92
|
+
drop_table :re_process_runs
|
93
|
+
drop_table :re_process_audits
|
94
|
+
|
95
|
+
drop_table :re_rules
|
96
|
+
drop_table :re_workflows
|
97
|
+
drop_table :re_plan_workflows
|
98
|
+
drop_table :re_plans
|
99
|
+
end
|
100
|
+
end
|
@@ -0,0 +1,170 @@
|
|
1
|
+
## Ruby and Rails Rules Engine Framework
|
2
|
+
# More detailed documentation at http://www.r3ef.com
|
3
|
+
|
4
|
+
## Installation Guide
|
5
|
+
######################################
|
6
|
+
# 1. Install the Gem
|
7
|
+
sudo gem install rules_engine
|
8
|
+
sudo gem install rspec cucumber
|
9
|
+
|
10
|
+
######################################
|
11
|
+
# 2. Create the Rails App
|
12
|
+
rails MyCoolNewApp
|
13
|
+
cd MyCoolNewApp
|
14
|
+
rm ./public/index.html
|
15
|
+
|
16
|
+
./script/generate rspec
|
17
|
+
./script/generate cucumber --rspec
|
18
|
+
|
19
|
+
./script/generate rules_engine
|
20
|
+
|
21
|
+
######################################
|
22
|
+
# 3. Setup the Rails Environments
|
23
|
+
- ./config/environment.rb
|
24
|
+
|
25
|
+
Rails::Initializer.run do |config|
|
26
|
+
...
|
27
|
+
config.gem 'rules_engine'
|
28
|
+
config.gem 'will_paginate'
|
29
|
+
config.gem 'acts_as_list'
|
30
|
+
...
|
31
|
+
end
|
32
|
+
|
33
|
+
- ./config/environments/production.rb
|
34
|
+
- ./config/environments/development.rb
|
35
|
+
|
36
|
+
RulesEngine::Cache.cache_store = :mem_cache_store, "localhost:11210"
|
37
|
+
# RulesEngine::Cache.cache_store = :memory_store
|
38
|
+
# RulesEngine::Cache.cache_store = :file_store, "/path/to/cache/directory"
|
39
|
+
# RulesEngine::Cache.cache_store = :drb_store, "druby://localhost:9192"
|
40
|
+
# RulesEngine::Cache.cache_store = :mem_cache_store, "localhost"
|
41
|
+
# RulesEngine::Cache.cache_store = MyOwnStore.new("parameter")
|
42
|
+
|
43
|
+
- ./config/environments/test.rb
|
44
|
+
- ./config/environments/cucumber.rb
|
45
|
+
|
46
|
+
config.gem "rspec", :version => '>=1.3.0', :lib => false
|
47
|
+
config.gem "rspec-rails", :version => '>=1.3.2', :lib => false
|
48
|
+
config.gem "faker", :version => '>=0.3.1', :lib => false
|
49
|
+
|
50
|
+
config.gem "machinist", :version => '>=1.0.6', :lib => false
|
51
|
+
config.gem 'rcov', :version => '>=0.9.8', :lib => false
|
52
|
+
config.gem 'remarkable_rails', :version => '>=3.1.13', :lib => false
|
53
|
+
|
54
|
+
require 'machinist/active_record'
|
55
|
+
require 'sham'
|
56
|
+
require 'faker'
|
57
|
+
require 'remarkable_rails'
|
58
|
+
|
59
|
+
######################################
|
60
|
+
# 4. Add the Routes
|
61
|
+
- ./config/routes.rb
|
62
|
+
|
63
|
+
ActionController::Routing::Routes.draw do |map|
|
64
|
+
...
|
65
|
+
|
66
|
+
### remove map.root if already defined
|
67
|
+
map.root :controller => :re_plans, :action => 'template'
|
68
|
+
map.resources :re_plans, :member => {:change => :get,
|
69
|
+
:preview => :get,
|
70
|
+
:publish => :put, :revert => :put,
|
71
|
+
:re_process => :get,
|
72
|
+
:copy => :get, :duplicate => :post} do |re_map|
|
73
|
+
|
74
|
+
re_map.resources :workflows, :controller => :re_plan_workflows,
|
75
|
+
:except => [:index],
|
76
|
+
:member => {:change => :get,
|
77
|
+
:default => :put,
|
78
|
+
:add => :put, :remove => :put,
|
79
|
+
:copy => :get, :duplicate => :post} do |re_pipeline|
|
80
|
+
re_pipeline.resources :rules, :controller => :re_plan_workflow_rules,
|
81
|
+
:except => [:index, :show],
|
82
|
+
:collection => {:help => :get, :error => :get},
|
83
|
+
:member => {:move_up => :put, :move_down => :put}
|
84
|
+
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
88
|
+
map.resources :re_workflows, :collection => {:add => :get},
|
89
|
+
:member => {:plan => :get,
|
90
|
+
:change => :get,
|
91
|
+
:preview => :get,
|
92
|
+
:copy => :get, :duplicate => :post} do |re_pipeline|
|
93
|
+
re_pipeline.resources :rules, :controller => :re_workflow_rules,
|
94
|
+
:except => [:index, :show],
|
95
|
+
:collection => {:help => :get, :error => :get},
|
96
|
+
:member => {:move_up => :put, :move_down => :put}
|
97
|
+
end
|
98
|
+
|
99
|
+
map.resources :re_history, :only => [:index, :show]
|
100
|
+
map.resources :re_publications, :only => [:show]
|
101
|
+
|
102
|
+
...
|
103
|
+
|
104
|
+
|
105
|
+
######################################
|
106
|
+
# 5. Define the Access Levels
|
107
|
+
- ./app/controllers/application_controller.rb
|
108
|
+
class ApplicationController < ActionController::Base
|
109
|
+
|
110
|
+
helper_method :rules_engine_reader?, :rules_engine_editor?
|
111
|
+
|
112
|
+
def rules_engine_reader?
|
113
|
+
# why cookies[:rules_engine_reader] ? It's a workaround for cucumber testing
|
114
|
+
return cookies[:rules_engine_reader].nil? ? true :
|
115
|
+
cookies[:rules_engine_reader].downcase == 'true'
|
116
|
+
end
|
117
|
+
|
118
|
+
def rules_engine_editor?
|
119
|
+
# why cookies[:rules_engine_editor] ? It's a workaround for cucumber testing
|
120
|
+
return cookies[:rules_engine_editor].nil? ? true :
|
121
|
+
cookies[:rules_engine_editor].downcase == 'true'
|
122
|
+
end
|
123
|
+
|
124
|
+
def rules_engine_reader_access_required
|
125
|
+
unless rules_engine_reader?
|
126
|
+
redirect_to(root_path)
|
127
|
+
flash[:success] = 'Rules Engine Access Denied.'
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
def rules_engine_editor_access_required
|
132
|
+
unless rules_engine_editor?
|
133
|
+
redirect_to(root_path)
|
134
|
+
flash[:success] = 'Rules Engine Editor Access Denied.'
|
135
|
+
end
|
136
|
+
end
|
137
|
+
|
138
|
+
######################################
|
139
|
+
# 6. Install the Required Gems
|
140
|
+
rake gems:install
|
141
|
+
rake gems:install RAILS_ENV=test
|
142
|
+
|
143
|
+
######################################
|
144
|
+
# 7. Migrate the Database
|
145
|
+
rake db:migrate
|
146
|
+
rake db:migrate RAILS_ENV=test
|
147
|
+
|
148
|
+
######################################
|
149
|
+
# 8. Create a Simple Rule
|
150
|
+
./script/generate rules_engine simple does_nothing
|
151
|
+
|
152
|
+
######################################
|
153
|
+
# 9. Create a Complex Rule
|
154
|
+
./script/generate rules_engine complex match_words
|
155
|
+
|
156
|
+
######################################
|
157
|
+
# 10. Run the Tests
|
158
|
+
rake spec
|
159
|
+
rake spec:rcov
|
160
|
+
rake cucumber
|
161
|
+
open coverage/index.html
|
162
|
+
|
163
|
+
######################################
|
164
|
+
# 11. Start the Server
|
165
|
+
./script/server
|
166
|
+
open http://localhost:3000/re_plans
|
167
|
+
|
168
|
+
######################################
|
169
|
+
# 12. Create Pipelines and Rules
|
170
|
+
Watch the demo at "TODO":http://www.r3ef.com/
|