问题列表 - 第47997页

nose,unittest.TestCase和metaclass:未发现自动生成的test_*方法

这是unittest和元类的后续问题:自动test_*方法生成:

对于这个(固定的)unittest.TestCase布局:

#!/usr/bin/env python

import unittest


class TestMaker(type):

    def __new__(cls, name, bases, attrs):
        callables = dict([
            (meth_name, meth) for (meth_name, meth) in attrs.items() if
            meth_name.startswith('_test')
        ])

        for meth_name, meth in callables.items():
            assert callable(meth)
            _, _, testname = meth_name.partition('_test')

            # inject methods: test{testname}_v4,6(self)
            for suffix, arg in (('_false', False), ('_true', True)):
                testable_name = 'test{0}{1}'.format(testname, suffix)
                testable = lambda self, func=meth, arg=arg: func(self, arg)
                attrs[testable_name] = testable

        return type.__new__(cls, name, bases, attrs)


class TestCase(unittest.TestCase):

    __metaclass__ = TestMaker

    def …
Run Code Online (Sandbox Code Playgroud)

python unit-testing metaclass nose

12
推荐指数
1
解决办法
1794
查看次数

将存储在列表中的参数传递给表达式

如何将值传递给具有多个变量的给定表达式?这些变量的值放在需要传递到表达式的列表中.

wolfram-mathematica

4
推荐指数
2
解决办法
5324
查看次数

如何正确构建嵌套的JSON值?

我有一组JSON值,有3个级别:

cluster> segment> node

每个群集由段组成,每个段由节点组成.我试图弄清楚如何将其表示为JSON对象,我不确定如何创建结构.

每个节点都包含一个id以及对其segment id和cluster id的引用.我写了一个像这样的测试对象:

 var customers = [
                     {
                    "cluster" : 
                         {"flights":4, "profit":5245, "clv":2364,
                    "segment" :
                        { "flights":2, "profit":2150, "clv":1564,
                            "node" :
                                    { 'xpos': 1, 'ypos': 2 }// closes node
                        }// closes segment 
                         }//closes cluster
                     },
{
                    "cluster" : 
                         {"flights":4, "profit":5245, "clv":2364,
                    "segment" :
                        { "flights":2, "profit":2150, "clv":1564,
                            "node" :
                                    { 'xpos': 1, 'ypos': 2 }// closes node
                        }// closes segment 
                         }//closes cluster
                     }
];
Run Code Online (Sandbox Code Playgroud)

感觉有点片状的部分是段和节点嵌套的方式.我没有收到任何错误,但这是表示此数据的最佳方式吗?

编辑:

感谢您的回答,它肯定指向了正确的方向,使用工具(jsonlint)并更好地理解json中的结构化数据.他们都是正确的答案,告诉我这是一个非常基本的问题.再次感谢.

javascript json data-structures

2
推荐指数
1
解决办法
2万
查看次数

画布上的可绘制图像

如何在画布上获取图像以便在该图像上绘图?

android android-canvas android-drawable

86
推荐指数
5
解决办法
15万
查看次数

构建具有嵌入式浏览器和JavaScript"挂钩"的Windows应用程序

我为客户建立了一个PHP/JavaScript网站.然后他们让我复制它,除了作为一个独立的Mac应用程序.我用一个结合嵌入式Web服务器,PHP和'WebView'的应用程序做了这个 - 我可以嵌入标准应用程序窗口的WebKit Web浏览器的Cocoa-ish版本.这一切都很有效 - 我必须重复使用10,000多行PHP/JS代码,这样就可以在"原生"代码中重新实现所有这些代码.

现在他们想要一个Windows等价物.我有理由相信我可以让PHP和Web服务器工作.我知道嵌入基本的IE功能非常简单.

但是......在我的Mac设置中,WebView(通过windowScriptObject的东西)让我能够从C++调用JavaScript方法.例如,我可以从C++调用JavaScript方法来更新屏幕.同样,我可以进行设置,以便浏览器中的JavaScript调用可以触发C++方法 - 例如,我使用它来让用户单击"浏览"并使用真实的标准文件浏览器选择文件路径.

所以我的问题是,是否有一个基于Windows的嵌入式浏览器设置,让我以同样的方式与JavaScript交互?

