github.com/smugmug/godynamo@v0.0.0-20151122084750-7913028f6623/endpoints/describe_table/describe_table_test.go (about)

     1  package describe_table
     2  
     3  import (
     4  	"encoding/json"
     5  	"testing"
     6  )
     7  
     8  func TestNil(t *testing.T) {
     9  	d := NewDescribeTable()
    10  	_,_,err := d.EndpointReqWithConf(nil)
    11  	if err == nil {
    12  		t.Errorf("nil conf should result in error")
    13  	}
    14  }
    15  
    16  func TestRequestMarshal(t *testing.T) {
    17  	s := []string{
    18  		`{"TableName":"Thread"}`,
    19  	}
    20  	for _, v := range s {
    21  		var d DescribeTable
    22  		um_err := json.Unmarshal([]byte(v), &d)
    23  		if um_err != nil {
    24  			t.Errorf("cannot unmarshal\n")
    25  		}
    26  		_, jerr := json.Marshal(d)
    27  		if jerr != nil {
    28  			t.Errorf("cannot marshal\n")
    29  		}
    30  
    31  	}
    32  }
    33  
    34  func TestResponseMarshal(t *testing.T) {
    35  	s := []string{`{"Table":{"AttributeDefinitions":[{"AttributeName":"ForumName","AttributeType":"S"},{"AttributeName":"LastPostDateTime","AttributeType":"S"},{"AttributeName":"Subject","AttributeType":"S"}],"CreationDateTime":1.36372808007E9,"ItemCount":0,"KeySchema":[{"AttributeName":"ForumName","KeyType":"HASH"},{"AttributeName":"Subject","KeyType":"RANGE"}],"LocalSecondaryIndexes":[{"IndexName":"LastPostIndex","IndexSizeBytes":0,"ItemCount":0,"KeySchema":[{"AttributeName":"ForumName","KeyType":"HASH"},{"AttributeName":"LastPostDateTime","KeyType":"RANGE"}],"Projection":{"ProjectionType":"KEYS_ONLY"}}],"ProvisionedThroughput":{"NumberOfDecreasesToday":0,"ReadCapacityUnits":5,"WriteCapacityUnits":5},"TableName":"Thread","TableSizeBytes":0,"TableStatus":"CREATING"}}`}
    36  	for _, v := range s {
    37  		var d Response
    38  		um_err := json.Unmarshal([]byte(v), &d)
    39  		if um_err != nil {
    40  			t.Errorf("cannot unmarshal\n")
    41  		}
    42  		_, jerr := json.Marshal(d)
    43  		if jerr != nil {
    44  			t.Errorf("cannot marshal\n")
    45  		}
    46  	}
    47  }