mirror of
https://github.com/evennia/evennia.git
synced 2026-03-31 13:07:16 +02:00
998 lines
No EOL
198 KiB
HTML
998 lines
No EOL
198 KiB
HTML
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>evennia.contrib.test_traits — Evennia 1.0-dev documentation</title>
|
|
<link rel="stylesheet" href="../../../_static/nature.css" type="text/css" />
|
|
<link rel="stylesheet" href="../../../_static/pygments.css" type="text/css" />
|
|
<script id="documentation_options" data-url_root="../../../" src="../../../_static/documentation_options.js"></script>
|
|
<script src="../../../_static/jquery.js"></script>
|
|
<script src="../../../_static/underscore.js"></script>
|
|
<script src="../../../_static/doctools.js"></script>
|
|
<script src="../../../_static/language_data.js"></script>
|
|
<link rel="shortcut icon" href="../../../_static/favicon.ico"/>
|
|
<link rel="index" title="Index" href="../../../genindex.html" />
|
|
<link rel="search" title="Search" href="../../../search.html" />
|
|
</head><body>
|
|
<div class="related" role="navigation" aria-label="related navigation">
|
|
<h3>Navigation</h3>
|
|
<ul>
|
|
<li class="right" style="margin-right: 10px">
|
|
<a href="../../../genindex.html" title="General Index"
|
|
accesskey="I">index</a></li>
|
|
<li class="right" >
|
|
<a href="../../../py-modindex.html" title="Python Module Index"
|
|
>modules</a> |</li>
|
|
<li class="nav-item nav-item-0"><a href="../../../index.html">Evennia 1.0-dev</a> »</li>
|
|
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> »</li>
|
|
<li class="nav-item nav-item-2"><a href="../../evennia.html" accesskey="U">evennia</a> »</li>
|
|
<li class="nav-item nav-item-this"><a href="">evennia.contrib.test_traits</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="document">
|
|
<div class="documentwrapper">
|
|
<div class="bodywrapper">
|
|
<div class="body" role="main">
|
|
|
|
<h1>Source code for evennia.contrib.test_traits</h1><div class="highlight"><pre>
|
|
<span></span><span class="ch">#!/usr/bin/env python</span>
|
|
<span class="c1"># -*- coding: utf-8 -*-</span>
|
|
|
|
<span class="sd">"""</span>
|
|
<span class="sd">Unit test module for Trait classes.</span>
|
|
|
|
<span class="sd">"""</span>
|
|
|
|
<span class="kn">from</span> <span class="nn">copy</span> <span class="k">import</span> <span class="n">copy</span>
|
|
<span class="kn">from</span> <span class="nn">anything</span> <span class="k">import</span> <span class="n">Something</span>
|
|
<span class="kn">from</span> <span class="nn">mock</span> <span class="k">import</span> <span class="n">MagicMock</span><span class="p">,</span> <span class="n">patch</span>
|
|
<span class="kn">from</span> <span class="nn">django.test</span> <span class="k">import</span> <span class="n">TestCase</span>
|
|
<span class="kn">from</span> <span class="nn">django.test</span> <span class="k">import</span> <span class="n">override_settings</span>
|
|
<span class="kn">from</span> <span class="nn">evennia.utils.test_resources</span> <span class="k">import</span> <span class="n">EvenniaTest</span>
|
|
<span class="kn">from</span> <span class="nn">evennia.contrib</span> <span class="k">import</span> <span class="n">traits</span>
|
|
|
|
|
|
<span class="k">class</span> <span class="nc">_MockObj</span><span class="p">:</span>
|
|
<span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">attributes</span> <span class="o">=</span> <span class="n">MagicMock</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">get</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">add</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">add</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">dbstore</span> <span class="o">=</span> <span class="p">{}</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">category</span> <span class="o">=</span> <span class="s2">"traits"</span>
|
|
|
|
<span class="k">def</span> <span class="nf">get</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
|
|
<span class="k">assert</span> <span class="n">category</span> <span class="o">==</span> <span class="bp">self</span><span class="o">.</span><span class="n">category</span>
|
|
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">dbstore</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">key</span><span class="p">)</span>
|
|
|
|
<span class="k">def</span> <span class="nf">add</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
|
|
<span class="k">assert</span> <span class="n">category</span> <span class="o">==</span> <span class="bp">self</span><span class="o">.</span><span class="n">category</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">dbstore</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span>
|
|
|
|
|
|
<span class="c1"># we want to test the base traits too</span>
|
|
<span class="n">_TEST_TRAIT_CLASS_PATHS</span> <span class="o">=</span> <span class="p">[</span>
|
|
<span class="s2">"evennia.contrib.traits.Trait"</span><span class="p">,</span>
|
|
<span class="s2">"evennia.contrib.traits.StaticTrait"</span><span class="p">,</span>
|
|
<span class="s2">"evennia.contrib.traits.CounterTrait"</span><span class="p">,</span>
|
|
<span class="s2">"evennia.contrib.traits.GaugeTrait"</span><span class="p">,</span>
|
|
<span class="p">]</span>
|
|
|
|
|
|
<span class="k">class</span> <span class="nc">_TraitHandlerBase</span><span class="p">(</span><span class="n">TestCase</span><span class="p">):</span>
|
|
<span class="s2">"Base for trait tests"</span>
|
|
|
|
<span class="nd">@patch</span><span class="p">(</span><span class="s2">"evennia.contrib.traits._TRAIT_CLASS_PATHS"</span><span class="p">,</span> <span class="n">new</span><span class="o">=</span><span class="n">_TEST_TRAIT_CLASS_PATHS</span><span class="p">)</span>
|
|
<span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">obj</span> <span class="o">=</span> <span class="n">_MockObj</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span> <span class="o">=</span> <span class="n">traits</span><span class="o">.</span><span class="n">TraitHandler</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">traits</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span>
|
|
|
|
<span class="k">def</span> <span class="nf">_get_dbstore</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">):</span>
|
|
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">dbstore</span><span class="p">[</span><span class="s2">"traits"</span><span class="p">][</span><span class="n">key</span><span class="p">]</span>
|
|
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest">[docs]</a><span class="k">class</span> <span class="nc">TraitHandlerTest</span><span class="p">(</span><span class="n">_TraitHandlerBase</span><span class="p">):</span>
|
|
<span class="sd">"""Testing for TraitHandler"""</span>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.setUp">[docs]</a> <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="s2">"Test1"</span><span class="p">,</span> <span class="n">trait_type</span><span class="o">=</span><span class="s2">"trait"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span>
|
|
<span class="s2">"test2"</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="s2">"Test2"</span><span class="p">,</span> <span class="n">trait_type</span><span class="o">=</span><span class="s2">"trait"</span><span class="p">,</span> <span class="n">value</span><span class="o">=</span><span class="p">[</span><span class="s2">"foo"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"1"</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]},</span> <span class="mi">4</span><span class="p">],</span>
|
|
<span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_add_trait"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_add_trait">[docs]</a> <span class="k">def</span> <span class="nf">test_add_trait</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">_get_dbstore</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">),</span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test1"</span><span class="p">,</span> <span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">:</span> <span class="kc">None</span><span class="p">,}</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">_get_dbstore</span><span class="p">(</span><span class="s2">"test2"</span><span class="p">),</span>
|
|
<span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test2"</span><span class="p">,</span> <span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"foo"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"1"</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]},</span> <span class="mi">4</span><span class="p">],},</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="p">),</span> <span class="mi">2</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_cache"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_cache">[docs]</a> <span class="k">def</span> <span class="nf">test_cache</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Cache should not be set until first get</span>
|
|
<span class="sd"> """</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">_cache</span><span class="p">),</span> <span class="mi">0</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">all</span> <span class="c1"># does not affect cache</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">_cache</span><span class="p">),</span> <span class="mi">0</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">test1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">_cache</span><span class="p">),</span> <span class="mi">1</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">test2</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">_cache</span><span class="p">),</span> <span class="mi">2</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_setting"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_setting">[docs]</a> <span class="k">def</span> <span class="nf">test_setting</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="s2">"Don't allow setting stuff on traithandler"</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">TraitException</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">foo</span> <span class="o">=</span> <span class="s2">"bar"</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">TraitException</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="p">[</span><span class="s2">"foo"</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"bar"</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">TraitException</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">test1</span> <span class="o">=</span> <span class="s2">"foo"</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_getting"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_getting">[docs]</a> <span class="k">def</span> <span class="nf">test_getting</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="s2">"Test we are getting data from the dbstore"</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">test1</span><span class="o">.</span><span class="n">_data</span><span class="p">,</span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test1"</span><span class="p">,</span> <span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">:</span> <span class="kc">None</span><span class="p">}</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">_cache</span><span class="p">,</span> <span class="n">Something</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">test2</span><span class="o">.</span><span class="n">_data</span><span class="p">,</span>
|
|
<span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test2"</span><span class="p">,</span> <span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"foo"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"1"</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]},</span> <span class="mi">4</span><span class="p">]},</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">_cache</span><span class="p">,</span> <span class="n">Something</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"foo"</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">bar</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_all"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_all">[docs]</a> <span class="k">def</span> <span class="nf">test_all</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="s2">"Test all method"</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">all</span><span class="p">,</span> <span class="p">[</span><span class="s2">"test1"</span><span class="p">,</span> <span class="s2">"test2"</span><span class="p">])</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_remove"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_remove">[docs]</a> <span class="k">def</span> <span class="nf">test_remove</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="s2">"Test remove method"</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">remove</span><span class="p">(</span><span class="s2">"test2"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="p">),</span> <span class="mi">1</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertTrue</span><span class="p">(</span><span class="nb">bool</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">)))</span> <span class="c1"># this populates cache</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">_cache</span><span class="p">),</span> <span class="mi">1</span><span class="p">)</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">TraitException</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">remove</span><span class="p">(</span><span class="s2">"foo"</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_clear"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_clear">[docs]</a> <span class="k">def</span> <span class="nf">test_clear</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="s2">"Test clear method"</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">clear</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="p">),</span> <span class="mi">0</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TraitHandlerTest.test_trait_db_connection"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TraitHandlerTest.test_trait_db_connection">[docs]</a> <span class="k">def</span> <span class="nf">test_trait_db_connection</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="s2">"Test that updating a trait property actually updates value in db"</span>
|
|
<span class="n">trait</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">test1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
|
|
<span class="n">trait</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"traits"</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"traits"</span><span class="p">)[</span><span class="s2">"test1"</span><span class="p">][</span><span class="s2">"value"</span><span class="p">],</span> <span class="mi">10</span><span class="p">)</span>
|
|
<span class="n">trait</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span> <span class="mi">20</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"traits"</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"traits"</span><span class="p">)[</span><span class="s2">"test1"</span><span class="p">][</span><span class="s2">"value"</span><span class="p">],</span> <span class="mi">20</span><span class="p">)</span>
|
|
<span class="k">del</span> <span class="n">trait</span><span class="o">.</span><span class="n">value</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"traits"</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"traits"</span><span class="p">)[</span><span class="s2">"test1"</span><span class="p">][</span><span class="s2">"value"</span><span class="p">],</span> <span class="kc">None</span>
|
|
<span class="p">)</span></div></div>
|
|
|
|
|
|
<div class="viewcode-block" id="TestTrait"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTrait">[docs]</a><span class="k">class</span> <span class="nc">TestTrait</span><span class="p">(</span><span class="n">_TraitHandlerBase</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Test the base Trait class</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<div class="viewcode-block" id="TestTrait.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTrait.setUp">[docs]</a> <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span>
|
|
<span class="s2">"test1"</span><span class="p">,</span>
|
|
<span class="n">name</span><span class="o">=</span><span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="n">trait_type</span><span class="o">=</span><span class="s2">"trait"</span><span class="p">,</span>
|
|
<span class="n">value</span><span class="o">=</span><span class="s2">"value"</span><span class="p">,</span>
|
|
<span class="n">extra_val1</span><span class="o">=</span><span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="n">extra_val2</span><span class="o">=</span><span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTrait.test_init"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTrait.test_init">[docs]</a> <span class="k">def</span> <span class="nf">test_init</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">_data</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span>
|
|
<span class="s2">"value"</span><span class="p">:</span> <span class="s2">"value"</span><span class="p">,</span>
|
|
<span class="s2">"extra_val1"</span><span class="p">:</span> <span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="s2">"extra_val2"</span><span class="p">:</span> <span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="p">},</span>
|
|
<span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTrait.test_validate_input__valid"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTrait.test_validate_input__valid">[docs]</a> <span class="k">def</span> <span class="nf">test_validate_input__valid</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test valid validation input"""</span>
|
|
<span class="c1"># all data supplied, and extras</span>
|
|
<span class="n">dat</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test"</span><span class="p">,</span> <span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span> <span class="s2">"extra_val"</span><span class="p">:</span> <span class="mi">1000</span><span class="p">}</span>
|
|
<span class="n">expected</span> <span class="o">=</span> <span class="n">copy</span><span class="p">(</span><span class="n">dat</span><span class="p">)</span> <span class="c1"># we must break link or return === dat always</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">expected</span><span class="p">,</span> <span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="o">.</span><span class="n">validate_input</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">,</span> <span class="n">dat</span><span class="p">))</span>
|
|
|
|
<span class="c1"># don't supply value, should get default</span>
|
|
<span class="n">dat</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test"</span><span class="p">,</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span>
|
|
<span class="c1"># missing value</span>
|
|
<span class="s2">"extra_val"</span><span class="p">:</span> <span class="mi">1000</span><span class="p">,</span>
|
|
<span class="p">}</span>
|
|
<span class="n">expected</span> <span class="o">=</span> <span class="n">copy</span><span class="p">(</span><span class="n">dat</span><span class="p">)</span>
|
|
<span class="n">expected</span><span class="p">[</span><span class="s2">"value"</span><span class="p">]</span> <span class="o">=</span> <span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="o">.</span><span class="n">default_keys</span><span class="p">[</span><span class="s2">"value"</span><span class="p">]</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">expected</span><span class="p">,</span> <span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="o">.</span><span class="n">validate_input</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">,</span> <span class="n">dat</span><span class="p">))</span>
|
|
|
|
<span class="c1"># make sure extra values are cleaned if trait accepts no extras</span>
|
|
<span class="n">dat</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test"</span><span class="p">,</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span>
|
|
<span class="s2">"value"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
|
|
<span class="s2">"extra_val1"</span><span class="p">:</span> <span class="mi">1000</span><span class="p">,</span>
|
|
<span class="s2">"extra_val2"</span><span class="p">:</span> <span class="s2">"xvalue"</span><span class="p">,</span>
|
|
<span class="p">}</span>
|
|
<span class="n">expected</span> <span class="o">=</span> <span class="n">copy</span><span class="p">(</span><span class="n">dat</span><span class="p">)</span>
|
|
<span class="n">expected</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">"extra_val1"</span><span class="p">)</span>
|
|
<span class="n">expected</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s2">"extra_val2"</span><span class="p">)</span>
|
|
<span class="k">with</span> <span class="n">patch</span><span class="o">.</span><span class="n">object</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">,</span> <span class="s2">"allow_extra_properties"</span><span class="p">,</span> <span class="kc">False</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">expected</span><span class="p">,</span> <span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="o">.</span><span class="n">validate_input</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">,</span> <span class="n">dat</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTrait.test_validate_input__fail"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTrait.test_validate_input__fail">[docs]</a> <span class="k">def</span> <span class="nf">test_validate_input__fail</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test failing validation"""</span>
|
|
<span class="n">dat</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="c1"># missing name</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span>
|
|
<span class="s2">"value"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
|
|
<span class="s2">"extra_val"</span><span class="p">:</span> <span class="mi">1000</span><span class="p">,</span>
|
|
<span class="p">}</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">TraitException</span><span class="p">):</span>
|
|
<span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="o">.</span><span class="n">validate_input</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">,</span> <span class="n">dat</span><span class="p">)</span>
|
|
|
|
<span class="c1"># make value a required key</span>
|
|
<span class="n">mock_default_keys</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"value"</span><span class="p">:</span> <span class="n">traits</span><span class="o">.</span><span class="n">MandatoryTraitKey</span><span class="p">}</span>
|
|
<span class="k">with</span> <span class="n">patch</span><span class="o">.</span><span class="n">object</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">,</span> <span class="s2">"default_keys"</span><span class="p">,</span> <span class="n">mock_default_keys</span><span class="p">):</span>
|
|
<span class="n">dat</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Trait"</span><span class="p">,</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span>
|
|
<span class="c1"># missing value, now mandatory</span>
|
|
<span class="s2">"extra_val"</span><span class="p">:</span> <span class="mi">1000</span><span class="p">,</span>
|
|
<span class="p">}</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">TraitException</span><span class="p">):</span>
|
|
<span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="o">.</span><span class="n">validate_input</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">,</span> <span class="n">dat</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTrait.test_trait_getset"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTrait.test_trait_getset">[docs]</a> <span class="k">def</span> <span class="nf">test_trait_getset</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Get-set-del operations on trait"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="s2">"Test1"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">[</span><span class="s2">"name"</span><span class="p">],</span> <span class="s2">"Test1"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">[</span><span class="s2">"value"</span><span class="p">],</span> <span class="s2">"value"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">extra_val1</span><span class="p">,</span> <span class="s2">"xvalue1"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">[</span><span class="s2">"extra_val2"</span><span class="p">],</span> <span class="s2">"xvalue2"</span><span class="p">)</span>
|
|
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">[</span><span class="s2">"value"</span><span class="p">],</span> <span class="mi">20</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">[</span><span class="s2">"value"</span><span class="p">]</span> <span class="o">=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span> <span class="mi">20</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">extra_val1</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">extra_val1</span><span class="p">,</span> <span class="mi">100</span><span class="p">)</span>
|
|
<span class="c1"># additional properties</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">foo</span> <span class="o">=</span> <span class="s2">"bar"</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">foo</span><span class="p">,</span> <span class="s2">"bar"</span><span class="p">)</span>
|
|
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">foo</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="ne">KeyError</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">[</span><span class="s2">"foo"</span><span class="p">]</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="ne">AttributeError</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">foo</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">extra_val1</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="ne">AttributeError</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">extra_val1</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span>
|
|
<span class="c1"># fall back to default</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertTrue</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span> <span class="o">==</span> <span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="o">.</span><span class="n">default_keys</span><span class="p">[</span><span class="s2">"value"</span><span class="p">])</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTrait.test_repr"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTrait.test_repr">[docs]</a> <span class="k">def</span> <span class="nf">test_repr</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">repr</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">),</span> <span class="n">Something</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="p">),</span> <span class="n">Something</span><span class="p">)</span></div></div>
|
|
|
|
|
|
<div class="viewcode-block" id="TestTraitStatic"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitStatic">[docs]</a><span class="k">class</span> <span class="nc">TestTraitStatic</span><span class="p">(</span><span class="n">_TraitHandlerBase</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Test for static Traits</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitStatic.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitStatic.setUp">[docs]</a> <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span>
|
|
<span class="s2">"test1"</span><span class="p">,</span>
|
|
<span class="n">name</span><span class="o">=</span><span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="n">trait_type</span><span class="o">=</span><span class="s2">"static"</span><span class="p">,</span>
|
|
<span class="n">base</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
|
|
<span class="n">mod</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span>
|
|
<span class="n">extra_val1</span><span class="o">=</span><span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="n">extra_val2</span><span class="o">=</span><span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">)</span></div>
|
|
|
|
<span class="k">def</span> <span class="nf">_get_values</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitStatic.test_init"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitStatic.test_init">[docs]</a> <span class="k">def</span> <span class="nf">test_init</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">_get_dbstore</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">),</span>
|
|
<span class="p">{</span>
|
|
<span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"static"</span><span class="p">,</span>
|
|
<span class="s2">"base"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
|
<span class="s2">"mod"</span><span class="p">:</span> <span class="mi">2</span><span class="p">,</span>
|
|
<span class="s2">"extra_val1"</span><span class="p">:</span> <span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="s2">"extra_val2"</span><span class="p">:</span> <span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="p">},</span>
|
|
<span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitStatic.test_value"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitStatic.test_value">[docs]</a> <span class="k">def</span> <span class="nf">test_value</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""value is base + mod"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">+=</span> <span class="mi">4</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">7</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">-=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">6</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitStatic.test_delete"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitStatic.test_delete">[docs]</a> <span class="k">def</span> <span class="nf">test_delete</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Deleting resets to default."""</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span></div></div>
|
|
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter">[docs]</a><span class="k">class</span> <span class="nc">TestTraitCounter</span><span class="p">(</span><span class="n">_TraitHandlerBase</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Test for counter- Traits</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.setUp">[docs]</a> <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span>
|
|
<span class="s2">"test1"</span><span class="p">,</span>
|
|
<span class="n">name</span><span class="o">=</span><span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="n">trait_type</span><span class="o">=</span><span class="s2">"counter"</span><span class="p">,</span>
|
|
<span class="n">base</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
|
|
<span class="n">mod</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span>
|
|
<span class="nb">min</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
|
|
<span class="nb">max</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
|
|
<span class="n">extra_val1</span><span class="o">=</span><span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="n">extra_val2</span><span class="o">=</span><span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="n">descs</span><span class="o">=</span><span class="p">{</span><span class="mi">0</span><span class="p">:</span> <span class="s2">"range0"</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="s2">"range1"</span><span class="p">,</span> <span class="mi">5</span><span class="p">:</span> <span class="s2">"range2"</span><span class="p">,</span> <span class="mi">7</span><span class="p">:</span> <span class="s2">"range3"</span><span class="p">,},</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">)</span></div>
|
|
|
|
<span class="k">def</span> <span class="nf">_get_values</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Get (base, mod, value, min, max)."""</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span><span class="p">)</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_init"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_init">[docs]</a> <span class="k">def</span> <span class="nf">test_init</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">_get_dbstore</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">),</span>
|
|
<span class="p">{</span>
|
|
<span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"counter"</span><span class="p">,</span>
|
|
<span class="s2">"base"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
|
<span class="s2">"mod"</span><span class="p">:</span> <span class="mi">2</span><span class="p">,</span>
|
|
<span class="s2">"min"</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
|
|
<span class="s2">"max"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
|
|
<span class="s2">"extra_val1"</span><span class="p">:</span> <span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="s2">"extra_val2"</span><span class="p">:</span> <span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="s2">"descs"</span><span class="p">:</span> <span class="p">{</span><span class="mi">0</span><span class="p">:</span> <span class="s2">"range0"</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="s2">"range1"</span><span class="p">,</span> <span class="mi">5</span><span class="p">:</span> <span class="s2">"range2"</span><span class="p">,</span> <span class="mi">7</span><span class="p">:</span> <span class="s2">"range3"</span><span class="p">,},</span>
|
|
<span class="s2">"rate"</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
|
|
<span class="s2">"ratetarget"</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>
|
|
<span class="s2">"last_update"</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>
|
|
<span class="p">},</span>
|
|
<span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_value"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_value">[docs]</a> <span class="k">def</span> <span class="nf">test_value</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""value is current + mod, where current defaults to base"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">+=</span> <span class="mi">4</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">7</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">-=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_boundaries__minmax"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_boundaries__minmax">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__minmax</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test range"""</span>
|
|
<span class="c1"># should not exceed min/max values</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">+=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">-=</span> <span class="mi">40</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="o">-</span><span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="o">-</span><span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="o">-</span><span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_boundaries__bigmod"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_boundaries__bigmod">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__bigmod</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""add a big mod"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="o">-</span><span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_boundaries__change_boundaries"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_boundaries__change_boundaries">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__change_boundaries</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Change boundaries after base/mod change"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="o">-</span><span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">-=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">25</span><span class="p">,</span> <span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span> <span class="o">=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="mi">20</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">15</span><span class="p">,</span> <span class="mi">20</span><span class="p">,</span> <span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="mi">20</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_boundaries__disable"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_boundaries__disable">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__disable</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Disable and re-enable boundaries"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">100</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">105</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="o">-</span><span class="mi">200</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="o">-</span><span class="mi">200</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">195</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
|
|
<span class="c1"># re-activate boundaries</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span> <span class="o">=</span> <span class="mi">15</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="mi">10</span> <span class="c1"># his is blocked since base+mod is lower</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="o">-</span><span class="mi">200</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">195</span><span class="p">,</span> <span class="o">-</span><span class="mi">195</span><span class="p">,</span> <span class="mi">15</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_boundaries__inverse"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_boundaries__inverse">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__inverse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Set inverse boundaries - limited by base"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="mi">20</span> <span class="c1"># will be set to base</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span> <span class="o">=</span> <span class="o">-</span><span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_current"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_current">[docs]</a> <span class="k">def</span> <span class="nf">test_current</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Modifying current value"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">7</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">12</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">-=</span> <span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_delete"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_delete">[docs]</a> <span class="k">def</span> <span class="nf">test_delete</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Deleting resets to default."""</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_percentage"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_percentage">[docs]</a> <span class="k">def</span> <span class="nf">test_percentage</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test percentage calculation"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">8</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">2</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span> <span class="o">=</span> <span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"100.0%"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">3</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"50.0%"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"30.0%"</span><span class="p">)</span>
|
|
<span class="c1"># have to lower this since max cannot be lowered below base+mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">2</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span> <span class="o">-=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"33.3%"</span><span class="p">)</span>
|
|
<span class="c1"># open boundary</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"100.0%"</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounter.test_descs"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounter.test_descs">[docs]</a> <span class="k">def</span> <span class="nf">test_descs</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test descriptions"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="o">-</span><span class="mi">2</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range0"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range0"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range1"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">3</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range2"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range2"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">9</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range3"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range3"</span><span class="p">)</span></div></div>
|
|
|
|
|
|
<div class="viewcode-block" id="TestTraitCounterTimed"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounterTimed">[docs]</a><span class="k">class</span> <span class="nc">TestTraitCounterTimed</span><span class="p">(</span><span class="n">_TraitHandlerBase</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Test for trait with timer component</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounterTimed.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounterTimed.setUp">[docs]</a> <span class="nd">@patch</span><span class="p">(</span><span class="s2">"evennia.contrib.traits.time"</span><span class="p">,</span> <span class="n">new</span><span class="o">=</span><span class="n">MagicMock</span><span class="p">(</span><span class="n">return_value</span><span class="o">=</span><span class="mi">1000</span><span class="p">))</span>
|
|
<span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span>
|
|
<span class="s2">"test1"</span><span class="p">,</span>
|
|
<span class="n">name</span><span class="o">=</span><span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="n">trait_type</span><span class="o">=</span><span class="s2">"counter"</span><span class="p">,</span>
|
|
<span class="n">base</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
|
|
<span class="n">mod</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span>
|
|
<span class="nb">min</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
|
|
<span class="nb">max</span><span class="o">=</span><span class="mi">100</span><span class="p">,</span>
|
|
<span class="n">extra_val1</span><span class="o">=</span><span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="n">extra_val2</span><span class="o">=</span><span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="n">descs</span><span class="o">=</span><span class="p">{</span><span class="mi">0</span><span class="p">:</span> <span class="s2">"range0"</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="s2">"range1"</span><span class="p">,</span> <span class="mi">5</span><span class="p">:</span> <span class="s2">"range2"</span><span class="p">,</span> <span class="mi">7</span><span class="p">:</span> <span class="s2">"range3"</span><span class="p">,},</span>
|
|
<span class="n">rate</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
|
|
<span class="n">ratetarget</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">)</span></div>
|
|
|
|
<span class="k">def</span> <span class="nf">_get_timer_data</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="k">return</span> <span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span><span class="p">,</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">rate</span><span class="p">,</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">_data</span><span class="p">[</span><span class="s2">"last_update"</span><span class="p">],</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">ratetarget</span><span class="p">,</span>
|
|
<span class="p">)</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounterTimed.test_timer_rate"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounterTimed.test_timer_rate">[docs]</a> <span class="nd">@patch</span><span class="p">(</span><span class="s2">"evennia.contrib.traits.time"</span><span class="p">)</span>
|
|
<span class="k">def</span> <span class="nf">test_timer_rate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">mock_time</span><span class="p">):</span>
|
|
<span class="sd">"""Test time stepping"""</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1000</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1000</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1001</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">4</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1001</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1096</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">99</span><span class="p">,</span> <span class="mi">97</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1096</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="c1"># hit maximum boundary</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1120</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">100</span><span class="p">,</span> <span class="mi">98</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1200</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">100</span><span class="p">,</span> <span class="mi">98</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="c1"># drop current</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">50</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">52</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1200</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="c1"># set a new rate</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">rate</span> <span class="o">=</span> <span class="mi">2</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1210</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">72</span><span class="p">,</span> <span class="mi">70</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">1210</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">rate</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1214</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">32</span><span class="p">,</span> <span class="mi">30</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="mi">1214</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1218</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">2</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitCounterTimed.test_timer_ratetarget"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitCounterTimed.test_timer_ratetarget">[docs]</a> <span class="nd">@patch</span><span class="p">(</span><span class="s2">"evennia.contrib.traits.time"</span><span class="p">)</span>
|
|
<span class="k">def</span> <span class="nf">test_timer_ratetarget</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">mock_time</span><span class="p">):</span>
|
|
<span class="sd">"""test ratetarget"""</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1000</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">ratetarget</span> <span class="o">=</span> <span class="mi">60</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1000</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1056</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">59</span><span class="p">,</span> <span class="mi">57</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1056</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1057</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">60</span><span class="p">,</span> <span class="mi">58</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1060</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">60</span><span class="p">,</span> <span class="mi">58</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">ratetarget</span> <span class="o">=</span> <span class="mi">70</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1066</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">66</span><span class="p">,</span> <span class="mi">64</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1066</span><span class="p">,</span> <span class="mi">70</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1070</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">70</span><span class="p">,</span> <span class="mi">68</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="mi">70</span><span class="p">))</span></div></div>
|
|
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge">[docs]</a><span class="k">class</span> <span class="nc">TestTraitGauge</span><span class="p">(</span><span class="n">_TraitHandlerBase</span><span class="p">):</span>
|
|
<div class="viewcode-block" id="TestTraitGauge.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.setUp">[docs]</a> <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span>
|
|
<span class="s2">"test1"</span><span class="p">,</span>
|
|
<span class="n">name</span><span class="o">=</span><span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="n">trait_type</span><span class="o">=</span><span class="s2">"gauge"</span><span class="p">,</span>
|
|
<span class="n">base</span><span class="o">=</span><span class="mi">8</span><span class="p">,</span> <span class="c1"># max = base + mod</span>
|
|
<span class="n">mod</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span>
|
|
<span class="n">extra_val1</span><span class="o">=</span><span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="n">extra_val2</span><span class="o">=</span><span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="n">descs</span><span class="o">=</span><span class="p">{</span><span class="mi">0</span><span class="p">:</span> <span class="s2">"range0"</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="s2">"range1"</span><span class="p">,</span> <span class="mi">5</span><span class="p">:</span> <span class="s2">"range2"</span><span class="p">,</span> <span class="mi">7</span><span class="p">:</span> <span class="s2">"range3"</span><span class="p">,},</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">)</span></div>
|
|
|
|
<span class="k">def</span> <span class="nf">_get_values</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Get (base, mod, value, min, max)."""</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span><span class="p">)</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_init"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_init">[docs]</a> <span class="k">def</span> <span class="nf">test_init</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">_get_dbstore</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">),</span>
|
|
<span class="p">{</span>
|
|
<span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"gauge"</span><span class="p">,</span>
|
|
<span class="s2">"base"</span><span class="p">:</span> <span class="mi">8</span><span class="p">,</span>
|
|
<span class="s2">"mod"</span><span class="p">:</span> <span class="mi">2</span><span class="p">,</span>
|
|
<span class="s2">"min"</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
|
|
<span class="s2">"extra_val1"</span><span class="p">:</span> <span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="s2">"extra_val2"</span><span class="p">:</span> <span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="s2">"descs"</span><span class="p">:</span> <span class="p">{</span><span class="mi">0</span><span class="p">:</span> <span class="s2">"range0"</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="s2">"range1"</span><span class="p">,</span> <span class="mi">5</span><span class="p">:</span> <span class="s2">"range2"</span><span class="p">,</span> <span class="mi">7</span><span class="p">:</span> <span class="s2">"range3"</span><span class="p">,},</span>
|
|
<span class="s2">"rate"</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
|
|
<span class="s2">"ratetarget"</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>
|
|
<span class="s2">"last_update"</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>
|
|
<span class="p">},</span>
|
|
<span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_value"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_value">[docs]</a> <span class="k">def</span> <span class="nf">test_value</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""value is current, where current defaults to base + mod"""</span>
|
|
<span class="c1"># current unset - follows base + mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">+=</span> <span class="mi">4</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">12</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">14</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">14</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">-=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">12</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">13</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">13</span><span class="p">))</span>
|
|
<span class="c1"># set current, decouple from base + mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">12</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">13</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">+=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">-=</span> <span class="mi">4</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="o">-</span><span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="o">-</span><span class="mi">18</span><span class="p">,</span> <span class="o">-</span><span class="mi">100</span><span class="p">,</span> <span class="o">-</span><span class="mi">18</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_boundaries__minmax"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_boundaries__minmax">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__minmax</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test range"""</span>
|
|
<span class="c1"># current unset - tied to base + mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">+=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">28</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">30</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">30</span><span class="p">))</span>
|
|
<span class="c1"># set current - decouple from base + mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">19</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">28</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">19</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">30</span><span class="p">))</span>
|
|
<span class="c1"># test upper bound</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">28</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">30</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">30</span><span class="p">))</span>
|
|
<span class="c1"># min defaults to 0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">28</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">30</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">28</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="mi">30</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">28</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="o">-</span><span class="mi">20</span><span class="p">,</span> <span class="mi">30</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_boundaries__bigmod"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_boundaries__bigmod">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__bigmod</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""add a big mod"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">100</span><span class="p">,</span> <span class="mi">105</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">105</span><span class="p">))</span>
|
|
<span class="c1"># restricted by min</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="o">-</span><span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">200</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">200</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_boundaries__change_boundaries"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_boundaries__change_boundaries">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__change_boundaries</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Change boundaries after current change"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">102</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">102</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">110</span><span class="p">))</span>
|
|
<span class="c1"># raising min past current value will force it upwards</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="mi">20</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">102</span><span class="p">,</span> <span class="mi">20</span><span class="p">,</span> <span class="mi">20</span><span class="p">,</span> <span class="mi">110</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_boundaries__disable"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_boundaries__disable">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__disable</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Disable and re-enable boundary"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">7</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">7</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">7</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">7</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
|
|
<span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">traits</span><span class="o">.</span><span class="n">TraitException</span><span class="p">):</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">max</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_boundaries__inverse"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_boundaries__inverse">[docs]</a> <span class="k">def</span> <span class="nf">test_boundaries__inverse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Try to set reversed boundaries"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span> <span class="c1"># limited by min</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1"># limited by base + mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_current"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_current">[docs]</a> <span class="k">def</span> <span class="nf">test_current</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Modifying current value"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span> <span class="o">=</span> <span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">12</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">12</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">12</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">12</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">12</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">12</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">12</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_delete"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_delete">[docs]</a> <span class="k">def</span> <span class="nf">test_delete</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Deleting resets to default."""</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">8</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">=</span> <span class="mi">2</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">base</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="mi">2</span><span class="p">))</span>
|
|
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_percentage"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_percentage">[docs]</a> <span class="k">def</span> <span class="nf">test_percentage</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test percentage calculation"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"100.0%"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"50.0%"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">3</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"30.0%"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">mod</span> <span class="o">-=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">percent</span><span class="p">(),</span> <span class="s2">"33.3%"</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGauge.test_descs"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGauge.test_descs">[docs]</a> <span class="k">def</span> <span class="nf">test_descs</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""Test descriptions"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">min</span> <span class="o">=</span> <span class="o">-</span><span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_values</span><span class="p">(),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="o">-</span><span class="mi">5</span><span class="p">,</span> <span class="mi">10</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="o">-</span><span class="mi">2</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range0"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range0"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range1"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">3</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range2"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">5</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range2"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">9</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range3"</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">100</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">desc</span><span class="p">(),</span> <span class="s2">"range3"</span><span class="p">)</span></div></div>
|
|
|
|
|
|
<div class="viewcode-block" id="TestTraitGaugeTimed"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGaugeTimed">[docs]</a><span class="k">class</span> <span class="nc">TestTraitGaugeTimed</span><span class="p">(</span><span class="n">_TraitHandlerBase</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Test for trait with timer component</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitGaugeTimed.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGaugeTimed.setUp">[docs]</a> <span class="nd">@patch</span><span class="p">(</span><span class="s2">"evennia.contrib.traits.time"</span><span class="p">,</span> <span class="n">new</span><span class="o">=</span><span class="n">MagicMock</span><span class="p">(</span><span class="n">return_value</span><span class="o">=</span><span class="mi">1000</span><span class="p">))</span>
|
|
<span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">add</span><span class="p">(</span>
|
|
<span class="s2">"test1"</span><span class="p">,</span>
|
|
<span class="n">name</span><span class="o">=</span><span class="s2">"Test1"</span><span class="p">,</span>
|
|
<span class="n">trait_type</span><span class="o">=</span><span class="s2">"gauge"</span><span class="p">,</span>
|
|
<span class="n">base</span><span class="o">=</span><span class="mi">98</span><span class="p">,</span>
|
|
<span class="n">mod</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span>
|
|
<span class="nb">min</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
|
|
<span class="n">extra_val1</span><span class="o">=</span><span class="s2">"xvalue1"</span><span class="p">,</span>
|
|
<span class="n">extra_val2</span><span class="o">=</span><span class="s2">"xvalue2"</span><span class="p">,</span>
|
|
<span class="n">descs</span><span class="o">=</span><span class="p">{</span><span class="mi">0</span><span class="p">:</span> <span class="s2">"range0"</span><span class="p">,</span> <span class="mi">2</span><span class="p">:</span> <span class="s2">"range1"</span><span class="p">,</span> <span class="mi">5</span><span class="p">:</span> <span class="s2">"range2"</span><span class="p">,</span> <span class="mi">7</span><span class="p">:</span> <span class="s2">"range3"</span><span class="p">,},</span>
|
|
<span class="n">rate</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
|
|
<span class="n">ratetarget</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
|
|
<span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">traithandler</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"test1"</span><span class="p">)</span></div>
|
|
|
|
<span class="k">def</span> <span class="nf">_get_timer_data</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="k">return</span> <span class="p">(</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">value</span><span class="p">,</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span><span class="p">,</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">rate</span><span class="p">,</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">_data</span><span class="p">[</span><span class="s2">"last_update"</span><span class="p">],</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">ratetarget</span><span class="p">,</span>
|
|
<span class="p">)</span>
|
|
|
|
<div class="viewcode-block" id="TestTraitGaugeTimed.test_timer_rate"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGaugeTimed.test_timer_rate">[docs]</a> <span class="nd">@patch</span><span class="p">(</span><span class="s2">"evennia.contrib.traits.time"</span><span class="p">)</span>
|
|
<span class="k">def</span> <span class="nf">test_timer_rate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">mock_time</span><span class="p">):</span>
|
|
<span class="sd">"""Test time stepping"""</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1000</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1000</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1001</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1001</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1096</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">97</span><span class="p">,</span> <span class="mi">97</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1096</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="c1"># hit maximum boundary</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1120</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">100</span><span class="p">,</span> <span class="mi">100</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1200</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">100</span><span class="p">,</span> <span class="mi">100</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="c1"># drop current</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">50</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">50</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1200</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="c1"># set a new rate</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">rate</span> <span class="o">=</span> <span class="mi">2</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1210</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">70</span><span class="p">,</span> <span class="mi">70</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">1210</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">rate</span> <span class="o">=</span> <span class="o">-</span><span class="mi">10</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1214</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">30</span><span class="p">,</span> <span class="mi">30</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="mi">1214</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1218</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">))</span></div>
|
|
|
|
<div class="viewcode-block" id="TestTraitGaugeTimed.test_timer_ratetarget"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestTraitGaugeTimed.test_timer_ratetarget">[docs]</a> <span class="nd">@patch</span><span class="p">(</span><span class="s2">"evennia.contrib.traits.time"</span><span class="p">)</span>
|
|
<span class="k">def</span> <span class="nf">test_timer_ratetarget</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">mock_time</span><span class="p">):</span>
|
|
<span class="sd">"""test ratetarget"""</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1000</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">current</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">ratetarget</span> <span class="o">=</span> <span class="mi">60</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1000</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1056</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">57</span><span class="p">,</span> <span class="mi">57</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1056</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1059</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">60</span><span class="p">,</span> <span class="mi">60</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1060</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">60</span><span class="p">,</span> <span class="mi">60</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="mi">60</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">trait</span><span class="o">.</span><span class="n">ratetarget</span> <span class="o">=</span> <span class="mi">70</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1066</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">66</span><span class="p">,</span> <span class="mi">66</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1066</span><span class="p">,</span> <span class="mi">70</span><span class="p">))</span>
|
|
<span class="n">mock_time</span><span class="o">.</span><span class="n">return_value</span> <span class="o">=</span> <span class="mi">1070</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_timer_data</span><span class="p">(),</span> <span class="p">(</span><span class="mi">70</span><span class="p">,</span> <span class="mi">70</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="mi">70</span><span class="p">))</span></div></div>
|
|
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators">[docs]</a><span class="k">class</span> <span class="nc">TestNumericTraitOperators</span><span class="p">(</span><span class="n">TestCase</span><span class="p">):</span>
|
|
<span class="sd">"""Test case for numeric magic method implementations."""</span>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.setUp"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.setUp">[docs]</a> <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="c1"># direct instantiation for testing only; use TraitHandler in production</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">=</span> <span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">({</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Strength"</span><span class="p">,</span> <span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">:</span> <span class="mi">8</span><span class="p">,})</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">at</span> <span class="o">=</span> <span class="n">traits</span><span class="o">.</span><span class="n">Trait</span><span class="p">({</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Attack"</span><span class="p">,</span> <span class="s2">"trait_type"</span><span class="p">:</span> <span class="s2">"trait"</span><span class="p">,</span> <span class="s2">"value"</span><span class="p">:</span> <span class="mi">4</span><span class="p">,})</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.tearDown"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.tearDown">[docs]</a> <span class="k">def</span> <span class="nf">tearDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.test_pos_shortcut"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.test_pos_shortcut">[docs]</a> <span class="k">def</span> <span class="nf">test_pos_shortcut</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""overridden unary + operator returns `value` property"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertIn</span><span class="p">(</span><span class="nb">type</span><span class="p">(</span><span class="o">+</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">),</span> <span class="p">(</span><span class="nb">float</span><span class="p">,</span> <span class="nb">int</span><span class="p">))</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="o">+</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="o">.</span><span class="n">value</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="o">+</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">8</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.test_add_traits"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.test_add_traits">[docs]</a> <span class="k">def</span> <span class="nf">test_add_traits</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""test addition of `Trait` objects"""</span>
|
|
<span class="c1"># two Trait objects</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">,</span> <span class="mi">12</span><span class="p">)</span>
|
|
<span class="c1"># Trait and numeric</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">+</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">9</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="mi">1</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">9</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.test_sub_traits"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.test_sub_traits">[docs]</a> <span class="k">def</span> <span class="nf">test_sub_traits</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""test subtraction of `Trait` objects"""</span>
|
|
<span class="c1"># two Trait objects</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">,</span> <span class="mi">4</span><span class="p">)</span>
|
|
<span class="c1"># Trait and numeric</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">7</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="mi">10</span> <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.test_mul_traits"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.test_mul_traits">[docs]</a> <span class="k">def</span> <span class="nf">test_mul_traits</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""test multiplication of `Trait` objects"""</span>
|
|
<span class="c1"># between two Traits</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">*</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">,</span> <span class="mi">32</span><span class="p">)</span>
|
|
<span class="c1"># between Trait and numeric</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">at</span> <span class="o">*</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">16</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="mi">4</span> <span class="o">*</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">,</span> <span class="mi">16</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.test_floordiv"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.test_floordiv">[docs]</a> <span class="k">def</span> <span class="nf">test_floordiv</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""test floor division of `Trait` objects"""</span>
|
|
<span class="c1"># between two Traits</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">//</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span>
|
|
<span class="c1"># between Trait and numeric</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span> <span class="o">//</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">4</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="mi">18</span> <span class="o">//</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.test_comparisons_traits"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.test_comparisons_traits">[docs]</a> <span class="k">def</span> <span class="nf">test_comparisons_traits</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""test equality comparison between `Trait` objects"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertNotEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLess</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLessEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreater</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreaterEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">at</span><span class="p">)</span></div>
|
|
|
|
<div class="viewcode-block" id="TestNumericTraitOperators.test_comparisons_numeric"><a class="viewcode-back" href="../../../api/evennia.contrib.test_traits.html#evennia.contrib.test_traits.TestNumericTraitOperators.test_comparisons_numeric">[docs]</a> <span class="k">def</span> <span class="nf">test_comparisons_numeric</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
<span class="sd">"""equality comparisons between `Trait` and numeric"""</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">8</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertNotEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertNotEqual</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLess</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLess</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLessEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">8</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLessEqual</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLessEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertLessEqual</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreater</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreater</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreaterEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">8</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreaterEqual</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreaterEqual</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
|
|
<span class="bp">self</span><span class="o">.</span><span class="n">assertGreaterEqual</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">st</span><span class="p">)</span></div></div>
|
|
</pre></div>
|
|
|
|
<div class="clearer"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
|
<div class="sphinxsidebarwrapper">
|
|
<p class="logo"><a href="../../../index.html">
|
|
<img class="logo" src="../../../_static/evennia_logo.png" alt="Logo"/>
|
|
</a></p>
|
|
<div id="searchbox" style="display: none" role="search">
|
|
<h3 id="searchlabel">Quick search</h3>
|
|
<div class="searchformwrapper">
|
|
<form class="search" action="../../../search.html" method="get">
|
|
<input type="text" name="q" aria-labelledby="searchlabel" />
|
|
<input type="submit" value="Go" />
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<script>$('#searchbox').show(0);</script>
|
|
<h3>Versions</h3>
|
|
<ul>
|
|
<li><a href="test_traits.html">1.0-dev (develop branch)</a></li>
|
|
<li><a href="../../../../0.9.5/index.html">0.9.5 (master branch)</a></li>
|
|
</ul>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="clearer"></div>
|
|
</div>
|
|
<div class="related" role="navigation" aria-label="related navigation">
|
|
<h3>Navigation</h3>
|
|
<ul>
|
|
<li class="right" style="margin-right: 10px">
|
|
<a href="../../../genindex.html" title="General Index"
|
|
>index</a></li>
|
|
<li class="right" >
|
|
<a href="../../../py-modindex.html" title="Python Module Index"
|
|
>modules</a> |</li>
|
|
<li class="nav-item nav-item-0"><a href="../../../index.html">Evennia 1.0-dev</a> »</li>
|
|
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> »</li>
|
|
<li class="nav-item nav-item-2"><a href="../../evennia.html" >evennia</a> »</li>
|
|
<li class="nav-item nav-item-this"><a href="">evennia.contrib.test_traits</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="footer" role="contentinfo">
|
|
© Copyright 2020, The Evennia developer community.
|
|
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
|
</div>
|
|
</body>
|
|
</html> |