(JavaScript < - > WebKit界面在这里有更详细的描述:http://lipidity.com/apple/javascript-cocoa-webkit/)

javascript c++ windows internet-explorer webkit

5
推荐指数
1
解决办法
2820
查看次数

jquery动画和Internet Explorer 8的问题

今天晚上我努力学习html位置和jquery动画,我做了一个HTML页面,如下所示:

<html>
<head>

<script src="jquery-1.5.1.min.js" type="text/javascript"></script>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
body {
    background-image: url(Cartoon_Landscape2.jpg);
}

</style>


<script type="text/javascript">
function moveDIV ( obj, x, y ) {
var element = document.getElementById(obj);
element.style.left=x;
element.style.top=y;
}

var t;

function anim1()
{
moveDIV("mariposa", screen.availWidth, screen.availHeight);
$("#mariposa").animate({left: '-84', top: '-58'}, 10000);

t=setTimeout("anim1()",22000);

//moveDIV("mariposa2", '-84', screen.availHeight);
//$("#mariposa2").animate({left: screen.availWidth, top: '-58'}, 10000);
}

function anim2()
{
moveDIV("mariposa2", '-84', screen.availHeight);
$("#mariposa2").animate({left: screen.availWidth, top: '-58'}, 10000);

t=setTimeout("anim2()",22000);

}

function callfunctions()
{
moveDIV("mariposa2", '-84', screen.availHeight);
anim1();
var b=setTimeout("anim2()",11000); …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery animation

4
推荐指数
1
解决办法
5741
查看次数

如何让独立的Archiva在Jetty下分发ROOT应用程序?

我使用独立版本的Archiva,它使用Jetty作为其应用程序容器.它默认为http://mycompany.com:8080/archiva我想摆脱应用程序上下文,只是使它可以http://mycompany.com:8080/使我在Apache 2.2.x中使用虚拟主机将其映射到子域.

我无法弄清楚配置文件中要更改的内容.这是一个jetty.xml文件,其中包含所有注释以简洁起见.

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">

<Configure id="Server" class="org.mortbay.jetty.Server">

    <!-- =========================================================== -->
    <!-- Server Thread Pool                                          -->
    <!-- =========================================================== -->
    <Set name="ThreadPool">
      <!-- Default bounded blocking threadpool 
      -->
      <New class="org.mortbay.thread.BoundedThreadPool">
        <Set name="minThreads">10</Set>
        <Set name="maxThreads">250</Set>
        <Set name="lowThreads">25</Set>
      </New>
    </Set>


    <Call name="addConnector">
      <Arg>
          <New class="org.mortbay.jetty.nio.SelectChannelConnector">
            <Set name="host"><SystemProperty name="jetty.host"/></Set>
            <Set name="port"><SystemProperty name="jetty.port" default="8081"/></Set>
            <Set name="maxIdleTime">30000</Set>
            <Set name="Acceptors">2</Set>
            <Set name="statsOn">false</Set>
            <Set name="confidentialPort">8443</Set>
        <Set name="lowResourcesConnections">5000</Set>
        <Set name="lowResourcesMaxIdleTime">5000</Set>
          </New>
      </Arg>
    </Call>

    <Set name="handler"> …
Run Code Online (Sandbox Code Playgroud)

xml jetty archiva

1
推荐指数
1
解决办法
1766
查看次数

istream和ostream问题-C ++

我正在使用g ++和Dev-C ++这两个编译器。当我在Dev-C ++上编译程序时,它可以完美编译。但是当我尝试在g ++上进行编译时,它给了我两个错误:

在a2test.cpp包含的文件中:27:
----。h:25:错误:尚未声明“ ostream”
----。h:26:错误:尚未声明'istream'

谁能告诉我该怎么做才能解决这个问题。

谢谢

c++ class input stream

2
推荐指数
1
解决办法
2万
查看次数

validates_associated不检查关联的存在

任何人都可以弄清楚这里发生了什么?我能够以我想要的方式使我的代码工作,但我无法弄清楚为什么validates_associated没有按照我的预期工作.这是我的代码片段:

class Flag < ActiveRecord::Base
  belongs_to :user
  belongs_to :post

  # allow only one flag per post per user
  validates_uniqueness_of :user_id, :scope => :post_id

  validates :user_id, :post_id, :presence => true
  validates_associated :user, :post

  attr_accessible :user_id, :post_id
end
Run Code Online (Sandbox Code Playgroud)

使用此代码,我无法使用user_id == nil保存标志.我可以使用user_id == 12345保存一个标志(即某些user_id不在数据库中).这就是validates_associated API规范所说的:

validates_associated(*attr_names)

验证关联的对象是否全部有效.适用于任何类型的协会.
...
注意:如果尚未分配关联,则此验证不会失败.如果要确保关联存在且保证有效,则还需要使用validates_presence_of.

我能够通过使用它来获得所需的行为,而不是:

  validates :user, :post, :presence => true
Run Code Online (Sandbox Code Playgroud)

我对API规范的理解是validates_associated检查关联的表以查看是否存在具有与Flag 的外键匹配的行,前提是外键是非nil.任何人都可以对此提出任何见解吗?我误解了validates_associated应该如何工作?

ruby-on-rails validates-associated

12
推荐指数
1
解决办法
7478
查看次数

Android:二维ArrayList帮助

目前我的代码将用户输入放入一维ArrayList中,但我想将它们放入二维ArrayList中并遇到一些麻烦.

这是我的代码:

public class Game extends Activity implements OnClickListener {
   private static final String TAG = "Matrix";
   static ArrayList<EditText> columnEditTexts;




   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       this.setContentView(R.layout.matrix);
       View doneButton = findViewById(R.id.done_button);
       doneButton.setOnClickListener(this);
       columnEditTexts = new ArrayList<EditText>();

       for(int i = 0; i < MatrixMultiply.h1; i++){
           TableLayout table = (TableLayout)findViewById(R.id.myTableLayout);
           TableRow row = new TableRow(this);
           EditText column = new EditText(this);
           for(int j = 0; j < MatrixMultiply.w1; j++){
               table = (TableLayout)findViewById(R.id.myTableLayout);
               column = new EditText(this);
               column.setId(i);
               row.addView(column);
               columnEditTexts.add(column);
           }
           table.addView(row);
       } …
Run Code Online (Sandbox Code Playgroud)

java android arraylist multidimensional-array

4
推荐指数
1
解决办法
2万
查看次数